ubuntu

如何在Ubuntu中配置Apache2的安全策略

小樊
37
2025-08-20 05:32:33
栏目: 智能运维

以下是在Ubuntu中配置Apache2安全策略的关键步骤:

  1. 系统更新与补丁管理
    定期更新系统和软件包,安装Apache安全补丁:

    sudo apt update && sudo apt upgrade  
    
  2. 防火墙配置
    使用UFW允许HTTP(80端口)和HTTPS(443端口)流量:

    sudo ufw enable  
    sudo ufw allow 'Apache Full'  
    
  3. 隐藏Apache敏感信息
    修改配置文件/etc/apache2/apache2.conf,隐藏版本信息和服务器签名:

    ServerTokens Prod  
    ServerSignature Off  
    
  4. 启用SSL/TLS加密

    • 安装SSL模块及证书(可使用Let’s Encrypt免费证书):
      sudo apt install certbot python3-certbot-apache  
      sudo certbot --apache -d yourdomain.com  
      
    • 编辑虚拟主机配置文件(如/etc/apache2/sites-available/default-ssl.conf),指定证书路径并启用SSL:
      SSLEngine on  
      SSLCertificateFile /etc/letsencrypt/live/yourdomain.com/fullchain.pem  
      SSLCertificateKeyFile /etc/letsencrypt/live/yourdomain.com/privkey.pem  
      
  5. 访问控制与权限管理

    • 限制目录访问权限,禁止敏感目录列表:
      <Directory /var/www/html>  
        Options -Indexes  
        Require all granted  
      </Directory>  
      
    • 使用.htpasswd设置认证访问(如后台目录):
      sudo htpasswd -c /etc/apache2/.htpasswd username  
      
  6. 启用安全模块

    • 启用mod_headers添加HTTP安全头(如防XSS、点击劫持):
      sudo a2enmod headers  
      
      编辑/etc/apache2/conf-available/security.conf添加:
      Header always set X-Content-Type-Options "nosniff"  
      Header always set X-Frame-Options "SAMEORIGIN"  
      Header always set X-XSS-Protection "1; mode=block"  
      
    • 可选:启用mod_evasive防范DoS攻击:
      sudo apt install libapache2-mod-evasive20  
      
  7. 日志与监控
    确保错误日志和访问日志已启用,定期分析异常行为:

    sudo tail -f /var/log/apache2/error.log  
    sudo tail -f /var/log/apache2/access.log  
    
  8. 最小权限运行
    以非root用户运行Apache,修改/etc/apache2/envvars

    export APACHE_RUN_USER=www-data  
    export APACHE_RUN_GROUP=www-data  
    

:生产环境中建议关闭SSH密码认证、使用强密码,并定期备份配置文件。

参考来源:[1,2,3,4,5,6,7,8,9,10]

0
看了该问题的人还看了