天天看点

IPTABLES防火墙管理(filter)

 Linux的防火墙工作在网络层,属于典型的包过滤防火墙。

  netfilter和iptables都是指linux防火墙的,但是他们的区别在于:

1. netfilter指的是linux内核中实现包过滤的结构,称为“内核态”

2. iptables指的是管理linux防火墙的命令程序,称为“用户态”

iptables采用了表和链的分层结构,

包括4个表:filter 主要用于包过滤

           nat    主要用于地址转换

   mangle 主要用于数据整形

     raw    主要用于状态跟踪

和5个链:INPUT       入站口

 OUTPUT       出站口

 FORWARD      负责转发

 PREROUTING   路由选择前

 POSTROUTING  路由选择后

      (表中包含链,链中包含规则)

  自定义的链是不能单独使用的,必须由默认链调用才可以。

如今最常用的防火墙分为:

主机型防火墙: 主要用到了filter表的INPUT OUTPUT

网络型防火墙: 主要用到了nat表的PREROUTING FORWARD POSTROUTING

1.规则表的应用顺序:raw--mangle--nat--filter

2.规则链的应用顺序:

1)入站时 PREROUTING -- INPUT

2)出站时 OUTPUT -- POSTROUTING

3)转发时 PREROUTING -- FORWARD -- POSTROUTING

3.规则的应用顺序:匹配即停止,log策略除外,如果找不到相符的规则就按照默认策略

iptables的语法结构:

iptables (-t表名,如果不指定则默认是filter表) 选项 链 匹配条件 -j 控制类型

控制类型有:ACCEPT 允许通过

            DROP 直接丢弃数据包

            REJECT 拒接通过

            LOG 日志类型

iptables配置实例:

1.查看防火墙列表:

<a href="http://s3.51cto.com/wyfs02/M02/6F/8E/wKiom1WfiVWiRFa1AABchNaaTcg836.jpg" target="_blank"></a>

2.清空filter表中所以规则:

<a href="http://s3.51cto.com/wyfs02/M00/6F/8A/wKioL1Wfiyih_KIHAAAnIyK0gXQ154.jpg" target="_blank"></a>

3.清空filter表中所有自定义的规则链:

<a href="http://s3.51cto.com/wyfs02/M00/6F/8E/wKiom1WfiVbyBs8rAAAlGyYHpdc777.jpg" target="_blank"></a>

4.删除INPUT链中的第一条规则:

<a href="http://s3.51cto.com/wyfs02/M01/6F/8A/wKioL1WfiyiBKbAdAAAmh2UNC2k323.jpg" target="_blank"></a>

5.更改防火墙默认规则:

<a href="http://s3.51cto.com/wyfs02/M01/6F/8E/wKiom1WfiVaRPqzCAAA4f-PouMo895.jpg" target="_blank"></a>

6.允许所有tcp包进入:

<a href="http://s3.51cto.com/wyfs02/M02/6F/8A/wKioL1WfizXyvSHyAAAqNia_vPs364.jpg" target="_blank"></a>

7.允许tcp的80端口进入:

<a href="http://s3.51cto.com/wyfs02/M02/6F/8E/wKiom1WfiWPSYsGyAAA1vDFmkq0893.jpg" target="_blank"></a>

8.将各个链中的规则进行保存:

<a href="http://s3.51cto.com/wyfs02/M01/6F/8B/wKioL1WfjPWyIAkjAAE4FdoA9GA690.jpg" target="_blank"></a>

本文转自 红色的菠萝 51CTO博客,原文链接:http://blog.51cto.com/10460741/1672960

继续阅读