- 论坛徽章:
- 0
|
iptables 代码写出来。请参考。。\r\n\r\n#! /bin/bash\r\n\r\n# PORTS\r\n\r\nHTTP=\"80\"\r\nHTTPS=\"443\"\r\nFTP=\"21\"\r\nFTP_DATA=\"20\"\r\nSMTP=\"25\"\r\nPOP3=\"110\"\r\nIMAP=\"143\"\r\nSSH=\"22\"\r\nTELNET=\"23\"\r\nMYSQL=\"3306\"\r\nDNS=\"53\"\r\n\r\n\r\n\r\n# WAN_wangtong\r\n\r\nINT_wangtong_IP=\"222.*。2。*\"\r\nINT_wangtong=\"eth0\"\r\n\r\n# LAN-ETCS\r\n\r\nLAN_IP=\"172.16.200.10\"\r\nLAN_IP_RANGE=\"172.16.200.10 255.255.0.0\"\r\nLAN_IFACE=\"eth1\"\r\n\r\n# Loopback IP\r\n\r\nLO_IFACE=\"lo\"\r\nLO_IP=\"127.0.0.1\"\r\n\r\n# IPTABLES\r\n\r\nIPTABLES=\"/sbin/iptables\"\r\n\r\n###########################################################################\r\n/sbin/depmod -a\r\n\r\n# MODULES\r\n\r\n/sbin/modprobe ip_tables\r\n/sbin/modprobe ip_conntrack\r\n/sbin/modprobe iptable_filter\r\n/sbin/modprobe iptable_mangle\r\n/sbin/modprobe iptable_nat\r\n/sbin/modprobe ipt_LOG\r\n/sbin/modprobe ipt_limit\r\n/sbin/modprobe ipt_state\r\n#/sbin/modprobe ppp_mppe.o\r\n/sbin/modprobe ip_conntrack_proto_gre\r\n/sbin/modprobe ip_conntrack_pptp\r\n/sbin/modprobe ip_nat_proto_gre\r\n/sbin/modprobe ip_nat_pptp\r\n/sbin/modprobe ip_conntrack_ftp\r\n/sbin/modprobe ip_nat_ftp\r\n\r\n###########################################################################\r\n\r\n# Forward\r\n\r\necho \"1\" > /proc/sys/net/ipv4/ip_forward\r\n\r\n###########################################################################\r\n\r\n# RULES\r\n\r\n$IPTABLES -P INPUT ACCEPT\r\n$IPTABLES -P FORWARD ACCEPT\r\n$IPTABLES -P OUTPUT ACCEPT\r\n$IPTABLES -t nat -P PREROUTING ACCEPT\r\n$IPTABLES -t nat -P POSTROUTING ACCEPT\r\n$IPTABLES -t nat -P OUTPUT ACCEPT\r\n$IPTABLES -t mangle -P PREROUTING ACCEPT\r\n$IPTABLES -t mangle -P OUTPUT ACCEPT\r\n$IPTABLES -F\r\n$IPTABLES -t nat -F\r\n$IPTABLES -t mangle -F\r\n$IPTABLES -X\r\n$IPTABLES -t nat -X\r\n$IPTABLES -t mangle -X\r\n\r\n$IPTABLES -P INPUT ACCEPT\r\n$IPTABLES -P OUTPUT ACCEPT\r\n$IPTABLES -P FORWARD ACCEPT\r\n\r\n$IPTABLES -N bad_tcp_packets\r\n$IPTABLES -N allowed\r\n$IPTABLES -N icmp_packets\r\n\r\n$IPTABLES -A bad_tcp_packets -p tcp ! --syn -m state --state NEW -j LOG --log-level INFO --log-prefix \"New not syn:\"\r\n$IPTABLES -A bad_tcp_packets -p TCP ! --syn -m state --state NEW -j DROP\r\n$IPTABLES -A allowed -p TCP --syn -j ACCEPT\r\n$IPTABLES -A allowed -p TCP -m state --state ESTABLISHED,RELATED -j ACCEPT\r\n$IPTABLES -A allowed -p TCP -j DROP\r\n\r\n$IPTABLES -t nat -A POSTROUTING -o $INT_wangtong -j MASQUERADE\r\n\r\n\r\n# ICMP rules\r\n\r\n$IPTABLES -A INPUT -p icmp -j ACCEPT\r\n$IPTABLES -A icmp_packets -p ICMP -s 0/0 --icmp-type 8 -j ACCEPT\r\n$IPTABLES -A icmp_packets -p ICMP -s 0/0 --icmp-type 11 -j ACCEPT\r\n\r\n# INPUT chain\r\n\r\n$IPTABLES -A INPUT -m state --state INVALID -j DROP\r\n$IPTABLES -A INPUT -p tcp -m multiport --dports $POP3,$HTTP,$SMTP,$SSH,$FTP,$MYSQL -j ACCEPT\r\n$IPTABLES -A INPUT -p tcp -j bad_tcp_packets\r\n\r\n$IPTABLES -A INPUT -p ICMP -i $INT_wangtong -j icmp_packets\r\n\r\n$IPTABLES -A INPUT -p ALL -i $LAN_IFACE -d $LAN_IP -j ACCEPT\r\n\r\n$IPTABLES -A INPUT -p ALL -i $LO_IFACE -s $LO_IP -j ACCEPT\r\n$IPTABLES -A INPUT -p ALL -i $LO_IFACE -s $LAN_IP -j ACCEPT\r\n$IPTABLES -A INPUT -p ALL -i $LO_IFACE -s $INT_wangtong_IP -j ACCEPT\r\n\r\n$IPTABLES -A INPUT -p ALL -d $INT_wangtong_IP -m state --state ESTABLISHED,RELATED -j ACCEPT\r\n$IPTABLES -A INPUT -m limit --limit 3/minute --limit-burst 3 -j LOG --log-level INFO --log-prefix \"IPT INPUT packet died: \"\r\n\r\n\r\n#=========================dns=========================================\r\n$IPTABLES -A INPUT -s 0/0 -p udp --dport $DNS -j ACCEPT\r\n\r\n# FORWARD chain\r\n\r\n$IPTABLES -A FORWARD -p TCP -j bad_tcp_packets\r\n\r\n$IPTABLES -A FORWARD -i $LAN_IFACE -o $INT_wangtong -j ACCEPT\r\n\r\n$IPTABLES -A FORWARD -i $INT_wangtong -o $LAN_IFACE -m state --state ESTABLISHED,RELATED -j ACCEPT\r\n\r\n#=================================================================================================\r\n$IPTABLES -A INPUT -p tcp --dport 0:1023 -j DROP\r\n$IPTABLES -A INPUT -p udp --dport 0:1023 -j DROP\r\n\r\n\r\n实际的含义有些代码我也不太懂。。可能有错误的地方,还有代码顺序错误 还请指点指点。。\n\n[ 本帖最后由 jzh5188 于 2008-11-2 22:02 编辑 ] |
|