1. 程式人生 > >CentOS_6.5配置iptables防火牆策略

CentOS_6.5配置iptables防火牆策略

###############配置filter表防火牆###############

#清除預設表filter中的所有規則鏈的規則
iptables -F

#清除預設表filter中使用者自定鏈中的規則
iptables -X

#儲存iptables配置
service iptables save

#重啟iptables服務
service iptables restart

#檢視iptables規則
iptables -L -n

#檢視iptables規則檔案
cat /etc/sysconfig/iptables

#設定預設規則
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT

iptables -P FORWARD DROP

#開啟22埠
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
#如果OUTPUT設定成DROP需要新增 iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT
#關閉22埠 iptables -D INPUT -p tcp --dport 22 -j ACCEPT

#開啟常用埠
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 3306 -j ACCEPT
#iptables -A OUTPUT -p tcp --sport 80 -j ACCEPT

#iptables -A OUTPUT -p tcp --sport 3306 -j ACCEPT
#iptables -A INPUT -p tcp --dport 20 -j ACCEPT
#iptables -A INPUT -p tcp --dport 21 -j ACCEPT
#iptables -A INPUT -p tcp --dport 10000 -j ACCEPT
#iptables -A INPUT -p tcp --dport 25 -j ACCEPT
#iptables -A INPUT -p tcp --dport 110 -j ACCEPT
#iptables -A INPUT -p udp --dport 53 -j ACCEPT


#允許ping
iptables -A INPUT -p icmp -j ACCEPT
#如果OUTPUT設定成DROP需要新增 iptables -A OUTPUT -p icmp -j ACCEPT

#允許loopback
iptables -A INPUT -i lo -p all -j ACCEPT
#如果OUTPUT設定成DROP需要新增 iptables -A OUTPUT -o lo -p all -j ACCEPT

#遮蔽指定ip
#iptables -A INPUT -p tcp -s 192.168.10.1 -j DROP

#減少不安全的埠連線
#iptables -A OUTPUT -p tcp --sport 31337 -j DROP
#iptables -A OUTPUT -p tcp --dport 31337 -j DROP

#允許某個IP遠端連線
#iptables -A INPUT -s 192.168.10.1 -p tcp --dport 22 -j ACCEPT
#允許某個網段的IP遠端連線
iptables -A INPUT -s 192.168.10.0/24 -p tcp --dport 22 -j ACCEPT

#允許指定網段通過、指定網口通過SSH連線本機
#iptables -A INPUT -i eth0 -p tcp -s 192.168.10.0/24 --dport 22 -m state --state NEW,ESTABLESHED -j ACCEPT
#iptables -A OUTPUT -o eth0 -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
#iptables -A INPUT -i eth0 -p tcp -s 192.168.10.0/24 --dport 22 -m state --state ESTABLESHED -j ACCEPT
#iptables -A OUTPUT -o eth0 -p tcp --sport 22 -m state --state NEW,ESTABLISHED -j ACCEPT

#開啟轉發功能
#iptables -A FORWARD -i eth0 -o eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT
#iptables -A FORWARD -i eth1 -o eh0 -j ACCEPT

#丟棄壞的TCP包
#iptables -A FORWARD -p TCP ! --syn -m state --state NEW -j DROP

#處理IP碎片數量,防止攻擊,允許每秒100個
#iptables -A FORWARD -f -m limit --limit 100/s --limit-burst 100 -j ACCEPT

#設定ICMP包過濾,允許每秒1個包,限制觸發條件是10個包
#iptables -A FORWARD -p icmp -m limit --limit 1/s --limit-burst 10 -j ACCEPT

#丟棄非法連線
iptables -A INPUT -m state --state INVALID -j DROP
iptables -A OUTPUT -m state --state INVALID -j DROP
iptables -A FORWARD -m state --state INVALID -j DROP

#允許所有已經建立的和相關的連線
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT



###############配置NAT表防火牆###############

#檢視NAT表規則
iptables -t nat -L

#清除NAT規則
iptables -F -t nat
iptables -X -t nat
iptables -Z -t nat

#防止外網用內網IP欺騙
#iptables -t nat -A PREROUTING -i eth0 -s 10.0.0.0/8 -j DROP
#iptables -t nat -A PREROUTING -i eth0 -s 172.16.0.0/12 -j DROP
#iptables -t nat -A PREROUTING -i eth0 -s 192.168.0.0/16 -j DROP

#禁止與某個IP的所有連線
#iptables -t nat -A PREROUTING -d 192.168.10.1 -j DROP

#禁用80埠
#iptables -t nat -A PREROUTING -p tcp --dport 80 -j DROP

#禁用某個IP的80埠
#iptables -t nat -A PREROUTING -p tcp --dport 21 -d 192.168.10.1 -j DROP



###############儲存iptables檔案,重啟服務###############

#儲存iptables規則
service iptables save

#重啟iptables服務
service iptables restart