一个适合做Web服务器的iptbables配置

2431阅读 0评论2012-07-14 
分类:LINUX


点击(此处)折叠或打开

  1. #!/bin/bash
  2. #--------------------------------------------------------------------------
  3. #解释:
  4. #1、设置INPUT,FORWARD,OUTPUT链默认target为DROP,也就是外部与服务器不能通信。
  5. #2、设置当连接状态为RELATED和ESTABLISHED时,允许数据进入服务器。
  6. #3、设置外部客户端连接服务器端口80,22,21,873。
  7. #4、允许内部数据循回。
  8. #5、允许外部ping服务器 。
  9. #6、设置状态为RELATED和ESTABLISHED的数据可以从服务器发送到外部。
  10. #7、允许服务器使用外部dns解析域名。
  11. #8、设置服务器连接外部服务器端口80。
  12. #9、允许服务器发送邮件。
  13. #10、允许从服务器ping外部。
  14. #--------------------------------------------------------------------------
  15. IPT="/sbin/iptables"
  16. $IPT --delete-chain
  17. $IPT --flush
  18. $IPT -P INPUT DROP #1
  19. $IPT -P FORWARD DROP #1
  20. $IPT -P OUTPUT DROP #1
  21. $IPT -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT #2
  22. $IPT -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT #3
  23. $IPT -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT #3
  24. $IPT -A INPUT -p tcp -m tcp --dport 21 -j ACCEPT #3
  25. $IPT -A INPUT -p tcp -m tcp --dport 873 -j ACCEPT #3
  26. $IPT -A INPUT -i lo -j ACCEPT #4
  27. $IPT -A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT #5
  28. $IPT -A INPUT -p icmp -m icmp --icmp-type 11 -j ACCEPT #5
  29. $IPT -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT #6
  30. $IPT -A OUTPUT -p udp -m udp --dport 53 -j ACCEPT #7
  31. $IPT -A OUTPUT -o lo -j ACCEPT #4
  32. $IPT -A OUTPUT -p tcp -m tcp --dport 80 -j ACCEPT #8
  33. $IPT -A OUTPUT -p tcp -m tcp --dport 25 -j ACCEPT #9
  34. $IPT -A OUTPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT #10
  35. $IPT -A OUTPUT -p icmp -m icmp --icmp-type 11 -j ACCEPT #10
  36. service iptables save
  37. service iptables restart


上一篇:chcon---selinux控制设置
下一篇:Linux系统下一块网卡配置多个ip地址方法