22.2.4 Apache Web安全增强

2025-06-23 10:33:29 更新

(一)Web安全增强


安全增强措施

说明

备注

1

及时安装补丁

关注Apache官网,升级系统或添加补丁


2

启用.htaccess文件保护网页

.htaccess配置文件功能:设置网页密码、设置出错显示文件、改变首页文件名(如index.html)、禁止读取文件名、重定向文件、加MJME类别、禁止列目录等


3

设置专门用户和组

按照最小特权原则,分配能完成Web服务的专门用户和组

不使用系统预定义账号,如nobody用户和nogroup用户组

4

隐藏软件版本号

软件漏洞和特定版本相关。系统默认会显示Apache版本号及加载模块

屏蔽方法:修改配置文件httpd.conf

5

目录访问安全增强

可访问目录,使用相对安全途径访问;不要让用户查看任何目录索引列表(默认index不存在时显示该目录)

①禁止使用目录索引文件

Options -Indexes FollowSymLinks

②禁止默认访问。只对指定目录开启访问权限

order deny, allow

Allow from all

③禁止用户重载

Allow override None

6

文件目录保护

通过操作系统设置文件目录安全

参见(二)文件目录保护

7

删除默认目录或不必要文件

默认目录和不必要文件会带来安全威胁

①Apache源代码文件

②默认HTML文件

③CGI程序样例

④默认用户文件

8

第三方软件安全增强


①构建Apache Web服务器“安全沙箱”

②使用Open SSL增强安全通信(保护数据流、验证双方身份)

③增强Apache Web服务器访问控制

(二)文件目录保护


目录

作用及设置

1

ServerRoot

保存配置文件(conf子目录)、二进制文件和其他服务器配置文件

# chown -R root:webadmin /usr/local/apache/conf

# chmod -R 600 /usr/local/apache/conf

# chmod 664 /usr/local/apche/conf/password

2

DocumentRoot

保存Web站点内容(HTML文件和图片)

# chown -R root:webdev /usr/local/apache/htdocs

# chmod -R 664 /usr/local/apache/htdocs

3

CGI目录

# chown -R root:webadmin /usr/local/apache/cgi-bin

# chmod -R 555 /usr/local/apache/cgi-bin

4

执行目录

# chown -R root:webadmin /usr/local/apache/bin

# chmod -R 550 /usr/local/apache/bin

5

日志目录

# chown -R root:webadmin /usr/local/apache/logs

# chmod -R 664 /usr/local/apache/logs

(三)安全沙箱

  1. 通过chroot机制更改某软件运行时所能看到的根目录,即将某软件运行限制在指定目录中。
  2. 保证该软件只能对该目录及其子目录的文件有所动作,从而保证整个服务器的安全。
  3. 即使被破坏或侵入,服务器整体也不会受到损害。
  4. 可用jail软件包来帮助简化建立Apache Web chroot安全机制。

(四)TCP Wrapper

通过配置TCP Wrappers的hosts.allow、hosts.deny文件,指定IP地址访问特定的服务。