linux centos firewall防火墙屏蔽某个ip地址对服务器的访问

1、查看有哪些外部IP正在访问本机服务器,并按照连接次数从多到少排序:
netstat -n | grep -E 'tcp|udp' | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr | head

2、使用firewall-cmd --list-all,该命令将显示当前的防火墙规则,包括打开的端口和已定义的服务

3、使用以下命令添加防火墙规则以屏蔽指定的 IP:
sudo firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=<IP地址> drop'
其中 <IP地址> 是要屏蔽的 IP 地址。该命令将向防火墙添加一个规则,该规则将禁止来自指定 IP 地址的所有传入连接。–permanent 选项将规则永久性保存在防火墙中,以便在重启后保持持久。

4、重新加载防火墙配置以使更改生效:
firewall-cmd --reload

5、重新执行firewall-cmd --list-all就可以看到刚才添加的规格了

如果要重新允许某个ip地址访问服务器,可按如下步骤操作:
firewall-cmd --list-all
sudo firewall-cmd --permanent --remove-rich-rule='rule family=ipv4 source address=<IP地址> drop'
firewall-cmd --reload

评论