首页主机资讯Ubuntu下Apache2安全设置

Ubuntu下Apache2安全设置

时间2025-12-03 10:49:04发布访客分类主机资讯浏览1278
导读:Ubuntu下Apache2安全设置清单 一 基础加固 保持系统与软件为最新:执行sudo apt update && sudo apt upgrade,及时修补漏洞。 隐藏版本与系统信息:在**/etc/apache2/...

Ubuntu下Apache2安全设置清单

一 基础加固

  • 保持系统与软件为最新:执行sudo apt update & & sudo apt upgrade,及时修补漏洞。
  • 隐藏版本与系统信息:在**/etc/apache2/conf-enabled/security.conf中设置ServerTokens ProdServerSignature Off**,减少信息泄露。
  • 禁用目录列表:在站点或全局配置中将目录选项设为Options -Indexes,防止无索引时暴露目录结构。
  • 以最小权限运行:确认进程以www-data用户/组运行(查看进程或配置),避免使用root启动。
  • 文件与目录权限:网站根目录建议chown -R www-data:www-data /var/www/htmlchmod -R 755 /var/www/html,仅对上传等特定目录按需放宽。
  • 禁用不必要的模块:列出模块apache2ctl -M,禁用不需要的模块(如a2dismod autoindex等)以缩小攻击面。

二 传输加密与端口管理

  • 启用并强制使用HTTPS:安装证书工具sudo apt install certbot python3-certbot-apache,获取并自动配置证书sudo certbot --apache -d yourdomain.com -d www.yourdomain.com;或手动启用mod_ssl并配置证书路径。
  • 防火墙放行:使用ufw仅开放必要端口,推荐sudo ufw allow ‘Apache Full’(同时放行80/443),并启用sudo ufw enable
  • 端口变更(可选):如需变更监听端口,编辑**/etc/apache2/ports.conf**(如将80/443改为5000/4443),并同步更新虚拟主机与防火墙放行规则。

三 访问控制与请求防护

  • 访问控制:对管理后台或敏感目录使用Require ip 192.168.1.0/24Deny from x.x.x.x进行白/黑名单控制;基于目录配置示例:
    < Directory “/var/www/html/admin”>
        Options -Indexes
        AllowOverride None
        Require ip 192.168.1.0/24
  • 基础认证:对特定路径启用HTTP Basic Auth,先生成口令文件sudo htpasswd -c /etc/apache2/.htpasswd user,再在配置中加入:
    < Directory “/var/www/html/secret”>
        AuthType Basic
        AuthName “Restricted”
        AuthUserFile /etc/apache2/.htpasswd
        Require valid-user
  • 安全响应头:启用mod_headers并添加:

        Header always set X-Content-Type-Options “nosniff”
        Header always set X-Frame-Options “SAMEORIGIN”
        Header always set X-XSS-Protection “1; mode=block”
        Header always set Referrer-Policy “no-referrer-when-downgrade”
        Header always set Content-Security-Policy “default-src ‘self’; script-src ‘self’ ‘unsafe-inline’ ‘unsafe-eval’; object-src ‘none’; ”
  • 请求限流与抗DoS:安装并配置libapache2-mod-evasive缓解暴力与DDoS;按需部署libapache2-mod-qos对抗Slowloris等低速攻击。

四 日志监控与入侵防护

  • 日志与告警:确保ErrorLogCustomLog已启用,结合fail2ban监控异常登录/扫描并自动封禁:
    sudo apt install fail2ban,启用服务sudo systemctl start fail2ban & & sudo systemctl enable fail2ban
  • WAF能力:部署libapache2-mod-security2并加载规则集,增强对SQL注入/XSS等常见攻击的拦截能力。
  • 运行时防护:启用并正确配置AppArmor对**/usr/sbin/apache2进行域限制(如sudo aa-enforce /etc/apparmor.d/usr.sbin.apache2**),切勿直接移除AppArmor。
  • 审计与巡检:定期查看**/var/log/apache2/access.logerror.log**,可使用logwatch做日报分析。

五 快速检查与生效

  • 配置语法检查:sudo apache2ctl configtest
  • 重启服务:sudo systemctl restart apache2
  • 验证要点:
    • 访问不存在资源返回自定义错误页且不泄露版本;目录无索引时不列文件;
    • 访问http://自动跳转https://
    • 敏感路径返回401需认证;可疑来源被fail2ban封禁;
    • 模块按需启用/禁用(如ssl、headers、evasive、security2)。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Ubuntu下Apache2安全设置
本文地址: https://pptw.com/jishu/762144.html
Debian Java类路径设置方法 Debian Java程序启动失败怎么办

游客 回复需填写必要信息