本周实验
1. Linux下Apache部署一个php页面,返回http数据包中查看server信息,修改Apache 配置使server banner自定义。
2. nginx设置反向代理,代理上面Apache的应用。
实验一
1、安装PHP、MySQL、Apache
安装PHP,首先安装epel-release,输入命令:yum -y install epel-release,看到这个界面之后就说明安装成功了
安装PHP
首先获取PHP7.0yum源rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
然后查看php7.0的扩展名称,根据需求安装,查看扩展名指令:yum search php70w
查看到扩展名称后可以选择自己的要求安装几个。安装命令:yum install php70w php70w-fpm php70w-cli php70w-common php70w-devel php70w-gd php70w-pdo php70w-mysql php70w-mbstring php70w-bcmath
看到Complete就说明安装已经完成了,接下来使用php -v,查看php版本
PHP的一些操作指令:
systemctl start php-fpm.service 启动
systemctl Stop php-fpm.service 停止
systemctl Restart php-fpm.service 重启
systemctl enable php-fpm.service 开机自动启动服务
systemctl reload php-fpm.service 重启修改配置
安装MySQL
安装mysql。首先我们执行下面的指令获取repo源,wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
安装mysql-community-release-el7-5.noarch.rpm包,使用命令rpm -ivh mysql-community-release-el7-5.noarch.rpm
安装好mysql-community-release-el7-5.noarch.rpm包之后进行安装MySQL。使用命令:yum install mysql-community-server
安装过程中会出现两次需要确认的情况,输入y按回车进行确认,当出现Complete就说明安装已经成功了
验证一下,使用MySQL -u root
安装apache
安装apache。使用命令:yum install httpd,重启apache。输入指令:systemctl start httpd,在本地浏览器输入ip验证一下
设置开机自动启动服务systemctl enable httpd
2、apache下部署一个页面
首先介绍一下apache的默认设置
默认端口:80
默认发布目录:/var/www/html
默认发布文件:index.html
进入apache默认发布的目录。使用命令:cd /var/www/html,并创建一个文件vim index1.html,保存并且退出
在本地浏览器访问该页面
由于这台电脑burpsuite出了点问题所以先用fiddler抓包,看一下数据。此时可以查看详细的PHP、apache信息。如图
3、修改banner信息
隐藏apache中的信息,修改apache配置文件/etc/httpd/conf/httpd.conf。添加两行代码:
ServerSignature Off
ServerTokens Prod
隐藏php中的信息,修改/etc/php.ini文件 在php的php.ini中添加或修改成如下一条代码:
expose_php = Off
4、修改之后重启服务,本地浏览器刷新页面,抓包再看一下。发现版本信息确实是隐藏了
实验二:
nginx 由于其高效的并发处理能力,现在很多网站已经完全用nginx代替apache来处理静态页面,但是动态页面的处理,依然使用apache。
nginx安装非常简单,参照我上一篇博客有。
设置反向代理。首先打开nginx配置文件vi /etc/nginx/nginx.conf,修改配置信息为
location / {
proxy_pass 127.0.0.1:80;
}
保存,这个不太清除怎么验证。
apache处理动态文件。可以修改:
location ~ .php$ {
proxy_pass 127.0.0.1:80;
}
就是让apache处理PHP文件,其他的文件有nginx处理。