首页主机资讯Debian Apache2安全配置有哪些

Debian Apache2安全配置有哪些

时间2026-01-19 02:39:04发布访客分类主机资讯浏览1216
导读:Debian 上 Apache2 的安全配置清单 一 基础与系统加固 保持系统与软件为最新:执行 sudo apt update && sudo apt upgrade,及时修补安全漏洞。 最小化攻击面:仅启用必需模块,禁...

Debian 上 Apache2 的安全配置清单

一 基础与系统加固

  • 保持系统与软件为最新:执行 sudo apt update & & sudo apt upgrade,及时修补安全漏洞。
  • 最小化攻击面:仅启用必需模块,禁用未使用的模块(如 a2dismod status/autoindex/info/userdir 等),减少可被利用的入口。
  • 运行身份与权限:以 www-data:www-data 运行,网站目录建议 /var/www/html,权限 755/644,禁止上传目录执行权限。
  • 网络边界:仅开放 80/443,如使用 ufw 执行 sudo ufw allow ‘Apache Full’ 或分别放行 http/https

二 隐藏版本与目录安全

  • 隐藏版本与系统标识:在 /etc/apache2/conf-enabled/security.conf 设置
    • ServerTokens Prod
    • ServerSignature Off
  • 禁用目录列表:在站点或全局 中设置 Options -Indexes
  • 限制符号链接与覆盖:建议 Options -Indexes +FollowSymLinks,如需 .htaccess 再启用 AllowOverride(避免过度放开)。

三 加密传输与端口管理

  • 启用 SSL/TLS 并强制 HTTPS:安装 certbotpython3-certbot-apache,执行
    • sudo apt install certbot python3-certbot-apache
    • sudo certbot --apache -d yourdomain.com -d www.yourdomain.com
  • 仅开放必要端口:在 ufw 中放行 http/https,或在 firewalld 中执行
    • sudo firewall-cmd --permanent --add-service={ http,https} & & sudo firewall-cmd --reload
  • 建议将 HTTP(80) 自动重定向到 HTTPS(443)

四 请求限制与 WebDAV 安全

  • 禁用危险或不使用的 HTTP 方法(如 PUT/DELETE/TRACE):
    • 全局或 中使用 mod_rewrite
      • RewriteEngine On
      • RewriteCond %{ REQUEST_METHOD} ^(PUT|DELETE|TRACE)$
      • RewriteRule . - [F,L]*
  • 不需要 WebDAV 时,禁用模块:
    • sudo a2dismod dav & & sudo a2dismod dav_fs
  • 防止点击劫持:启用 mod_headers 并添加
    • Header always set X-Frame-Options “SAMEORIGIN”

五 安全响应头与进阶防护

  • 启用并优化安全响应头(在 security.conf 或站点配置中,需 mod_headers):
    • X-Content-Type-Options “nosniff”
    • X-Frame-Options “SAMEORIGIN”
    • X-XSS-Protection “1; mode=block”
    • Referrer-Policy “no-referrer-when-downgrade”
    • Content-Security-Policy “default-src ‘self’; script-src ‘self’”(按站点实际调整)
  • 启用 mod_security2mod_evasive 做 WAF/抗 DoS(按需启用并维护规则):
    • sudo apt install libapache2-mod-security2 libapache2-mod-evasive
    • sudo a2enmod security2 evasive
  • 变更生效与验证:
    • 语法检查:sudo apache2ctl configtest
    • 重载服务:sudo systemctl reload apache2
    • 实时日志:sudo tail -f /var/log/apache2/{ access,error} .log
  • 如运行 PHP,在 php.ini 中关闭版本暴露:expose_php = Off

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


若转载请注明出处: Debian Apache2安全配置有哪些
本文地址: https://pptw.com/jishu/785109.html
Apache2模块如何加载启用 如何在Debian上启用SSL

游客 回复需填写必要信息