Linux下iptables安全配置

crxis發表於2018-06-25

Linux下配置IPTables,只開放特定埠,禁用其他網路。

*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
#ssh埠
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
-A OUTPUT -p tcp -m tcp --sport 22 -j ACCEPT
#Nginx/Apache埠
-A INPUT -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
-A OUTPUT -p tcp --sport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
#迴環網路卡配置,讓php-fpm正常執行
-A INPUT -i lo -j ACCEPT
#允許本機訪問外網
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
COMMIT

:INPUT ACCEPT [0:0]
# 該規則表示INPUT表預設策略是ACCEPT
:FORWARD ACCEPT [0:0]
# 該規則表示FORWARD表預設策略是ACCEPT
:OUTPUT ACCEPT [0:0]
# 該規則表示OUTPUT表預設策略是ACCEPT
-A INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT
# 意思是允許進入的資料包只能是剛剛我發出去的資料包的回應,ESTABLISHED:已建立的連結狀態。RELATED:該資料包與本機發出的資料包有關。
-A INPUT -j REJECT –reject-with icmp-host-prohibited
-A FORWARD -j REJECT –reject-with icmp-host-prohibited
# 這兩條的意思是在INPUT表和FORWARD表中拒絕所有其他不符合上述任何一條規則的資料包。並且傳送一條host prohibited的訊息給被拒絕的主機。

 

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

清空:iptables -F

檢視:iptables -L -n

指定IP

iptables -I INPUT -s ip/32 -p tcp –dport 8000 -j ACCEPT
iptables -A INPUT -s ip -j ACCEPT
iptables -A INPUT -j DROP

相關文章