| 关键词: iptables state LOG INPUT 192.168 OUTPUT ACCEPT DROP options eth0 |
说明: 局域网网关:192.168.1.1 eth0 192.168.1.110 (intel 10、100M自适应网卡,仅局域**定主机192.168.1.11可访问) eth1 192.168.1.100 (intel 千兆网卡,仅供互联网用户访问,即来自192.168.1.1的访问) centos 5.5主机运行vsftpd、sshd服务(tcp 2222供互联网用户访问,tcp 22仅供局域网192.168.1.11访问),同时要能在centos主机上从eth0上实现yum install功能。 #############以下部分为iptables的脚本########################## IPTABLES=/sbin/iptables MODPROBE=/sbin/modprobe #####flush existing rules and chain policy setting to DROP######## echo "[+]Flushing existing iptables rules……" $IPTABLES -F $IPTABLES -F -t nat $IPTABLES -X $IPTABLES -P INPUT DROP $IPTABLES -P OUTPUT DROP $IPTABLES -P FORWARD DROP #####load ftp connection modules### $MODPROBE ip_conntrack $MODPROBE ip_nat_ftp $MODPROBE ip_conntrack_ftp ########INPUT chain############ echo "[+]Seting up INPUT chain……" ####state tracking rules $IPTABLES -A INPUT -m state --state INVALID -j LOG --log-prefix "DROP INVALID" --log-ip-options --log-tcp-options $IPTABLES -A INPUT -m state --state INVALID -j DROP $IPTABLES -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT ####anti-spoofing rules $IPTABLES -A INPUT -i eth0 -s ! 192.168.1.11 -j LOG --log-prefix "SPOOFED PKT" $IPTABLES -A INPUT -i eth0 -s ! 192.168.1.11 -j DROP $IPTABLES -A INPUT -i eth1 -s ! 192.168.1.1 -j LOG --log-prefix "SPOOFED PKT" $IPTABLES -A INPUT -i eth1 -s ! 192.168.1.1 -j DROP ####ACCPET rules $IPTABLES -A INPUT -i eth0 -p tcp -s 192.168.1.11 -m multiport --dport 20,22,2121 --syn -m state --state NEW -j ACCEPT $IPTABLES -A INPUT -i eth1 -p tcp -s 192.168.1.1 -m multiport --dport 20,2222,2121 --syn -m state --state NEW -j ACCEPT $IPTABLES -A INPUT -p icmp --icmp-type echo-request -j ACCEPT ######default INPUT LOG rule#### $IPTABLES -A INPUT -i ! lo -j LOG --log-prefix "drop" --log-ip-options --log-tcp-options ######OUTPUT chain####### echo "[+]Seting up OUTPUT chain……" ####state tracking rules $IPTABLES -A OUTPUT -m state --state INVALID -j LOG --log-prefix "DROP INVALID" --log-ip-options --log-tcp-options $IPTABLES -A OUTPUT -m state --state INVALID -j DROP $IPTABLES -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT ####ACCEPT rules for allowing connectios out $IPTABLES -A OUTPUT -o eth0 -p tcp --dport 21 --syn -m state --state NEW -j ACCEPT $IPTABLES -A OUTPUT -o eth0 -p udp --dport 53 -m state --state NEW -j ACCEPT $IPTABLES -A OUTPUT -o eth0 -p tcp --dport 80 --syn -m state --state NEW -j ACCEPT $IPTABLES -A OUTPUT -o eth0 -p tcp --dport 443 --syn -m state --state NEW -j ACCEPT $IPTABLES -A OUTPUT -p icmp --icmp-type echo-request -j ACCEPT ####default OUTPUT LOG rule $IPTABLES -A OUTPUT -o ! lo -j LOG --log-prefix "DROP" --log-ip-options --log-tcp-options 本文出自 “追梦人” 博客,请务必保留此出处http://wuhaoshu.blog.51cto.com/845270/488841 |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|