Centos7最小化安装搭建LAMP服务器

来源:互联网 发布:mac atom菜单栏不见了 编辑:程序博客网 时间:2024/04/28 09:33

                                       服务器搭建篇

1.镜像选择,CentOS 7.1 minmal.iso 

2.yum install net-tools[提供ifconfig工具,我不习惯IP命令]

3.配置静态IP地址58.154.51.31

vi /etc/sysconfig/network-scripts/ifcfg-em1

修改为静态IP

3.配置本机名字

 vi /etc/hostname

修改完后,退出当前登陆,然后重新登陆,用echo $HOMENAME查看是否配置成功!

4.配置SSH服务

  SSH 即SecureShell,是Linux远程管理的默认协议。SSH是随最小化CentOS服务器安装运行的最重要的软件之一。

 检查当前已经安装的SSH版本

  命令:ssh -V (注意大小写)使用更安全的SSH协议,而不是默认协议,并更改端口号进一步加强安全。编辑SSH配置文件‘/etc/ssh/ssh_config'。去掉下面注释或者从协议中删除1,ssh v1是过期废弃的不安全协议!

修改端口号为 2200 使用协议v2

安装yuminstall policycoreutils-python(管理Selinux开放端口命令)

先配置Selinux

使用以下命令查看当前Selinux允许的ssh端口

Semanage port -l | grep ssh

添加2200端口到Selinux

Semanage port -a -t ssh_port_t -p tcp 2200

然后确认一下是否添加进去

Semanage port -l | grep ssh

需要使用开启端口

firewall-cmd --zone=public --add-port=2200/tcp --permanent(CentOS7使用firewall管理)

firewall-cmd --zone=public --remove-port=2200/tcp --permanent(关闭端口)

firewall-cmd --reload(重启)

firewall-cmd --list-all(显示所有端口信息)

取消SSH中’root login',只允许普通账号登陆才能使用su切换到root,以进一步加强安全。请打开配置文件/etc/ssh/sshd_config并更改permitRootLogin yes 为PermitRootLogin no.

然后重启服务。

Systemctl restart sshd.service

关闭ssh 22端口

使用

firewall-cmd --zone=public --remove-port=22/tcp --permanent

firewall-cmd --reload

总结:

   1.看到SSH有公钥和私钥进行验证,免密码登陆,安全性也是可以的,希望以后有时间,可以尝试一下。

5.升级或更新现有系统,可做可不做!最好不做,服务器追求稳定就可以,未必就用最新的软件包!

6.安装命令行web浏览器

 yum install links

大部分情况下,尤其是在生产环境中,我们通常没有GUI的命令行安装CentOS,在这种情况下,我们必须通过终端查看网站的命令行浏览工具,为了实现这一功能,我安装了links工具。

 

1.安装GCC(GNU编译器集)

   GCC即GNU编译器集,是一个GNU项目开发的支持多种编程语言。最小化安装的CentOS没有默认安装。运行下面命令安装GCC编译器。

   yum install gcc

   gcc --version(检验版本)

   2.安装Apache HTTP服务器

       不管你因为什么原因使用服务器,大部分情况你都需要一个Http服务器运行网站、多媒体、用户端脚本和很多其他的东西。

  yum install http(我选择默认端口)

可以配置端口:到配置文件中修改你想要的端口。

   允许http服务通过防火墙(永久)

    firewall-cmd--add-service=http

    firewall-cmd --permanent--add-port=你修改的端口/tcp

    firewall-cmd --reload

    systemctl restarthttpd.service (启动服务)

    注:可以将修改http使用ip4协议

          将配置文件中的修改配置文件中的 Listen 0.0.0.0:端口号

  3.安装php

       php是用于web基础服务器脚本语言。它也经常被用于通用编程语言。(本项目中php+Apache+mysql)

        yum installphp

        安装php组件,使其支持数据库

          yuminstall php-mysql php-gd libjeg* php-ldap php-odbc php-pear php-xml php-xmlrpcphp-mbstring php-bcmath php-mhash

       安装完,确认apache服务以便在web浏览器中渲染。

        systemctlrestart httpd.service

        创建下面文件,检测php是否工作。

          到/var/www/html/

          创建文件phpinfo.php写入<?php\nphpinfo();\n?>

          测试 php /var/www/html/phpinfo.php

   4.安装MariaDB数据库

    MariaDB是MySQL的一个分支。RHEL以及它的衍生版已经从MySQL迁移到MariaDB.只是一个主流的数据库管理系统,主要原因是MySOL被oracle收购,已经不是开源了,大家都应该选择开源,支持开源。

    yum installmariadb-server mariadb

    设置为随机启动

     systemctl startmariadb.service

     systemctl enablemariadb.service

     允许matiadb服务通过防火墙(不支持开启,不安全)

     firewall-cmd--add-service=mysql

     配置mysql执行

     /usr/bin/mysql_secure_installation

     加入密码,一直y就可以

     systemctl restartmariadb.service #重启数据库

 后续配置工作:关闭SELINUX

                   1.临时关闭 setenforce0

                      临时启用 setenforce1

                   2.永久编译

                      vi /etc/selinux/config

                       #SELINUX=enforcing #注释掉

                       #SELINUXTYPE=targeted #注释掉

                       SELINUX=disabled #增加

                        保存,重启机器

                 Apache相关配置

                      vi /etc/httpd/conf/httpd.conf 编辑文件

                      Options Indexes FollowSymLinks 修改为Options IncludesExecCGI  FollowSymLinks(允许服务器执行CGI及SSI,禁止列出目录)

                      #AddHandler cgi-script .cgi  #修改为:AddHandler cgi-script.cgi .pl(允许拓展名为pl的脚本)

                      AllowOverride None #修改为 AllowOverride All(允许.htaccess)

                      #Options Indexes FollowSymLinks#修改为Options FollowSymLinks(不再浏览器中显示树状目录结构)

                       DiretoryIndex index.html #修改为:DirectoryIndex  index.html index.htmDefault.html Default.htm index.php(设置默认首页文件,添加index.php)

                       MaxKeepAliveRequests 500 #添加同时连接数500

                      保存退出

                       systemctl restarthttpd.service #重启apache

                       rm -f/etc/httpd/conf.d/welcome.conf #删除默认测试页

                    php配置

                       vi /etc/php.ini

                       data.timezone =PRC #把前面的分号去掉,改为date.timezone = PRC

                       其中php有禁用函数,如果某些程序需要用到这个函数,需要取消禁用

                       expose_php = Off#禁止显示版本信息 

                       short_open_tag = ON #支持php短标签

                        open_basedir = .:/tmp/ #设置表示允许访问当前目录(即PHP脚本文件所在之目录)和/tmp/目录,可以防止php木马跨站,如果改了之后安装程序有问题(例如:织梦内容管理系统),可以注销此行,或者直接写上程序的目录/data/www.osyunwei.com/:/tmp/

                        systemctl restartmariadb.service #重启MariaDB

                        systemctl restarthttpd.service #重启apache

                      测试成功!!!

                      

                                     搭建服务器三

1.安装 Nmap 监视开放端口

    Nmap 网络映射器用来分析网络,通过运行它可以发现网络的映射关系。

     yum installnmap

    列出主机端口命令

      nmap 127.0.0.1

     你可以看到下面的命令使用“ -v “选项后给出了远程机器更详细的信息。

      nmap -v127.0.0.1

      还有一些非常实用的命令,可以参考网上的微博。

2.讲解动态防火墙firewalld

   firewalld 是动态管理服务器的防火墙服务。(第一次接触防火墙机制,感觉美美哒)              firewalld是centos7的一大特性,最大的好处有两个:支持动态更新,不用重启服务;第二个就是加入了防火墙的“zone”概念。 

    运行、停止、禁用firewalld

     启动:systemctl start firewalld

      查看状态:systemctl status firewalld或者 firewall-cmd --state

      停用:systemctl disable firewalld

      禁用:systemctl stop firewalld

    配置firewalld

    查看版本:firewall-cmd --version

    查看帮助:firewall-cmd --help

    更新防火墙规则:firewall-cmd --reload

                        firewall-cmd--complete-reload

        两个命令的区别,一个是无需断开,一个需要断开

    查看所有端口到区域:firewall-cmd --zone=dmz --list-ports

    加入一个端口到区域:firewall-cmd --zone=dmz --add-port=8080/tcp

     永久生效再加上 --permanent 然后reload防火墙

     启用防火墙:systemctl enable firewalld

 3.安装Wget

        Wget是从web服务器获取下载内容的命令行工具。

         yuminstall wget

4.安装7-zip工具

 在最小化安装CentOS时你并没有获取类似unzip或untar的工具。我们需要选择安装每个工具,或一个能够所有格式的工具。7-zip就是一个能压缩和解压所有已知类型的文件的工具。

   yum install p7-zip

5.安装RootkitHunter

     是linux系统中扫描rootkits和其他可能有害攻击的程序。

      yum installrkhunter

      在linux中,以脚本文件以计划作业的形式运行rkhunter或者手动扫描有害攻击。

       rkhunter--check

6.可以安装Speedtest-cli测试服务器带宽。安装LMD和ClamAV一起使用作为反病毒引擎。

总结:学习linux要仔细仔细再仔细,细心细心再细心!调试调试再调试!

      

 

0 0