以下是在Ubuntu下配置Apache安全策略的关键步骤:
更新系统与软件包
sudo apt update && sudo apt upgrade
sudo apt install apache2
隐藏敏感信息
修改配置文件 /etc/apache2/apache2.conf,设置:
ServerTokens Prod
ServerSignature Off
禁用不必要的模块
禁用如 mod_php、mod_autoindex 等非必要模块:
sudo a2dismod php7.x autoindex
配置防火墙
使用 ufw 允许HTTP/HTTPS流量:
sudo ufw allow 'Apache Full'
sudo ufw enable
启用SSL/TLS加密
安装证书并配置虚拟主机(以Let’s Encrypt为例):
sudo apt install certbot python3-certbot-apache
sudo certbot --apache
防范Web攻击
sudo apt install libapache2-mod-security2
sudo a2enmod security2
sudo cp /etc/modsecurity/modsecurity.conf-recommended /etc/modsecurity/modsecurity.conf
sudo nano /etc/modsecurity/modsecurity.conf # 设置 SecRuleEngine On
sudo service apache2 restart
sudo apt install libapache2-mod-evasive
sudo nano /etc/apache2/mods-available/evasive.conf # 调整阈值
sudo a2enmod evasive
限制访问权限
通过配置文件限制目录访问,例如:
<Directory /var/www/html>
Options -Indexes
Require all granted
</Directory>
日志与监控
启用详细日志并定期分析:
sudo tail -f /var/log/apache2/access.log /var/log/apache2/error.log
定期更新与维护
定期升级系统和模块,修复漏洞:
sudo apt update && sudo apt upgrade
注:部分步骤(如SELinux)适用于特定场景,需根据实际环境调整。