iptables知识理论的学习与实践举例

字体大小: 中小 标准 ->行高大小: 标准

iptables是什么?不解释,直接进入正题。

iptables的命令使用结构是这样的 iptables [-t table] command [match] [target] 下面一项一项来介绍

[-t table]部分

[-t table]选项允许使用标准表之外的任何表。表是包含仅处理特定类型信息包的规则和链的信息包过滤表。
有三个可用的表选项:filter、nat和mangle。该选项不是必需的,如果未指定,则filter作为缺省表。

filter 用于一般信息包的过滤,包含INPUT、 OUTPUT和FORWARD链。

INPUT:代表匹配目的 IP 是本机的数据包

OUTPUT:代表匹配源ip是本机的数据包

FORWARD:代表匹配穿过本机的数据包

nat 用于要转发的信息包,包含PREROUTING、OUTPUT和POSTROUTING链。

PREROUTING: 修改目的地址(DNAT)
POSTROUTING:修改源地址 (SNAT)

mangle 这个表不是很理解,反正我没有用过,嘻嘻

#############################################################################

command部分

command部分是iptables命令最重要的部分。它告诉iptables命令要做什么,例如插入规则、
将规则添加到链的末尾或删除规则。

-A <链名>
APPEND,追加一条规则(放到最后)

例如:
iptables -t filter -A INPUT -j DROP

在 filter 表的 INPUT 链里追加一条规则(作为最后一条规则),将所有目的IP为本机的包全部丢弃。


在没有开启防火墙之前,我可以ping192.168.254.153这台机子,防火墙开后,ping不通了,而且我的ssh也断开了,因为防火墙是将所有的包都丢弃了,自然包括ssh链接的包。由于无法再使用ssh链接,所以我只能到服务器上清空防火墙,清空后,就可以ping了


 

 

INPUT:匹配目的IP 是本机的数据包

FORWARD 穿过本机的数据包,

PREROUTING用于修改目的地址(DNAT)

POSTROUTING,用于修改源地址(SNAT)

为了能保证我测试iptables用法时ssh不会断开,所以在这里我首先加上一条iptables规则

我还是开启将所有目的IP为本机的包丢弃

然后我追加一条策略



更多详情请继续阅读第2页的内容:http://www.linuxidc.com/Linux/2013-10/91444p2.htm

推荐阅读:

Linux防火墙iptables详细教程 http://www.linuxidc.com/Linux/2013-07/87045.htm

iptables+L7+Squid实现完善的软件防火墙 http://www.linuxidc.com/Linux/2013-05/84802.htm

iptables的备份、恢复及防火墙脚本的基本使用 http://www.linuxidc.com/Linux/2013-08/88535.htm

Linux下防火墙iptables用法规则详解 http://www.linuxidc.com/Linux/2012-08/67952.htm

iptables的用法小结 http://www.linuxidc.com/Linux/2013-10/90930.htm

此文章由 http://www.ositren.com 收集整理 ,地址为: http://www.ositren.com/htmls/62896.html