首页主机资讯Linux Apache如何配置安全

Linux Apache如何配置安全

时间2025-11-27 11:18:03发布访客分类主机资讯浏览1000
导读:Linux Apache 安全配置清单 一 基础安全基线 隐藏版本与标识:在全局配置中关闭签名与版本暴露,减少信息泄露面。 设置:ServerSignature Off、ServerTokens Prod 禁用目录列表:避免未授权目...

Linux Apache 安全配置清单

一 基础安全基线

  • 隐藏版本与标识:在全局配置中关闭签名与版本暴露,减少信息泄露面。
    • 设置:ServerSignature OffServerTokens Prod
  • 禁用目录列表:避免未授权目录内容被列示。
    • 设置:在目标目录或全局将 Options -Indexes
  • 以最小权限运行:创建专用系统用户/组(如 wwwapache),并在配置中指定 UserGroup,禁止以 root 直接运行工作进程。
  • 最小权限文件系统:网站目录由内容属主管理,Web 服务仅授予读取(及必要目录的写入)权限;配置文件与日志目录仅管理员可写。
  • 持续更新:定期升级 Apache 与模块,及时修补已知漏洞。

二 模块与请求限制

  • 精简模块:仅启用必需模块,禁用高风险或不需要的模块(示例:userdir、autoindex、status、cgi、includes、negotiation 等)。注意启用 SSL 时不要禁用 mod_setenvif,否则 httpd-ssl.conf 中的 BrowserMatch 会报错。
  • 限制请求大小:在 LimitRequestBody(或对应上下文)设置合理上限,降低缓冲区溢出与滥用风险。
  • 访问控制:对管理接口、特定路径按 IP/网段 限制访问;对敏感目录采用白名单策略。
  • 符号链接与 SSI:生产环境建议禁用 FollowSymLinks,对需要 SSI 的目录使用 IncludesNOEXEC,避免执行任意命令。

三 传输加密与端口管理

  • 启用 HTTPS/TLS:部署有效证书(推荐 Let’s Encrypt),配置强加密套件与协议(禁用 SSLv3/TLS1.0/1.1,优先 TLS1.2/1.3),并在虚拟主机中正确设置 SSLEngine on、SSLCertificateFile、SSLCertificateKeyFile、SSLCertificateChainFile
  • 端口与监听:仅开放必要端口(默认 80/443),如需变更监听端口,同步更新防火墙与虚拟主机配置,确保外部可达性与一致性。

四 日志监控与抗攻击

  • 访问与错误日志:启用并合理轮转日志,记录 IP、时间、请求、UA、Referer 等关键字段,便于审计与溯源。
  • 抗 DoS/Slowloris:部署 mod_evasive 缓解高频请求与慢速攻击;配置示例参数:DOSHashTableSize 2048、DOSPageCount 20、DOSSiteCount 300、DOSBlockingPeriod 10、DOSLogDir /var/log/apache2/evasive
  • 基线核查:变更前执行 httpd -t 校验配置语法,变更后复核服务状态与日志输出。

五 最小化配置示例

  • 全局隐藏版本与目录列表
    • 配置:
      ServerSignature Off
      ServerTokens Prod
      Options -Indexes
      
  • 以专用用户运行(示例用户/组:www/www)
    • 配置:
      User www
      Group www
      
  • 根目录默认拒绝与文档目录授权
    • 配置:
      <
          Directory />
          
          Options None
          AllowOverride None
          Require all denied
      <
          /Directory>
          
      
      <
          Directory /var/www/html>
          
          Options -Indexes +FollowSymLinks
          AllowOverride None
          Require all granted
      <
          /Directory>
          
      
  • 访问控制示例(仅内网网段可访问管理路径)
    • 配置:
      <
          Directory /var/www/html/admin>
          
          Require ip 192.168.1.0/24 127.0.0.1
      <
          /Directory>
          
      
  • 请求大小限制(示例:10 MB)
    • 配置:
      LimitRequestBody 10485760
      
  • 启用 SSL/TLS(示例片段)
    • 配置:
      SSLEngine on
      SSLCertificateFile    /etc/ssl/certs/example.com.crt
      SSLCertificateKeyFile /etc/ssl/private/example.com.key
      SSLCertificateChainFile /etc/ssl/certs/example-chain.crt
      
  • 变更校验与生效
    • 命令:
      httpd -t
      systemctl reload apache2   # Debian/Ubuntu
      systemctl reload httpd      # RHEL/CentOS
      

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


若转载请注明出处: Linux Apache如何配置安全
本文地址: https://pptw.com/jishu/757700.html
Debian Compton如何实现屏幕旋转 Debian VNC支持哪些VNC协议版本

游客 回复需填写必要信息