使用iptables阻止特定IP的步骤如下:
iptables命令直接添加规则sudo iptables -A INPUT -s <IP地址> -j DROP
-A INPUT:将规则添加到INPUT链。-s <IP地址>:指定要阻止的源IP地址。-j DROP:丢弃匹配的数据包。iptables命令添加规则并保存sudo iptables -A INPUT -s <IP地址> -j DROP
sudo iptables-save > /etc/iptables/rules.v4
iptables-save:保存当前的iptables规则到文件。/etc/iptables/rules.v4:保存规则的文件路径(适用于IPv4)。sudo iptables -A INPUT -m iprange --src-range <起始IP>-<结束IP> -j DROP
-m iprange:启用IP范围匹配模块。--src-range <起始IP>-<结束IP>:指定要阻止的IP地址范围。如果需要阻止多个IP地址范围,可以添加多条规则:
sudo iptables -A INPUT -s <起始IP1>-<结束IP1> -j DROP
sudo iptables -A INPUT -s <起始IP2>-<结束IP2> -j DROP
# 以此类推
如果你还想阻止特定IP访问特定端口,可以结合端口匹配:
sudo iptables -A INPUT -p tcp --dport <端口号> -s <IP地址> -j DROP
-p tcp:指定协议为TCP。--dport <端口号>:指定目标端口。-s <IP地址>:指定源IP地址。你可以使用以下命令查看当前的iptables规则:
sudo iptables -L -n -v
-L:列出所有链的规则。-n:以数字形式显示地址和端口。-v:显示详细信息。如果你需要删除之前添加的规则,可以使用以下命令:
sudo iptables -D INPUT -s <IP地址> -j DROP
-D INPUT:指定要删除规则的链。-s <IP地址>:指定要删除规则的源IP地址。-j DROP:指定要删除的规则动作。iptables-save和iptables-restore命令来持久化规则,或者使用iptables-persistent包(适用于Debian/Ubuntu)来自动保存和恢复规则。通过以上步骤,你可以有效地使用iptables阻止特定IP地址或IP地址范围的访问。