温馨提示×

怎样保护debian apache

小樊
44
2026-09-21 18:08:03
栏目: 智能运维

保护 Debian 上的 Apache(通常指 Apache2)需要从系统层、服务层、网络层和应用层多方面加固。下面给你一套实用且可落地的加固清单,适合生产环境。


一、系统层面

1. 保持系统和软件更新

sudo apt update
sudo apt upgrade -y

开启自动安全更新:

sudo apt install unattended-upgrades
sudo dpkg-reconfigure unattended-upgrades

2. 禁用不必要的服务

只保留 Apache 和必要组件:

systemctl disable --now telnet.socket

检查监听端口:

ss -tulnp

二、Apache 基础安全配置

3. 隐藏 Apache 版本信息

编辑:

sudo nano /etc/apache2/conf-available/security.conf

修改:

ServerTokens Prod
ServerSignature Off

启用并重启:

sudo a2enconf security
sudo systemctl restart apache2

4. 禁止目录浏览

<Directory /var/www/html>
    Options -Indexes
</Directory>

5. 限制危险请求方法

<Directory /var/www/html>
    AllowOverride None
    Require all granted
    <LimitExcept GET POST HEAD>
        Require all denied
    </LimitExcept>
</Directory>

三、权限与文件安全

6. 正确的文件和目录权限

sudo chown -R www-data:www-data /var/www/html
sudo find /var/www/html -type d -exec chmod 755 {} \;
sudo find /var/www/html -type f -exec chmod 644 {} \;

7. 禁止执行上传目录中的脚本

<Directory /var/www/html/uploads>
    php_flag engine off
    Options -ExecCGI
    AddHandler cgi-script .php .pl .py
</Directory>

四、网络与访问控制

8. 使用 UFW 防火墙

sudo apt install ufw
sudo ufw allow OpenSSH
sudo ufw allow 80
sudo ufw allow 443
sudo ufw enable

9. 限制管理或敏感目录访问

<Directory /var/www/html/admin>
    Require ip 192.168.1.0/24
    AuthType Basic
    AuthName "Restricted"
    AuthUserFile /etc/apache2/.htpasswd
    Require valid-user
</Directory>

五、HTTPS 与 TLS 安全

10. 强制 HTTPS(Let’s Encrypt)

sudo apt install certbot python3-certbot-apache
sudo certbot --apache

启用 HSTS:

Header always set Strict-Transport-Security "max-age=63072000"

六、模块与日志

11. 禁用无用模块

sudo a2dismod autoindex status cgi
sudo systemctl restart apache2

12. 加强日志监控

sudo tail -f /var/log/apache2/access.log
sudo tail -f /var/log/apache2/error.log

可配合 fail2ban 防止暴力破解。


七、进阶防护(推荐)

  • ✅ 使用 ModSecurity(WAF)
  • ✅ 使用 fail2ban
  • ✅ 使用 AppArmor / SELinux
  • ✅ 定期安全扫描(lynis、nessus)

快速安全基线(最小必做)

✔ 更新系统
✔ 隐藏版本
✔ 禁用目录浏览
✔ 防火墙
✔ HTTPS
✔ 最小权限


如果你愿意,我可以:

  • 给你一份 可直接用的 Apache 安全配置文件
  • 或按你的 Web 应用类型(PHP / WordPress / 静态站) 定制方案

0