linux 禁止访问出站流量
利用firewall-cmd禁止访问外网
主机出接口为 eth0
所在网络 192.168.1.0/24
网关 192.168.1.254
例子1:现假设不允许该主机访问同网段下的其他主机,但允许访问其他的任意网络
1 2 3 4 5 |
# 允许出站流量访问网关,意味着可以访问任意网络了 firewall-cmd --direct --add-rule ipv4 filter OUTPUT 0 -o eth0 -d 192.168.1.254 -j ACCEPT # 拒绝访问 192.168.1.0/24 网络 firewall-cmd --direct --add-rule ipv4 filter OUTPUT 1 -o eth0 -d 192.168.1.0/24 -j DROP |
例子2:(与上面例子无关)仅允许主机主动访问 172.25.250.9 和 172.25.250.250 拒绝其他所有出站流量,包括网关
1 2 3 |
firewall-cmd --direct --add-rule ipv4 filter 0 -o eth0 172.25.250.9 -j ACCEPT firewall-cmd --direct --add-rule ipv4 filter 1 -o eth0 172.25.250.250 -j ACCEPT firewall-cmd --direct --add-rule ipv4 filter 2 -o eth0 0.0.0.0/0 -j DROP |
使用 firewall-cmd --list-all 命令是无法看到这些策略的,因为该命令仅显示入站流量的策略
要查看出站流量策略,请执行
1 2 3 4 |
[root@localhost ~]# firewall-cmd --direct --get-all-rules ipv4 filter OUTPUT 0 -o eth0 -d 172.25.250.9 -j ACCEPT ipv4 filter OUTPUT 1 -o eth0 -d 172.25.250.250 -j ACCEPT ipv4 filter OUTPUT 2 -o eth0 -d 0.0.0.0/0 -j DROP |
分类: linux