服務器的安全性的重要性,可以關系到負責人的飯碗,而防火牆對於服務器的安全性相當重要,但是防火牆的設置需要小心,尤其是初學者,很容易弄錯,一旦弄錯,很容易連不上網絡,要自己去機房重新配置防火牆。如果不熟悉配置,一個是怕權限太嚴格,容易導致自己都不能訪問,上面的程序也很可能不能正常訪問網絡,另一個是怕權限設置的太松,安全性不夠,容易被侵入。
所以初學者很需要一個簡單的防火牆模板,經過簡單修改,就能滿足一般的安全要求,不用走多個彎路。
於是我參考鳥哥的私房菜,經過修改,寫出以下防火牆的模板,幫助初學者入門,鞏固防火牆。
腳本內容如下,保存腳本內容為iptables.sh,然后直接執行,還要加入/etc/rc.local下,隨機啟動執行防火牆配置(以上工作前提是防火牆服務有打開)。
IF="eth0"
#清除規則
/sbin/iptables -F
/sbin/iptables -X
/sbin/iptables -Z
# 預定義策略
/sbin/iptables -A INPUT -s 127.0.0.1 -j ACCEPT # 允許回環接口可以被訪問
/sbin/iptables -P INPUT DROP # 默認是拒絕訪問
/sbin/iptables -P OUTPUT ACCEPT # 允許本機訪問其他機器,無限制
/sbin/iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
/sbin/iptables -A INPUT -p icmp -j ACCEPT # 允許ping
#允許的本機服務
/sbin/iptables -A INPUT -p TCP -i $IF --dport 22 -j ACCEPT # SSH
# /sbin/iptables -A INPUT -p TCP -i $IF --dport 3306 -j ACCEPT # mysql
# /sbin/iptables -A INPUT -p TCP -i $IF --dport 80 -j ACCEPT # web
# 黑名單
#/sbin/iptables -A INPUT -s 1.1.1.0/24 -j DROP
#/sbin/iptables -A INPUT -s 1.1.1.0 -j DROP
# 信任的網絡和IP
/sbin/iptables -A INPUT -s 1.1.1.1/24 -j ACCEPT # 信任的網絡
/sbin/iptables -A INPUT -s 1.1.1.1 -j ACCEPT # 信任的ip
腳本簡短,使用者,只要根據自己的情況,修改信任的網絡和IP,還有允許的本機服務,本腳本可以滿足一般的安全要求。
更多內容參考:http://vbird.dic.ksu.edu.tw/linux_server/0250simple_firewall/0250simple_firewall-centos4.php