Linux系统中Apache网页与安全优化的示例分析

65次阅读
没有评论

共计 5360 个字符,预计需要花费 14 分钟才能阅读完成。

这篇文章给大家分享的是有关 Linux 系统中 Apache 网页与安全优化的示例分析的内容。丸趣 TV 小编觉得挺实用的,因此分享给大家做个参考,一起跟随丸趣 TV 小编过来看看吧。

Apache 网页优化 Apache 网页优化概述

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

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

优化内容

配置网页压缩功能

工作模式的选择与参数优化

配置防盗链

配置隐藏版本号

…….

网页压缩 gzip 介绍

配置 Apache 的网页压缩功能,是使用 gzip 压缩算法来对网页内容进行压缩后再传输到客户端浏览器

作用

降低了网络传输的字节数, 加快网页加载的速度

节省流量,改善用户的浏览体验

gzip 与搜索弓 | 擎的抓取工具有着更好的关系

Apache 的压缩模块

Apache 实现网页压缩的功能模块包括

mod_gzip 模块

mod_deflate 模块

Apache 1.x

没有内建网页压缩技术,但可使用第三方 mod_gzip 模块执行压缩

Apache 2.x

在开发的时候,内建了 mod_deflate 这个模块,取代 mod_gzip

mod_gzip 模块与 mod_ deflate 模块

两者均使用 gzip 压缩算法,运作原理类似

mod_deflate 压缩速度略快,而 mod_gzip 的压缩比略高

mod_gzip 对服务器 CPU 的占用要高一 - 些

高流量的服务器,使用 mod_deflate 可能会比 mod_gzip 加载速度更快

配置网页压缩功能

手工编译安装 HTTP 服务

下载源码包

apr-1.6.2.tar.gz

apr-util-1.6.0.tar.gz

httpd-2.4.29.tar.bz2

[root@localhost ~]# mount.cifs //192.168.100.10/lamp-c7 /mnt // 宿主机中源码包存放目录挂载到 mnt 目录
Password for root@//192.168.100.10/lamp-c7: 
[root@localhost ~]# cd /mnt/ // 进入挂载目录
[root@localhost mnt]# ls // 查看你
apr-1.6.2.tar.gz cronolog-1.6.2-14.el7.x86_64.rpm httpd-2.4.29.tar.bz2 mysql-5.6.26.tar.gz
apr-util-1.6.0.tar.gz Discuz_X2.5_SC_UTF8.zip LAMP-php5.6.txt nginx-1.12.0.tar.gz
awstats-7.6.tar.gz error.png miao.jpg php-5.6.11.tar.bz2
[root@localhost mnt]# tar jxvf httpd-2.4.29.tar.bz2 -C /opt // 解压源码包
[root@localhost mnt]# tar zxvf apr-1.6.2.tar.gz -C /opt
[root@localhost mnt]# tar zxvf apr-util-1.6.0.tar.gz -C /opt/
[root@localhost mnt]# cd /opt
[root@localhost opt]# ls
apr-1.6.2 apr-util-1.6.0 httpd-2.4.29 rh
[root@localhost opt]# mv apr-1.6.2/ httpd-2.4.29/srclib/apr // 将解压的环境包放入 httpd-2.4.29 目录
[root@localhost opt]# mv apr-util-1.6.0/ httpd-2.4.29/srclib/apr-util
[root@localhost opt]# cd httpd-2.4.29 // 进入 httpd-2.4.29 目录
[root@localhost httpd-2.4.29]# yum install gcc gcc-c++ pcre-devel pcre zlib-devel expat-devel 
perl -y
// 安装环境包
[root@localhost httpd-2.4.29]# ./configure --prefix=/usr/local/httpd --enable-deflate --enable-so --enable-expires --enable-rewrite --enable-charset-lite --enable-cgi // 配置安装文件
[root@localhost httpd-2.4.29]# make   make install // 安装服务 

进入 http 服务配置文件查看压缩模块服务是否开启

[root@localhost httpd-2.4.29]# cd /usr/local/httpd/conf/
[root@localhost conf]# ls
extra httpd.conf magic mime.types original
[root@localhost conf]# ln -s /usr/local/httpd/conf/httpd.conf /etc/httpd.conf
[root@localhost conf]# vim /etc/httpd.conf
...// 省略部分内容...
#LoadModule charset_lite_module modules/mod_charset_lite.so
LoadModule deflate_module modules/mod_deflate.so // 找到此条目,并开启
LoadModule mime_module modules/mod_mime.so
...// 省略部分内容...
#LoadModule expires_module modules/mod_expires.so
LoadModule headers_module modules/mod_headers.so // 查找请求头部模块,确认是否开启
#LoadModule unique_id_module modules/mod_unique_id.so
...// 省略部分内容...
#LoadModule include_module modules/mod_include.so
LoadModule filter_module modules/mod_filter.so // 查看过滤器模块是否开启
#LoadModule substitute_module modules/mod_substitute.so
...// 省略部分内容...
 IfModule mod_deflate.c 
 AddOutputFilterByType DEFLATE text/html text/plain text/css text/xml text/javascript text/jpg text/png // 在文件末尾处编写压缩模块支持文件
 DeflateCompressionLevel 9 // 创建条目,压缩级别为  9  高压缩比
 SetOutputFilter DEFLATE // 将压缩模块设置为默认模块加载
 /IfModule  
:wq // 保存退出
[root@localhost conf]# /usr/local/httpd/bin/apachectl -t // 使用命令测试配置文件语法是否正常
AH00558: httpd: Could not reliably determine the server s fully qualified domain name, using localhost.localdomain. Set the  ServerName  directive globally to suppress this message
// 提示没有设置域名
Syntax OK // 语法正常
[root@localhost conf]# vim /etc/httpd.conf // 编辑主配置文件
...// 省略部分内容...
# prevent Apache from glomming onto all bound IP addresses.
Listen 192.168.144.133:80 // 打开并更改监听接口
#Listen 80
...// 省略部分内容...
# If your host doesn t have a registered DNS name, enter its IP address here.
ServerName www.kgc.com:80 // 打开并更改域名
...// 省略部分内容...
[root@localhost conf]# /usr/local/httpd/bin/apachectl -t // 再次检测语法
Syntax OK // 语法正常
[root@localhost conf]# cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd 
// 将启动脚本复制到 init.d 目录下,并取名 httpd 
[root@localhost conf]# vim /etc/init.d/httpd 
#!/bin/sh
# chkconfig: 35 85 21 
# description: Apache is a World Wide Web server // 在第一行下添加声明信息
...// 省略部分内容...
[root@localhost conf]# chkconfig --add httpd // 将 httpd 加入到 SERVICE 管理器
[root@localhost conf]# ln -s /usr/local/httpd/bin/* /usr/local/bin/ 
// 将 http 命令建立软链接到 /usr/local/bin/ 目录下
[root@localhost conf]# service httpd start // 使用 service 命令启动 HTTP 服务
[root@localhost conf]# netstat -ntap | grep 80 // 查看端口是否开启
tcp 0 0 192.168.144.133:80 0.0.0.0:* LISTEN 42332/httpd
[root@localhost conf]# systemctl stop firewalld.service // 关闭防防火墙
[root@localhost conf]# setenforce 0 // 关闭增强性安全功能
[root@localhost conf]# cd /usr/local/httpd/bin/ // 进入目录
[root@localhost bin]# ./apachectl -t -D DUMP_MODULES | grep  deflate  // 查看压缩模块是否开启
 deflate_module (shared) // 成功开启 

这开启一台 win 10 虚拟机,并在虚拟机中安装抓包工具 抓包工具下载

Linux 系统中 Apache 网页与安全优化的示例分析Linux 系统中 Apache 网页与安全优化的示例分析Linux 系统中 Apache 网页与安全优化的示例分析Linux 系统中 Apache 网页与安全优化的示例分析

在客户机浏览器中访问 http 服务提供的网页,并查看抓包工具

Linux 系统中 Apache 网页与安全优化的示例分析Linux 系统中 Apache 网页与安全优化的示例分析

在网页中插入图片,查看网页压缩功能是否能够正常使用

[root@localhost bin]# cd /mnt // 进入挂载点
[root@localhost mnt]# ls // 查看
apr-1.6.2.tar.gz cronolog-1.6.2-14.el7.x86_64.rpm httpd-2.4.29.tar.bz2 mysql-5.6.26.tar.gz
apr-util-1.6.0.tar.gz Discuz_X2.5_SC_UTF8.zip LAMP-php5.6.txt nginx-1.12.0.tar.gz
awstats-7.6.tar.gz error.png miao.jpg php-5.6.11.tar.bz2
[root@localhost mnt]# cp miao.jpg /usr/local/httpd/htdocs/ // 将图片复制到 http 站点目录
[root@localhost mnt]# cd /usr/local/httpd/htdocs/
[root@localhost htdocs]# ls
index.html miao.jpg
[root@localhost htdocs]# vim index.html 
 html body h2 It works! /h2 
 img src= miao.jpg / 
 /body /html 
:wq

在客户机中再次访问网页

Linux 系统中 Apache 网页与安全优化的示例分析Linux 系统中 Apache 网页与安全优化的示例分析

感谢各位的阅读!关于“Linux 系统中 Apache 网页与安全优化的示例分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-25发表,共计5360字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)