ubuntu

如何在Ubuntu Apache中设置防盗攻击

小樊
41
2025-09-07 06:35:33
栏目: 网络安全

在Ubuntu Apache中设置防盗攻击可通过以下方式实现:

  1. 防盗链(防止资源盗用)

    • 方法1:使用.htaccess文件
      在网站根目录创建/编辑.htaccess,添加规则限制非指定域名访问资源(如图片):
      RewriteEngine On
      RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourdomain\.com [NC]
      RewriteRule \.(jpg|jpeg|png|gif)$ - [F,L]
      
      替换yourdomain.com为实际域名。
    • 方法2:使用mod_rewrite模块
      启用模块并配置规则(需在Apache配置文件中操作)。
  2. 限制访问频率(防DDoS/恶意刷访问)

    • 使用mod_evasive模块
      安装并启用模块,配置参数如请求次数、封锁时间等:
      sudo apt install libapache2-mod-evasive
      sudo a2enmod evasive
      
      编辑配置文件(如/etc/apache2/apache2.conf)设置DOSPageCount(单页请求限制)、DOSBlockingPeriod(封锁时长)等。
  3. Web应用防火墙(WAF)

    • 使用mod_security模块
      安装模块并启用,默认规则集可拦截常见攻击(如SQL注入、XSS):
      sudo apt install libapache2-mod-security2
      sudo a2enmod security2
      
      配置规则文件(如/etc/modsecurity/modsecurity.conf),可自定义规则或集成OWASP规则集。
  4. 其他基础防护

    • 修改默认端口:编辑/etc/apache2/ports.conf,将Listen 80改为非标准端口(需同时修改防火墙规则)。
    • 禁用不必要的模块:使用a2dismod命令禁用不需要的模块(如mod_php),减少攻击面。
    • 启用SSL/TLS:安装证书并配置HTTPS,加密数据传输(需配置/etc/apache2/sites-available/ssl.conf)。

注意:配置后需重启Apache生效(sudo systemctl restart apache2),并定期查看日志(/var/log/apache2/)监控异常访问。以上措施可组合使用,根据实际需求调整参数。

0
看了该问题的人还看了