iptables从入门到应用的实例分析

发布时间:2021-11-03 16:43:24 作者:柒染
来源:亿速云 阅读:175

iptables从入门到应用的实例分析,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

iptables从入门到应用

 一、简介

 1.1、是什么?

    iptables是隔离主机以及网络的工具,通过自己设定的规则以及处理动作对数据报文进行检测以及处理。 

 1.2、发展史

    防火墙的发展史就是从墙到链再到表的过程,也即是从简单到复杂的过程。为什么规则越来越多,因为互联网越来越不安全了,所有防火墙的的规则也越来越复杂。防火的工具变化如下:

    ipfirewall(墙)-->ipchains(链条)--iptables(表)

    2.0版内核中,包过滤机制是ipfw,管理工具是ipfwadm;

    2.2 版内核中,包过滤机制ipchain,管理工具是ipchains;

    2.4版及以后的内核中,包过滤机制是netfilter,管理工具iptables。

 二、原理

iptables [-t table] {-A|-C|-D} chain rule-specification

  iptables [-t table] -I chain [rulenum] rule-specification

  iptables [-t table] -R chain rulenum rule-specification

  iptables [-t table] -D chain rulenum

  iptables [-t table] -S [chain [rulenum]]

  iptables [-t table] {-F|-L|-Z} [chain [rulenum]] [options...]

  iptables [-t table] -N chain

  iptables [-t table] -X [chain]

  iptables [-t table] -P chain target

  iptables [-t table] -E old-chain-name new-chain-name

    rule-specification = [matches...] [target]

   match = -m matchname [per-match-options]

   target = -j targetname [per-target-options]

 3.4、语法结构解析

  语法结构解析如下。

    -N, --new-chain chain:新建一个自定义的规则链;

    -X, --delete-chain [chain]:删除用户自定义的引用计数为0的空链;

    -F, --flush [chain]:清空指定的规则链上的规则;

    -E, --rename-chain old-chain new-chain:重命名链;

    -Z, --zero [chain [rulenum]]:置零计数器;

      注意:每个规则都有两个计数器

      packets:被本规则所匹配到的所有报文的个数;

      bytes:被本规则所匹配到的所有报文的大小之和;

    -P, --policy chain target 制定链表的策略(ACCEPT|DROP|REJECT)

    -A, --append chain rule-specification:追加新规则于指定链的尾部; 

    -I, --insert chain [rulenum] rule-specification:插入新规则于指定链的指定位置,默认为首部;

    -R, --replace chain rulenum rule-specification:替换指定的规则为新的规则;

    -D, --delete chain rulenum:根据规则编号删除规则;

    -D, --delete chain rule-specification:根据规则本身删除规则;

    规则显示      

1

2

3

4

5

6

7

     -L, --list [chain]:列出规则;

     -v, --verbose:详细信息; 

     -vv 更详细的信息

     -n, --numeric:数字格式显示主机地址和端口号;

     -x, --exact:显示计数器的精确值,而非圆整后的数据;

     --line-numbers:列出规则时,显示其在链上的相应的编号;

     -S, --list-rules [chain]:显示指定链的所有规则;

 3.4.3、链

    五链的功能如图所示。   

iptables从入门到应用的实例分析

 3.4.4、条件匹配

    条件匹配分为基本匹配和扩展匹配,扩展匹配又分为显示匹配和隐式匹配。

    基本匹配的特点是:无需加载扩展模块,匹配规则生效;扩展匹配的特点是:需要加载扩展模块,匹配规则方可生效。

    隐式匹配的特点:使用-p选项指明协议时,无需再同时使用-m选项指明扩展模块以及不需要手动加载扩展模块;  

    显示匹配的特点:必须使用-m选项指明要调用的扩展模块的扩展机制以及需要手动加载扩展模块。

    基本匹配的使用选项及功能

1

2

3

4

5

6

-p 指定规则协议,tcp udp icmp all

-s 指定数据包的源地址,ip hostname

-d 指定目的地址

-i 输入接口

-o 输出接口                                              

! 取反

    隐式匹配的使用选项及功能 

-p tcp

  --sport 匹配报文源端口;可以给出多个端口,但只能是连续的端口范围 

  --dport 匹配报文目标端口;可以给出多个端口,但只能是连续的端口范围

  --tcp-flags mask comp 匹配报文中的tcp协议的标志位

-p udp

  --sport 匹配报文源端口;可以给出多个端口,但只能是连续的端口范围

  --dport 匹配报文目标端口;可以给出多个端口,但只能是连续的端口范围

--icmp-type

  /0: echo reply 允许其他主机ping

  8/0echo request 允许ping其他主机

   

限制ping 192.168.0.1主机的数据包数,平均2/s个,最多不能超过3个

放行本机端的流入流出

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。

推荐阅读:
  1. shell从入门到放弃(上)
  2. SQLServer从入门到精通

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

iptables

上一篇:ADO.NET类怎么用

下一篇:怎么用C#批量打印电子面单

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》