iptables:使用 iptables 设定一些安全防护功能 (2)


  作者: kenduest (小州)
  下面是我设定 iptables 的一些简单规则,可以参考一下。(与 NAT 无关喔)
  
  # 挂入相关 module
  modprobe ip_tables
  modprobe ip_conntrack
  modprobe ip_conntrack_ftp
  modprobe ip_conntrack_irc
  
  # 重设
  iptables -F
  iptables -X
  iptables -F -t nat
  iptables -X -t mangle
  
  # 把 FORWARD 关闭
  iptables -P FORWARD DROP
  
  # 这是打开让自己网域可以方便连结,也就是该网域不设防
  
  iptables -A INPUT -p all -s ip_net/netmask -j ACCEPT
  
  # 允许相关连结服务
  
  iptables -A INPUT -i eth0 -p tcp --dport 20 -j ACCEPT
  iptables -A INPUT -i eth0 -p tcp --dport 21 -j ACCEPT
  iptables -A INPUT -i eth0 -p tcp --dport 22 -j ACCEPT
  iptables -A INPUT -i eth0 -p tcp --dport 23 -j ACCEPT
  iptables -A INPUT -i eth0 -p tcp --dport 25 -j ACCEPT
  iptables -A INPUT -i eth0 -p tcp --dport 53 -j ACCEPT
  iptables -A INPUT -i eth0 -p udp --dport 53 -j ACCEPT
  iptables -A INPUT -i eth0 -p tcp --dport 110 -j ACCEPT
  iptables -A INPUT -i eth0 -p tcp --dport 113 -j ACCEPT
  
  iptables -A INPUT -i eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
  iptables -A INPUT -i eth0 -m state --state NEW,INVALID -j DROP
  
  上面是打开允许 port 20、21、22、23、25、53、110、113 等服务才能够
  被外面所联机。
  
  port 20、21 : ftp 使用的。
  port 22 : ssh 联机
  port 23 : telnet 联机。方便使用,其实不开放比较。
  port 25 : sendmail 使用。让信件可以寄进来。
  port 53 : dns 使用。dns 需要打开 udp 使用。
  port 110 : pop3 使用
  port 113 : auth 身份确认。我打开是让一些使用该 113 确认身份的主机
  不至于反查时会卡住很久。
  
  最后一行是对于主动联机或者是不合法联机,一律通通拒绝掉。
  
  这个 script 内容,很适用只允许外面连结特定的 port 服务,剩下的其余
  port 就拒绝外面主动建立的联机。比方使用 Modem 拨接,只希望里面可以
  正常联机出去,外面都无法联机进来这个需求。(ps: modem 是使用 ppp0
  等这些接口,上面的 eth0 要改成 ppp0 )
  
  
Tags:  iptables端口映射 iptablesnat linuxiptables iptables

延伸阅读

最新评论

发表评论