1. 程式人生 > >centos6版本iptables常用設置

centos6版本iptables常用設置

清除 禁止 limit 遠程連接 onf 常用 sysconf 文件 output

默認策略

# iptables -L
Chain INPUT (policy ACCEPT) target prot opt source destination ACCEPT all
-- anywhere anywhere state RELATED,ESTABLISHED ACCEPT icmp -- anywhere anywhere ACCEPT all -- anywhere anywhere ACCEPT tcp
-- anywhere anywhere state NEW tcp dpt:ssh REJECT all -- anywhere anywhere reject-with icmp-host-prohibited Chain FORWARD (policy ACCEPT) target prot opt source destination REJECT all -- anywhere anywhere reject-with icmp-host-prohibited Chain OUTPUT (policy ACCEPT) target prot opt source destination

################常用操作#########################

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

iptables -F


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

iptables -X


#保存iptables配置

service iptables save


#重啟iptables服務

service iptables restart


#查看iptables規則

iptables -L -n


#查看iptables規則文件

cat /etc/sysconfig/iptables



###################設置規程的流程###############

配置遠端的server的時候,一定要註意的問題:

不要先設置 DROP 規程,一定要保留ssh的端口可以鏈接,否則一旦把ssh端口DROP,遠端的server就不能鏈接了。
第一次創建規則要使用-F 清空,否者會出現很多奇怪的問題!


###############配置filter表防火墻###############

#開啟22端口 (如果改了ssh的端口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


#設定默認規則,數據包的默認處規則

iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP


###############保存iptables文件,重啟服務###############

#保存iptables規則

service iptables save


#重啟iptables服務

service iptables restart


###############配置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

centos6版本iptables常用設置