首页 > 代码库 > 基于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之外的所有对外端口,服务器可以通过任意端口向外发请求,但是外面的请求只能通过 8022端口进入到内部。

         也可以直接下载这个脚本执行即可完成基本防火墙设置:http://pan.baidu.com/s/17qiUG


本文出自 “迷你兔” 博客,请务必保留此出处http://minitoo.blog.51cto.com/4201040/1416465