服务器的安全性的重要性,可以关系到负责人的饭碗,而防火墙对于服务器的安全性相当重要,但是防火墙的设置需要小心,尤其是初学者,很容易弄错,一旦弄错,很容易连不上网络,要自己去机房重新配置防火墙。如果不熟悉配置,一个是怕权限太严格,容易导致自己都不能访问,上面的程序也很可能不能正常访问网络,另一个是怕权限设置的太松,安全性不够,容易被侵入。
所以初学者很需要一个简单的防火墙模板,经过简单修改,就能满足一般的安全要求,不用走多个弯路。
于是我参考鸟哥的私房菜,经过修改,写出以下防火墙的模板,帮助初学者入门,巩固防火墙。
脚本内容如下,保存脚本内容为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,还有允许的本机服务,本脚本可以满足一般的安全要求。
更多内容参考: