手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>网站运营>建站经验>列表

菜鸟学堂之Iptables基础

来源:互联网 作者:west263.com 时间:2008-04-16
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!

  $IPTABLES -A FORWARD -p ICMP -i $INET_IFACE -o $LAN_IFACE -d $LAN_HTTP1_IP -j icmp_packets
  $IPTABLES -A FORWARD -p ICMP -i $INET_IFACE -o $LAN_IFACE -d $LAN_HTTP2_IP -j icmp_packets
  $IPTABLES -A FORWARD -p ICMP -i $INET_IFACE -o $LAN_IFACE -d $LAN_HTTP3_IP -j icmp_packets
  $IPTABLES -A FORWARD -p ICMP -i $INET_IFACE -o $LAN_IFACE -d $LAN_HTTP4_IP -j icmp_packets
  $IPTABLES -A FORWARD -p ICMP -i $INET_IFACE -o $LAN_IFACE -d $LAN_HTTP5_IP -j icmp_packets
  $IPTABLES -A FORWARD -p ICMP -i $INET_IFACE -o $LAN_IFACE -d $LAN_HTTP6_IP -j icmp_packets
  
  # 允许来自 WAN 的 HTTP、HTTPS 封包,递送到校内任何的 WEB 服务器
  $IPTABLES -A FORWARD -p TCP -i $INET_IFACE -o $LAN_IFACE -d $LAN_HTTP1_IP -m multiport --dport $HTTP,$HTTPS -j allowed
  $IPTABLES -A FORWARD -p TCP -i $INET_IFACE -o $LAN_IFACE -d $LAN_HTTP2_IP -m multiport --dport $HTTP,$HTTPS -j allowed
  $IPTABLES -A FORWARD -p TCP -i $INET_IFACE -o $LAN_IFACE -d $LAN_HTTP3_IP -m multiport --dport $HTTP,$HTTPS -j allowed
  $IPTABLES -A FORWARD -p TCP -i $INET_IFACE -o $LAN_IFACE -d $LAN_HTTP4_IP -m multiport --dport $HTTP,$HTTPS -j allowed
  $IPTABLES -A FORWARD -p TCP -i $INET_IFACE -o $LAN_IFACE -d $LAN_HTTP5_IP -m multiport --dport $HTTP,$HTTPS -j allowed
  $IPTABLES -A FORWARD -p TCP -i $INET_IFACE -o $LAN_IFACE -d $LAN_HTTP6_IP -m multiport --dport $HTTP,$HTTPS -j allowed
  
  # 允许来自 WAN 的 FTP 封包,递送到校内任何的 FTP 服务器
  $IPTABLES -A FORWARD -p TCP -i $INET_IFACE -o $LAN_IFACE -d $LAN_FTP1_IP -m multiport --dport $FTP,$FTP_DATA -j allowed
  $IPTABLES -A FORWARD -p TCP -i $INET_IFACE -o $LAN_IFACE -d $LAN_FTP2_IP -m multiport --dport $FTP,$FTP_DATA -j allowed
  $IPTABLES -A FORWARD -p TCP -i $INET_IFACE -o $LAN_IFACE -d $LAN_FTP3_IP -m multiport --dport $FTP,$FTP_DATA -j allowed
  
  # 允许来自 WAN 的 SMTP、POP3、IMAP 封包,递送到校内任何的 MAIL 服务器
  $IPTABLES -A FORWARD -p TCP -i $INET_IFACE -o $LAN_IFACE -d $LAN_MAIL1_IP -m multiport --dport $SMTP,$POP3,$IMAP -j allowed
  $IPTABLES -A FORWARD -p TCP -i $INET_IFACE -o $LAN_IFACE -d $LAN_MAIL2_IP -m multiport --dport $SMTP,$POP3,$IMAP -j allowed
  
  # 允许来自 WAN 的 SSH、TELNET、WEBMIN、WAM 封包,递送到校内任何的 LINUX 服务器
  $IPTABLES -A FORWARD -p TCP -i $INET_IFACE -o $LAN_IFACE -d $LAN_WAM1_IP -m multiport --dport $SSH,$TELNET,$WEBMIN,$WAM -j allowed
  $IPTABLES -A FORWARD -p TCP -i $INET_IFACE -o $LAN_IFACE -d $LAN_WAM2_IP -m multiport --dport $SSH,$TELNET,$WEBMIN,$WAM -j allowed
  
  # 允许来自 WAN 的 PCanywhere 封包,递送到校内任何的 PCanywhere 服务器
  $IPTABLES -A FORWARD -p TCP -i $INET_IFACE -o $LAN_IFACE -d $LAN_PCAW1_IP --dport $PCAW_TCP -j allowed
  $IPTABLES -A FORWARD -p UDP -i $INET_IFACE -o $LAN_IFACE -d $LAN_PCAW1_IP --dport $PCAW_UDP -j ACCEPT
  $IPTABLES -A FORWARD -p TCP -i $INET_IFACE -o $LAN_IFACE -d $LAN_PCAW2_IP --dport $PCAW_TCP -j allowed
  $IPTABLES -A FORWARD -p UDP -i $INET_IFACE -o $LAN_IFACE -d $LAN_PCAW2_IP --dport $PCAW_UDP -j ACCEPT
  
  # 允许来自 WAN 的 DNS 封包,递送到校内的 DNS 服务器
  $IPTABLES -A FORWARD -p TCP -i $INET_IFACE -o $LAN_IFACE -d $LAN_DNS_IP --dport $DNS -j allowed
  $IPTABLES -A FORWARD -p UDP -i $INET_IFACE -o $LAN_IFACE -d $LAN_DNS_IP --dport $DNS -j ACCEPT
  
  # 限制过滤规则的比对频率为每分钟平均流量三个封包(超过上限的封包将暂停比对),并将瞬间流量设定为一次最多处理三个封包(超过上限的封包将丢弃不予处理),这类封包通常是骇客用来进行阻断式攻击 
  $IPTABLES -A FORWARD -m limit --limit 3/minute --limit-burst 3 -j LOG --log-level DEBUG --log-prefix "IPT FORWARD packet died: "
  
  #
  # 4.1.6 OUTPUT chain(过滤从防火墙送出的封包)
  #
  #
  # 从防火墙送出的 TCP 封包必须先进行 bad_tcp_packets 过滤
  $IPTABLES -A OUTPUT -p TCP -j bad_tcp_packets
  
  # 从防火墙网卡送出的任何封包,通通放行
  $IPTABLES -A OUTPUT -p ALL -s $LO_IP -j ACCEPT
  $IPTABLES -A OUTPUT -p ALL -s $LAN_IP -j ACCEPT
  $IPTABLES -A OUTPUT -p ALL -s $INET_IP -j ACCEPT
  
  # 限制过滤规则的比对频率为每分钟平均流量三个封包(超过上限的封包将暂停比对),并将瞬间流量设定为一次最多处理三个封包(超过上限的封包将丢弃不予处理),这类封包通常是骇客用来进行阻断式攻击 
  $IPTABLES -A OUTPUT -m limit --limit 3/minute --limit-burst 3 -j LOG --log-level DEBUG --log-prefix "IPT OUTPUT packet died: "
  
  ######
  # 4.2 nat table
  #
  #
  # 4.2.1 Set policies
  #
  #
  # 4.2.2 Create user specified chains
  #
  #
  # 4.2.3 Create content in user specified chains
  #
  #
  # 4.2.4 PREROUTING chain(定义目的地地址转译)
  #
  # 从 WAN 要到校内服务器的封包,在封包过滤前先转译目的地 IP 为 NAT IP
  $IPTABLES -t nat -A PREROUTING -d $HTTP1_IP -j DNAT --to-destination $LAN_HTTP1_IP

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!