网站被亚马逊蜘蛛和Facebook爬虫搞崩溃,Linux服务器怎么屏蔽IP段?

首先如果你的网站打开特别慢,你可以怀疑是AI的爬虫来爬你的内容了,这些爬虫非常疯狂,之前就有OpenAI把乌克兰网站Trilegangers爬崩溃的例子,ChatGPT公司表示会尊重robots.txt规则,但是这个规则需要24小时才会更新,那么这些爬虫至少还会爬你20多小时,真让人心态崩溃。

robots.txt设置和IP段屏蔽介绍:https://www.shoushai.com/p/983

Linux服务器上屏蔽IP段,通常使用防火墙工具如iptablesnftables。以下是如何使用这两个工具来阻止特定IP段的访问。

使用 iptables 屏蔽 IP 段

  1. 临时规则 (重启后会丢失):
    • 如果你想阻止一个单独的IP地址,你可以这样做:
      bash

      深色版本
      sudo iptables -A INPUT -s 192.168.1.100 -j DROP
    • 如果你想阻止一个IP段,比如192.168.1.0/24网段,你可以这样做:
      bash

      深色版本
      sudo iptables -A INPUT -s 192.168.1.0/24 -j DROP
  2. 持久规则
    • 对于Debian/Ubuntu系统,可以安装并使用iptables-persistent来保存规则。
      bash

      深色版本
      sudo apt-get install iptables-persistent
      sudo netfilter-persistent save
    • 对于Red Hat/CentOS系统,你可以使用service命令来保存规则。
      bash

      深色版本
      sudo service iptables save

使用 nftables 屏蔽 IP 段

nftables是较新的网络包过滤框架,逐渐替代了iptables。它提供了更简洁和强大的语法。

  1. 添加规则
    • 阻止单个IP:
      bash

      深色版本
      sudo nft add rule ip filter input ip saddr 192.168.1.100 drop
    • 阻止IP段:
      bash

      深色版本
      sudo nft add rule ip filter input ip saddr 192.168.1.0/24 drop
  2. 保存规则
    • nftables的规则默认不会自动保存,你需要手动将规则表导出到一个文件中,并确保该文件在系统启动时被加载。
      bash

      深色版本
      sudo nft list ruleset > /etc/nftables.conf
  3. 启动服务
    • 确保nftables服务开机自启,并且现在就启动它。
      bash

      深色版本
      sudo systemctl enable nftables
      sudo systemctl start nftables

请根据你的实际需求选择合适的工具和方法。如果你不确定当前服务器使用的防火墙工具,可以通过检查iptablesnftables的服务状态或者查看现有规则来确认:

  • 查看iptables规则:sudo iptables -L
  • 查看nftables规则:sudo nft list ruleset

记得,在修改防火墙规则之前,最好确保你有其他方式(例如物理访问或第二个控制台)可以恢复服务器配置,以防意外地将自己锁在外面。

本文来自投稿,不代表首晒立场,如若转载,请注明出处:https://www.shoushai.com/p/984

喜欢 (1)

发表回复

登录后才能评论

猜你喜欢