什么是 iptables 的预设政策 (Policy)?若我要针对 filter 的 INPUT 做成 DROP 的默认政策,指令如何下达?
当封包的所有属性都不在防火墙的规则当中时,那么这个封包能否顺利的通过防火墙,则以 Policy 作为这个封包的最终动作了!iptables -P INPUT DROP
假设今天我的 Linux 仅是作为 Client 之用,并没有对 Internet 进行任何服务, 那么你的防火墙规划应该如何设定比较好?
既然没有对 Internet 提供任何服务,那么(1)请将所有的对外埠口先关闭吧!(2)防火墙规则当中,最重要的是 INPUT 的 Policy 一定要 DROP ,然后将『 iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT 』即可!
我要将来自 192.168.1.50 这个 IP 来源的封包,只要是向我的 21~23 埠口要求的封包,就将他抵挡,应该如何下达 iptables 指令?
iptables -A INPUT -p tcp -s 192.168.1.50 --dport 21:23 -j DROP
我要将我自己主机 ping 的响应功能取消,应该如何下达 iptables 的指令?
因为 ping 能否响应用的是 icmp 的 type 8 (请参考网络基础内的 ICMP 相关内容),所以我可以这样做:
iptables -I INPUT -p icmp --icmp-type 8 -j DROP
请说明为何这个指令是错误的?
『iptables -A INPUT -p udp --syn -s 192.168.0.20 -j DROP』?因为只有 TCP 封包才会具有 SYN 的标志, UDP 并没有 SYN 的标志啊!所以上面的指令是错误的
DNS 的要求是必须的,那么我该如何设定我的主机可以接受要求 DNS 的响应呢?
因为 DNS 的来源是 port 53 ,因此要接受来自 port 53 的封包就成为了:iptables -A INPUT -p udp --sport 53 -j ACCEPT
iptables -A INPUT -p tcp --sport 53 -j ACCEPT