Iptables個性設置拒絕服務器訪問外網


服務器如果做到絕對安全,沒有人給你保證,但是做到相對安全的就是把服務器禁止上網,但有的時候做為linux的運維人員來說,不上網又需要做其它工作,因此下面的腳本就有自己的用武之地了。

禁止本機訪問外網,開放訪問部分IP或者網站的功能。

#!/bin/bash

iptables -F

iptables -X

#shell執行

iptables -P INPUT DROP

iptables -P OUTPUT DROP

iptables -P FORWARD DROP

#開啟SSH 22端口

iptables -A INPUT -p tcp –dport 22 -j ACCEPT

iptables -A OUTPUT -p tcp –sport 22 -j ACCEPT

#ngnix服務器默認端口,網站可訪問

iptables -A INPUT -p tcp –dport 80 -j ACCEPT

iptables -A OUTPUT -p tcp –sport 80 -j ACCEPT

#允許ping

iptables -A INPUT -p icmp -j ACCEPT

iptables -A OUTPUT -p icmp -j ACCEPT

#允許loopback,不然會導致DNS無法正常關閉等問題

iptables -A INPUT -i lo -p all -j ACCEPT

iptables -A OUTPUT -o lo -p all -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 ESTABLISHED,RELATED -j ACCEPT

iptables -A OUTPUT -m state –state NEW,ESTABLISHED,RELATED -p tcp -d www.github.com -j ACCEPT

#重啟使生效

/etc/rc.d/init.d/iptables save

service iptables restart

https://www.jianshu.com/p/a1d65de8d697


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM