Apache的网页和安全优化

一、Apache网页优化

Apache网页优化的概述:
在企业中,部署Apache后只采用默认的配置参数,会发网防很多题,换言之照时认配置是针对以前较低的服务器配置的,以前的配置已经不适用当今互联网时代

为了适应企业需求,就需要考虑如何提升Apache的性能与稳定性,这就是Apache优化的内容

1.1 网页压缩

启动网页压缩的步骤:
在这里插入图片描述

1)网页压缩的理论步骤

1.检查是否安装mod_deflate 模块:
apachectl -t -D DUMP_MODULES | grep “deflate”

2.如果没有安装mod deflate 模块,重新编译安装 Apache 添加 mod deflate 模块

systemctl stop httpd.service
cd /usr/local/httpd/conf
mv httpd.conf httpd.conf.bak

yum -y install gcc gcc-c++ pcre pcre-devel zlib-devel
cd /opt/httpd-2.4.29/
./configure
–prefix=/usr/local/httpd
–enable-so
–enable-rewrite
–enable-charset-lite
–enable-cgi
–enable-deflate #加入mod_deflate 模块

make &s make install

3.配置 mod deflate 模块启用

vim /usr/local/httpd/conf/httpd.conf
–51行–修改 注释52行
Listen 192.198.80.10:80
#Listen 80
–105行–取消注释
LoadModule deflate module modules/mod deflate.so #开启mod deflate 模块

–197行–取消注释,修改
ServerName www . clj. com: 80
–末行添加–

4.检查安装情况,启动服务

apachect1 -t #验证配置文件的配置是否正确
apachectl_-t -D DUMP_ MODULES l grep “deflate” #检查 mod deflate 模块是否已安装
deflate module (shared) #已安装的正确结果
systemctl start httpd.service

5.测试 mod_deflate 压缩是否生效

cd /usr/local/httpd/htdocs
先将game.jpg文件传到/usr/local/httpd/htdocs目录下
vim index.html

It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works !

2)网页压缩的具体实操步骤(图文)

第一步:检查是否安装 mod_deflate 模块:
在这里插入图片描述

第二步:没有安装 mod_deflate 模块,重新编译安装Apache添加该模块
1) 关闭服务,然后对httpd文件进行备份后,安装相关程序
在这里插入图片描述

2) 重新编译安装Apache添加 mod_deflate 模块
在这里插入图片描述

3)重新编译安装
在这里插入图片描述

第三步:配置 mod_deflate模块
1)修改第51行,然后52行注释掉
在这里插入图片描述

2)修改105行和197行
在这里插入图片描述

3)末行添加配置
在这里插入图片描述

第四步:检查安装情况,启动服务
在这里插入图片描述

第五步:测试 mod_deflate 压缩是否生效

  1. 拖入图片,然后编辑index.html文件
    在这里插入图片描述

2)临时配置域名与IP地址的映射关系,然后在【火狐浏览器】中进行测试(网页内右键然后点击查看元素)
在这里插入图片描述
在这里插入图片描述

1.2 网页缓存

通过mod_expire模块配置Apache,使网页能在客户端浏览器缓存一段时间,以避免重复请求。
启用mod_expire模块后,会自动生成页面头部信息中的Expires标签和Cache-Control标签,客户端浏览器根据标签决定下次访问是在本地机器的缓存中获取页面,不需要向服务器再次发出请求,从而降低客户端的访问频率和次数,达到减少不必要的流量和增加访问速度的目的。

1)网页缓存 的理论步骤

1.检查是否安装 mod_expires 模块

apachectl -t -D DUMP_MODULES | grep “expires”

2.如果没有安装mod_expires 模块,重新编译安装 Apache 添加 mod_expires模块

systemctl stop httpd.service #停止服务

cd /usr/local/httpd/conf/ #切换目录
mv httpd.conf httpd.conf.bak2 #进行备份
yum install -y gcc gcc-c++ pcre pcre-devel zlib-devel #安装相关程序

#安装mod_expires模块
./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi --enable-deflate --enable-expires

make -j4 && make install #重新编译安装

3.配置 mod_expires 模块启用

vim /usr/local/httpd/conf/httpd.conf #修改配置文件

----52行修改-----
Listen 192.168.80.77:80

----111行取消注释----
LoadModule expires_module modules/mod_expires.so

----199行取消注释并修改-----
ServerName www.clj.com:80

----末行添加-----

4.检查安装情况,启动服务

apachectl -t #验证配置.文件的配置是否正确
apachectl -t -D DUMP_MODULES | grep “expires” #检查 mod_deflate 模块是否已安装

systemctl start httpd.service #开启服务

5.测试缓存是否生效
cat /usr/local/httpd/htdocs/index.html
方法一∶
在Linux系统中,打开火狐浏览器,右击点查看元素选择 网络 —> 选择 HTML、WS、其他
访问 http∶//192.168.80.10 ,双击200消息查看响应头中包含 Expires 项
方法二∶
在Windows系统中依次安装 Microsoft.NET4 和fiddler 软件,打开fiddler 软件选择 inspectors —> 选择 Headers
浏览器访问 http//192.168.80.10 ,双击200消息查看 Expires 项

2)网页缓存 的具体实操步骤(图文)

第一步:检查是否安装 mod expires 模块
在这里插入图片描述

第二步:如果没有安装mod_expires 模块,重新编译安装 Apache 添加 mod_expires模块
1)安装相关程序
在这里插入图片描述

2)加载模块
在这里插入图片描述

3)重新编译安装
在这里插入图片描述

第三步:配置 mod_expires 模块启用
1)切换目录然后修改监听的IP地址
在这里插入图片描述

2)取消111行的注释
在这里插入图片描述

3)修改域名
在这里插入图片描述

4)末行添加配置
在这里插入图片描述

第四步:检查安装情况,启动服务
在这里插入图片描述

第五步:测试结果
1)进入网页,然后进行清理记录和刷新
在这里插入图片描述

2)查看缓存是否生效,如下图即可
在这里插入图片描述

二、Apache安全优化

2.1 隐藏版本信息

Apache的版本信息,透露了一定的漏洞信息,从而给网站带来安全隐患生产环境中要配置Apache隐藏版本信息
如下:
在这里插入图片描述

1)隐藏版本信息 的理论步骤

vim /usr/local/httpd/conf/httpd.conf #修改此文件,修改内容如下
------491行–取消注释------
Include conf/extra/httpd-default.conf

vim /usr/local/httpd/conf/extra/httpd-default.conf #修改此文件,修改内容如下
------55行–修改------
ServerTokens Prod #将原本的 Full 改为 Prod,只显示名称,没有版本
#ServerTokens 表示 Server 回送给客户端的响应头域是否包含关于服务器 OS 类型和编译过的模块描述信息

systemctl restart httpd.service #重新启动服务

浏览器访问 http∶//192.168.80.77 ,双击200消息查看 Server 项

2)隐藏版本信息 的具体实操步骤(图文)

第一步:修改httpd.conf 文件,修改内容如下
在这里插入图片描述

第二步: 修改httpd-default.conf文件,修改内容如下
在这里插入图片描述

5.测试隐藏版本信息是否生效
在这里插入图片描述

2.2 配置防盗链

防盗链是防止别人的网站代码里面盗用我们自己服务器上的图片、文件、视频等相关资源
如果别人盗用网站的这些静态资源,明显的是会增大服务器的带宽压力
作为网站的维护人员,要杜绝服务器的静态资源被其他网站盗用

1)配置防盗链 的理论步骤

1.检查是否安装 mod rewrite 模块
apachectl -t -D DUMP_MODULES | grep “rewrite”

2.如果没有安装mod_rewrite 模块,重新编译安装 Apache 添加 mod_rewrite模块

systemctl stop httpd.service #停止服务
cd /usr/local/httpd/conf/ #切换目录
mv httpd.conf httpd.conf.bak3 #文件备份
yum install -y gcc gcc-c++ pcre pcre-devel zlib-devel #安装相关程序

cd /opt/httpd-2.4.29/ #切换目录
#添加 mod rewrite模块
./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi --enable-deflate --enable-expires --enable-rewrite
make -j4 && make install #重新编译安装
3.配置 mod_rewrite 模块启用

vim /usr/local/httpd/conf/httpd.conf
LoadModule rewrite_module modules/mod_rewrite.so

RewriteCond %{HTTP REFERER}!^http;//www.clj.com.s【NC】 的字段含义∶ "8{HTTP
REFERER}"∶ 存放一个链接的 URL,表示从哪个链接访问所需的网页。 "!^∶ 表示不以后面的字符串开头。
"http;//www.clj.com"∶ 是本网站的路径,按整个字符串匹配。 .$"∶ 表示以任意字符结尾。 "【NC】 "∶
表示不区分大小写字母。

RewriteRule …(gifljpg|swf)$ http;//www.clj.com/error.pnq 的字段含义∶
". “∶表示匹配一个字符。
““∶ 表示匹配 0 到多个字符,与”.“合起来的意思是匹配 0 到多次前面的任意字符,如果是 1 到多次匹配可以用”+“表示。
“.“∶ 在这里的”“是转义符,”.“就代表符号”.“的意思。因为”.“在指令中是属于规则字符,有相应的含义,如果需要匹配, 需要在前面加个转义符””,其它规则字符如果需要匹配, 也做同样处理。
“(gifljpglswf)“∶ 表示匹配"gif”、“jpg”、“swf"任意一个,”$“表示结束。最后的规则是以”.gif”、”.jpg”、”.swf"结尾,前面是1到多个字符的字符串,也就是匹配图片类型的文件。
"http∶/www.clj.com/error,pnq"∶ 表示转发到这个路径 。

整个配置的含义是 使用本网站以外的网站域名 访问本站的图片文件时,显示 3.png 这个图片。

Options Indexes FollowSymLinks
AllowOverride None
Require all granted

RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://clj.com/.$ [NC]
RewriteCond %{HTTP_REFERER} !^http://clj.com$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www.clj.com/.
$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www.clj.com/$ [NC]
RewriteRule .(jpg|jpeg|gif|png) 3.png

4.网页准备
Web源主机配置∶

cd /usr/local/httpd/htdocs
将1.jpg、3.jpg文件传到/usr/local/httpd/htdocs目录下

vim index.html
<html><body><h1>this is clj.com!</hl>
<img src=“1.jpg”/>
</body>

echo “192.168.80.77 www.clj.com”>> /etc/hosts
echo “192.168.80.100 www.dl.com” >>/etc/hosts

盗链网站主机∶

yum install -y httpd
cd /usr/local/httpd/htdocs #yum安装的httpd服务的默认路径为/var/www/html/
vim index.html
<html><body><h1>
this is dl.com!
</h1>
<img src=“http;//www.nj.com/1.jpg”/>

echo “192.168.153.30 www.nj.com”>> /etc/hosts
echo “192.168.153.10 www.dl.com” >>/etc/hosts
5.在盗图网站主机上进行浏览器验证 http:www.dl.com

2)配置防盗链 的具体实操步骤(图文)

第一步:检查是否安装 mod rewrite 模块
在这里插入图片描述

第二步:如果没有安装mod_rewrite 模块,重新编译安装 Apache 添加 mod rewrite模块
1)停止服务,然后备份文件,进行yum安装程序
在这里插入图片描述

2)添加 mod rewrite模块
在这里插入图片描述

3)重新编译安装
在这里插入图片描述

第三步:配置 mod_rewrite 模块启用
1)修改/usr/local/httpd/conf/httpd.conf文件,取消157行注释
在这里插入图片描述

2)在224行的下面添加这些配置(在虚拟机上找的,这个做完忘截图)
在这里插入图片描述

第四步:盗链测试
1)在源主机上配置(这个截图错了,忘修改回去流程是这么个流程
在这里插入图片描述

2)获取到源主机图片的src地址
在这里插入图片描述

3)在盗链主机上配置httpd相关配置
在这里插入图片描述

4)在盗链主机上配置临时域名解析
在这里插入图片描述

5)在盗链主机上访问盗链主机网站地址(记得清理历史记录和缓存然后刷新网页)
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

YJ Thoreau

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值