首页主机资讯Ubuntu Apache怎样配置安全策略

Ubuntu Apache怎样配置安全策略

时间2026-01-16 05:30:04发布访客分类主机资讯浏览1090
导读:Ubuntu 上 Apache 安全策略配置清单 一 基础加固 更新系统与软件包:保持 Ubuntu 与 Apache2 为最新版本,及时修补漏洞。 隐藏版本与标识:在主配置中关闭签名与版本暴露。 配置示例:# /etc/apache2/...

Ubuntu 上 Apache 安全策略配置清单

一 基础加固

  • 更新系统与软件包:保持 UbuntuApache2 为最新版本,及时修补漏洞。
  • 隐藏版本与标识:在主配置中关闭签名与版本暴露。
    配置示例:
    # /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
如何在Ubuntu Apache中设置访问控制 Ubuntu Apache怎样配置虚拟主机

游客 回复需填写必要信息