Firewalld 是 RHEL 7 及 CentOS 7 默认的防火墙, 如果要用 Firewalld 封锁 ip 的网络流量, 可以用以下指令.
以下指令会封锁 IP_ADDRESS, 将 IP_ADDRESS 换成要封锁的 ip 便可以了:
- # firewall-cmd –add-rich-rule=’rule family=”ipv4″ source address=”IP_ADDRESS” reject’
将整个 Class C 封锁:
- # firewall-cmd –add-rich-rule=’rule family=”ipv4″ source address=”192.168.1.2/24″ reject’
另一种常见的情况, 是不想将某个 ip 的全部流量封锁, 只想封锁指定的 port 埠号, 例如只允许 IP_ADDRESS 连接 port 80:
- # firewall-cmd –permanent –add-rich-rule=”rule family=ipv4 source address=192.168.1.2 port port=80 protocol=tcp reject”
设定后需要重新加载 Firewalld 使设定生效:
- # firewall-cmd –reload