1)不让自己ping通自己的localhost;
sudo iptables -A INPUT -s 127.0.0.1 -d 127.0.0.1 -j DROP
把这条配置删除:sudo iptables -D INPUT -s 127.0.0.1 -d 127.0.0.1 -j DROP
2)屏蔽掉来自我阿里云的包:阿里云的IP地址是A:B:C:D
sudo iptables -I INPUT -s A:B:C:D/32 -j DROP
好了,现在连ssh都连接不上了,但是通过wireshark还是能抓到包啊,这说明wireshark非常靠近底层,之上,进行了过滤。
3)那么如果让我往阿里云ping的包发不出去:阿里云的IP地址是A:B:C:D
sudo iptables -I OUTPUT -d A:B:C:D/32 -j DROP
4)将所有出去的软件包的源地址都换成192.168.0.114
sudo iptables -t nat -I POSTROUTING -j SNAT --to-source 192.168.0.114
POSTROUTING 这个规则中设置了经过路由之后
5) 把去往 172.16.93.0/24 的数据包的源地址都换成 10.0.0.1
这里涉及到两个新的标签:SNAT() / --to-source()
iptables -t nat -A POSTROUTING -s 172.16.93.0/24 -j SNAT --to-source 10.0.0.1
6) 设置DNAT:
涉及到两个新的标签:--dport DNAT --to-destination
iptables -t nat -A PREROUTING -d 10.0.10.62 -p tcp --dport 80 -j DNAT--to-destination 192.168.0.110
Append:
ping回复的数据包中竟然能看到我阿里云的地理坐标信息等。