Ubuntu Apache怎样配置安全策略
导读:Ubuntu 上 Apache 安全策略配置清单 一 基础加固 更新系统与软件包:保持 Ubuntu 与 Apache2 为最新版本,及时修补漏洞。 隐藏版本与标识:在主配置中关闭签名与版本暴露。 配置示例:# /etc/apache2/...
Ubuntu 上 Apache 安全策略配置清单
一 基础加固
- 更新系统与软件包:保持 Ubuntu 与 Apache2 为最新版本,及时修补漏洞。
- 隐藏版本与标识:在主配置中关闭签名与版本暴露。
配置示例:# /etc/apache2/apache2.conf ServerTokens Prod ServerSignature Off - 禁用目录列表:防止目录结构泄露。
配置示例:< Directory /var/www/html> Options -Indexes AllowOverride None Require all granted < /Directory> - 以最小权限运行:确认进程以 www-data 运行,避免以 root 启动。
- 自定义错误页面:减少信息泄露。
配置示例:ErrorDocument 403 /custom403.html ErrorDocument 404 /custom404.html ErrorDocument 500 /custom500.html - 限制上传目录执行权限:阻断上传的脚本执行。
配置示例:< Directory "/var/www/html/upload"> < FilesMatch "\.(php|php3|phtml)$"> Require all denied < /FilesMatch> < /Directory> - 启用与审查日志:确保访问与错误日志正常记录,便于审计与溯源。
默认路径:/var/log/apache2/access.log、/var/log/apache2/error.log。
二 传输加密与端口管理
- 启用 HTTPS/TLS:安装 mod_ssl 并配置证书。
快速命令:sudo a2enmod ssl sudo systemctl restart apache2 - 获取可信证书:使用 Let’s Encrypt/certbot 自动签发并自动配置 HTTPS。
快速命令:sudo apt install certbot python3-certbot-apache sudo certbot --apache - 防火墙放行:仅开放必要端口(HTTP/HTTPS)。
快速命令:sudo ufw allow 'Apache Full' # 或分别放行 sudo ufw allow 80/tcp sudo ufw allow 443/tcp sudo ufw enable - 端口变更(可选):如需变更监听端口,编辑 /etc/apache2/ports.conf 与相应虚拟主机,并同步防火墙放行新端口。
三 访问控制与请求限制
- 目录与文件权限:对外仅授予必要目录访问,禁止访问敏感文件(如 .ht*)。
配置示例:< FilesMatch "^\.ht"> Require all denied < /FilesMatch> - 限制可用 HTTP 方法:仅允许业务所需方法(如 GET/POST)。
配置示例:< LimitExcept GET POST> Require all denied < /LimitExcept> - 限制特定资源访问:对管理后台、配置文件等路径基于来源 IP 限制。
配置示例:< Directory "/var/www/html/admin"> Require ip 203.0.113.0/24 < /Directory> - 上传与可执行防护:结合前述上传目录“禁止执行脚本”策略,降低 Webshell 风险。
四 安全模块与抗攻击
- ModSecurity WAF:安装并启用 libapache2-mod-security2,加载 OWASP CRS 规则集,防御 SQL 注入、XSS、路径遍历 等常见攻击。
快速步骤:sudo apt install libapache2-mod-security2 sudo mv /etc/modsecurity/modsecurity.conf-recommended /etc/modsecurity/modsecurity.conf # 克隆并部署 OWASP CRS git clone https://github.com/SpiderLabs/owasp-modsecurity-crs.git sudo mv owasp-modsecurity-crs/crs-setup.conf.example /etc/modsecurity/crs-setup.conf sudo mv owasp-modsecurity-crs/rules/ /etc/modsecurity/ # 在 /etc/apache2/mods-available/security2.conf 中包含规则 echo 'Include /etc/modsecurity/rules/*.conf' | sudo tee -a /etc/apache2/mods-available/security2.conf sudo a2enmod security2 sudo systemctl restart apache2 - mod_evasive:缓解 DDoS/Slowloris 类攻击。
快速步骤:sudo apt install libapache2-mod-evasive sudo mkdir -p /var/log/apache2/evasive sudo chown www-data:root /var/log/apache2/evasive # /etc/apache2/mods-available/evasive.conf 示例参数 DOSHashTableSize 2048 DOSPageCount 20 DOSPageInterval 1.0 DOSSiteCount 300 DOSSiteInterval 1.0 DOSBlockingPeriod 10.0 DOSLogDir "/var/log/apache2/evasive" - 可选 mod_qos:进行连接速率与并发控制(按业务调优)。
五 运维与持续监控
- 配置语法检查与平滑重载:变更前先校验,再重载服务。
快速命令:sudo apache2ctl configtest sudo systemctl reload apache2 - 日志分析与告警:定期审阅访问与错误日志,使用 logwatch 等工具生成日报。
快速命令:sudo apt install logwatch sudo logwatch --output mail --mailto admin@example.com --detail high - 持续更新与公告订阅:关注 Apache 安全公告 与系统更新,及时修补。
- 运行时防护:生产环境建议启用 AppArmor 并为其配置针对 /usr/sbin/apache2 的合规策略,限制进程权限边界。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Ubuntu Apache怎样配置安全策略
本文地址: https://pptw.com/jishu/780960.html
