温馨提示×

iptables如何阻止恶意IP访问

小樊
53
2025-07-09 02:15:10
栏目: 编程语言

iptables 是 Linux 系统中用于配置内核防火墙的一个命令行工具。通过 iptables,你可以设置规则来允许或拒绝特定的网络流量。以下是一些基本的步骤和示例,展示如何使用 iptables 阻止恶意 IP 访问你的服务器。

1. 查看当前的iptables规则

首先,你可以查看当前的 iptables 规则,以确保你了解现有的配置。

sudo iptables -L -n -v

2. 阻止特定IP地址

假设你想阻止一个特定的 IP 地址(例如 192.168.1.100),可以使用以下命令:

sudo iptables -A INPUT -s 192.168.1.100 -j DROP

这条命令的意思是:在 INPUT 链中添加一条规则,如果数据包的源地址是 192.168.1.100,则丢弃该数据包。

3. 阻止IP地址范围

如果你想阻止一个 IP 地址范围(例如 192.168.1.0/24),可以使用以下命令:

sudo iptables -A INPUT -m iprange --src-range 192.168.1.0-192.168.1.255 -j DROP

这条命令的意思是:在 INPUT 链中添加一条规则,如果数据包的源地址在 192.168.1.0192.168.1.255 范围内,则丢弃该数据包。

4. 阻止特定端口

如果你想阻止某个 IP 地址访问特定的端口(例如端口 80),可以使用以下命令:

sudo iptables -A INPUT -s 192.168.1.100 -p tcp --dport 80 -j DROP

这条命令的意思是:在 INPUT 链中添加一条规则,如果数据包的源地址是 192.168.1.100,并且目标端口是 80,则丢弃该数据包。

5. 保存iptables规则

在某些 Linux 发行版中,iptables 规则在重启后会丢失。为了确保规则在重启后仍然有效,你需要保存这些规则。以下是一些常见的保存方法:

在Debian/Ubuntu上:

sudo iptables-save > /etc/iptables/rules.v4

在CentOS/RHEL上:

sudo service iptables save

或者

sudo systemctl save iptables

6. 恢复iptables规则

如果你需要恢复之前保存的 iptables 规则,可以使用以下命令:

在Debian/Ubuntu上:

sudo iptables-restore < /etc/iptables/rules.v4

在CentOS/RHEL上:

sudo service iptables restart

或者

sudo systemctl restart iptables

通过以上步骤,你可以有效地使用 iptables 阻止恶意 IP 访问你的服务器。请根据你的具体需求调整规则,并确保在生产环境中谨慎操作。

0