首页 > 代码库 > 基于linux的web服务器的iptables防火墙安全优化设置
基于linux的web服务器的iptables防火墙安全优化设置
安全规划:开启 80 22 端口并 打开回路(回环地址 127.0.0.1)
#iptables –P INPUT ACCEPT
#iptables –P OUTPUT ACCEPT
#iptables –P FORWARD ACCEPT
以上几步操作是为了在清除所有规则之前,通过所有请求,如果远程操作的话,防止远程链接断开。
接下来清除服务器内置规则和用户自定义规则:
#iptables –F
#iptables -X
打开ssh端口,用于远程链接用:
#iptables –A INPUT –p tcp –-dport 22 –j ACCEPT
#iptables -A OUTPUT -p tcp --sport 22 -m state --state ESTABLISHED,RELATED -jACCEPT 允许已建立的链接通过22端口向外发送数据包
然后关闭INPUT 和 FORWARD请求:
#iptables –P INPUT DROP
#iptables –P FORWARD DROP
接下来设置环路,使得 ping127.0.0.1这样的包额可以通过。后面php会使用这个规则,
Nginx中设置php-fpm访问地址:http://127.0.0.1:9000 即用到这个规则
#iptables –A INPUT –i lo –j ACCEPT
接下来设置允许其他机器 ping本机,也可以不允许,不允许会更加安全。
#iptables –A INPUT –p icmp –j ACCEPT
接下来开放web服务端口 80
#iptables –A INPUT –p tcp –dport 80 –j ACCEPT
#iptables -A OUTPUT -p tcp --sport 80 -m state --state ESTABLISHED,RELATED -jACCEPT 允许已建立的链接通过80端口向外发送数据包
接下来开放 53端口 用于DNS解析
#iptables -A INPUT -p udp --dport 53 -j ACCEPT
#iptables -A OUTPUT -p udp --sport 53 -m state --state ESTABLISHED,RELATED -jACCEPT
最后保存设置:
#service iptables save
#service iptables restart
至此已经完成关闭除2280之外的所有对外端口,服务器可以通过任意端口向外发请求,但是外面的请求只能通过 80和22端口进入到内部。
也可以直接下载这个脚本执行即可完成基本防火墙设置:http://pan.baidu.com/s/17qiUG
本文出自 “迷你兔” 博客,请务必保留此出处http://minitoo.blog.51cto.com/4201040/1416465