温馨提示×

Debian下Apache安全如何保障

小樊
45
2025-12-13 21:38:15
栏目: 智能运维

Debian下Apache安全加固清单

一 基础与系统层防护

  • 保持系统与软件为最新:执行apt update && apt full-upgrade -y,并启用无人值守安全更新(unattended-upgrades)以自动获取修补。
  • 最小化攻击面:仅安装必需软件,禁用不需要的系统服务与端口,遵循最小化安装原则
  • 边界防护:启用UFW仅放行22/TCP(SSH)80/TCP(HTTP)443/TCP(HTTPS);云环境同步配置安全组仅允许必要来源。
  • 主机加固:SSH使用密钥登录、禁用root远程登录、可更改默认端口;为管理口设置仅内网访问跳板机策略。
  • 运行身份:确认Apache以www-data:www-data运行,避免使用root或高权限账户。

二 Apache服务最小化与信息泄露防护

  • 精简模块:仅启用必要模块,禁用示例与调试类模块,例如:
    • 禁用目录浏览:sudo a2dismod autoindex
    • 禁用状态页:sudo a2dismod status
  • 隐藏版本与系统信息:在**/etc/apache2/conf-available/security.conf**中设置:
    • ServerTokens Prod
    • ServerSignature Off
  • 目录与文件权限:
    • 网站根目录属主:sudo chown -R www-data:www-data /var/www/html
    • 目录权限:find /var/www/html -type d -exec chmod 755 {} ;
    • 文件权限:find /var/www/html -type f -exec chmod 644 {} ;
  • 目录访问策略:在虚拟主机配置中关闭索引、限制符号链接:
    • Options -Indexes +FollowSymLinks
    • 如非必要,避免使用AllowOverride All,改为仅允许需要的指令。

三 加密传输与证书管理

  • 启用TLS:安装模块并获取Let’s Encrypt证书:
    • sudo a2enmod ssl
    • sudo apt install certbot python3-certbot-apache
    • sudo certbot --apache -d yourdomain.com -d www.yourdomain.com
  • 证书维护:启用自动续期检查(cron或systemd timer),确保TLS证书持续有效;仅开放443并做HTTP→HTTPS跳转。

四 请求过滤与WAF

  • 部署ModSecurityOWASP Core Rule Set(CRS)
    • 安装:sudo apt install libapache2-mod-security2
    • 启用模块:sudo a2enmod security2
    • 复制推荐配置:cp /etc/modsecurity/modsecurity.conf-recommended /etc/modsecurity/modsecurity.conf
    • 关键配置示例:
      • SecRuleEngine On(或先用DetectionOnly观察误报)
      • SecRequestBodyLimit 536870912(按业务需要调整上传上限)
      • SecAuditLog /var/log/apache2/modsec_audit.log
    • 安装CRS规则集(示例):apt install -t testing modsecurity-crs
    • 重载Apache:systemctl reload apache2
  • 作用:识别并阻断SQL注入、XSS、文件包含等常见Web攻击,为应用提供额外防护层

五 日志监控 备份与持续运维

  • 日志与告警:集中监控**/var/log/apache2/access.logerror.log**,使用tail -fGoAccess、或接入Prometheus+Grafana进行可视化与阈值告警。
  • 备份策略:对**/var/www/html与关键配置(如/etc/apache2/sites-available/)执行定期备份异地/离线**留存,验证可恢复性。
  • PHP侧加固(如部署LAMP):在php.ini中限制风险函数与上传:
    • disable_functions = exec,passthru,shell_exec,system(按应用需求调整)
    • 合理设置upload_max_filesizepost_max_size与上传目录隔离
  • 定期复测:执行漏洞扫描(如OpenVAS/Nessus)与配置基线核查,持续修正问题。

0