Linux iptables应用实战(一)

时间:2015-05-20 12:16:34 魔新豆网

  《Linux iptables:规则原理和基础》和《Linux iptables:规则组成》介绍了iptables的基础及iptables规则的组成,本篇通过实际操作进行iptables应用场景的实际演示。

  防火墙设置策略

  防火墙的设置策略一般分为两种,一种叫“通”策略,一种叫“堵”策略:

  通策略,默认所有数据包是不允许通过的,对于允许的数据包定义规则。

  堵策略则是,默认所有数据包是全部允许通过的,对于要拒绝的数据包定义规则。

  一般来说服务器的防火墙设置都是采用第一种策略,安全性更高,本篇介绍的场景实战也是采用“通”策略。

  场景实战定义

  假定本篇要实现以下场景定义的规则:

  1、对所有的地址开放本机的80、22、10-21端口访问;

  2、对所有的地址开放ICMP协议的数据包访问;

  3、其他未被允许的端口禁止访问。

  iptables规则实现

  实现以上定义的命令操作:

  先清空所有默认规则

  

  复制代码

代码如下:

  
iptables -F


开放端口

  

  复制代码

代码如下:

  
iptables -I INPUT -p tcp --dport 80 -j ACCEPT
iptables -I INPUT -p tcp --dport 22 -j ACCEPT


开放ICMP

  

  复制代码

代码如下:

  
iptables -I INPUT -p icmp -j ACCEPT


禁止其他端口

  

  复制代码

代码如下:

  
iptables -A INPUT -j REJECT


查看规则

  

  复制代码

代码如下:

  
iptables -L -n


操作结果:

  Linux iptables应用实战(一)

  iptables规则定义要点

  在以上的操作过程中有几个点需要注意:

  1、一定要允许22端口访问,否则在输入iptables -A INPUT -j REJECT时,SSH会立即断开,无法再进行远程操作;

  2、iptables -A INPUT -j REJECT一定要使用 A 命令追加到规则末尾,不能使用 I 命令插入,使拒绝操作在最后生效;

  3、允许连续范围端口可以使用 起始:结束端口 来指定。

本文标签: