精华内容
下载资源
问答
  • iptable

    2018-10-16 17:22:48
    了解iptable时,要先简单了解Netfilter,Netfilter是集成在内核中的,用来定义存储各种规则的。Iptalbe是修改这些规则的工具,修改后存在netfilter里面。数据包进入LINUX服务器时,先进入服务器的netfilter模块中...

            了解iptable时,要先简单了解Netfilter,Netfilter是集成在内核中的,用来定义存储各种规则的。Iptalbe是修改这些规则的工具,修改后存在netfilter里面。数据包进入LINUX服务器时,先进入服务器的netfilter模块中进行判断处理。
     
    Netfilter包含有三种表,三种表下共包含有五种链,链下面包含各种规则。即表包含若干链,链包含若干规则。
     
    (一)三种表为:filter   nat  mangle
     1、filter:处理与本机有关的数据包,是默认表,包含有三种链:input   output forward
    2、nat表:与本机无关。主要处理源与目的地址IP和端口的转换。有三种链:prerouting  postrouting output
    3、mangle表:用于高级路由信息包,如包头内有更改(如tos改变包的服务类型,ttl包的生存时间,mark特殊标记)。
    有两种链:prerouting  output  (kernel  2.4.18后又加了两种链:input forward)这种表很少使用:
     
    (二)五种链(链在表下面,为了条理清晰,才另外作一大点讲解)
     
    1、prerouting:进入netfilter后的数据包在进入路由判断前执行的规则。改变包。
    2、Input:当经过路由判断后,要进入本机的数据包执行的规则。
    3、output:由本机产生,需向外发的数据包执行的规则。
    4、forward:经过路由判断后,目的地不是本机的数据包执行的规则。与nat 和 mangle表相关联很高,与本机没有关联。
    5、postrouting:经过路由判断后,发送到网卡接口前。即数据包准备离开netfilter时执行的规则。
     
     

    上图上,运行中的守护进程,是指本机。Input的包都会发到本机。本机处理后再经output 发出去。
     
    (三)数据包进入netfilter后的经过图:
     
    1、数据包进入linux服务器入接口,接口把数据包发往netfilter,数据包就此进入netfilter。
    2、经prerouting处理,(如是否需要更改数据包的源IP地址等)
    3、数据包到路由,路由通过路由表判断数据包的目的地。如果目的地是本机,就把数据包转给intput处理后进入本机。如果目的地不是本机,则把数据包转给forward处理。
    4、数据包通过forward处理后,再转给postrouting处理,(是否有目标地址需要改变等),处理后数据包就出了netfilter,到linux服务器出接口,就出了linux服务器。
    5、如果数据包进了本机后经过处理需要外发数据包,或本机自身有数据包需要外发,就把数据包发给output链进行处理后,转给postrouting处理后,出linux服务器。进入外面的花花世界。
     
    (三)规则的执行顺序
    当数据包进入netfilter,就会和里面的规则进行对比。规则是有顺序的。
    先和规则1对比,如果和规则1相匹配,被规则1接受(accept),则数据将不再和后面的规则进行对比。
    如果不匹配,则按顺序和后面的规则进行对比,直到被接受。如果所有的规则都不匹配,则进行默认策略操作,以决定数据包的去向。
    所以规则的顺序很重要。
     
     IPTABLE主要是理解上面的内容,一些详细参数可以见附件中的指南。

      二、iptalbe语法及参数


    iptable [-t table] command [chain] [match][-j target]
    注释:iptable [-t 表名] -命令 [链接] [匹配] [-j 动作/目标]

    (一) table  (表)

    1、filter表:默认用filter表执行所有的命令。只操作与本机有关的数据包。
    2、nat表:主要用于NAT地址转换。只有数据流的第一个数据包被这个链匹配,后面的包会自动做相同的处理。
      分为:DNAT(目标地址转换)、SNAT(源地址转换)、MASQUERADE

    (1)DNAT操作主要用在这样一种情况,你有一个合法的IP地址,要把对防火墙的访问 重定向到其他的机子上(比如DMZ)。也就是说,我们改变的是目的地址,以使包能重路由到某台主机。

    (2)SNAT 改变包的源地址,这在极大程度上可以隐藏你的本地网络或者DMZ等。内网到外网的映射。

    (3)MASQUERADE 的作用和SNAT完全一样,只是计算机的负荷稍微多一点。因为对每个匹配的包,MASQUERADE都要查找可用的IP地址,而不象SNAT用的IP地址 是配置好的。当然,这也有好处,就是我们可以使用通过PPP、 PPPOE、SLIP等拨号得到的地址,这些地址可是由ISP的DHCP随机分配的。


    3、mangle表:用来改变数据包的高级特性,一般不用。

    (二) command(命令)详解
     
    1、 -A或者--append     //将一条或多条规则加到链尾
    2、 -D或者--delete     //从链中删除该规则
    3、 -R或者--replace   //从所选链中替换一条规则
    4、 -L或者--list       //显示链的所有规则
    5、 -I或者--inset     //根据给出的规则序号,在链中插入规则。按序号的顺序插入,如是 “1”就插入链首
    6、 -X或者--delete-chain  //用来删除用户自定义链中规则。必须保证链中的规则都不在使用时才能删除链。如没有指定链,将删除所有自定义链中的规则。
    7、 -F或者--flush        //清空所选链中的所有规则。如指定链名,则删除对应链的所有规则。如没有指定链名,则删除所有链的所有规则。
    8、 -N或者--new-chain      //用命令中所指定的名字创建一个新链。
    9、 -P或者--policy        //设置链的默认目标,即策略。 与链中任何规则都不匹配的信息包将强制使用此命令中指定的策略。
    10、-Z或者--zero        //将指定链中的所有规则的包字节计数器清零。

    (三) match 匹配

    分为四大类:通用匹配、隐含匹配、显示匹配、针对非正常包的匹配


    1、通用匹配

       无论我们使用何种协议,装入何种扩展,通用匹配都可以使用权用。不需要前提条件

    (1) -p(小写)或--protocl   

    用来检查某些特定协议。协议有TCP\UDP\ICMP三种。可用逗号分开这三种协议的任何组合。也可用“!”号进行取反,表示除该协议外的剩下的协议。也可用all表示全部协议。默认是all,但只代表tcp\udp\icmp三种协议。

    $ iptable -A INPUT -p TCP,UDP
    $ iptable -A INPUT -p ! ICMP     //这两种表示的意思为一样的。


    (2) -s 或 --source

    以Ip源地址匹配包。根据源地址范围确定是否允许或拒绝数据包通过过滤器。可使用 “!”符号。    默认是匹配所有ip地址。
    可是单个Ip地址,也可以指定一个网段。  如: 192.168.1.1/255.255.255.255  表示一个地址。   192.168.1.0/255.255.255.0  表示一个网段。

    (3) -d  或 --destination  

    用目的Ip地址来与它们匹配。与  source 的格式用法一样


    (4)  -i  

       以包进入本地所使用的网络接口来匹配包。只能用INPUT \ FORWARD \prerouting 三个链中。用在其他任何链中都会出错。
       可使用“+”  “!”两种符号。
      只用一个“+"号,表示匹配所有的包,不考虑使用哪个接口。如: iptable -A INPUT  -i +  //表匹配所有的包。
      放在某类接口后面,表示所有此类接口相匹配。如:    iptable  -A INPUT -i eth+   //表示匹配所有ethernet 接口。

    (5)  -o
        
      以数据包出本地所使用的网络接口来匹配包。与-i一样的使用方法。
       只能用INPUT \ FORWARD \prerouting 三个链中。用在其他任何链中都会出错。
       可使用“+”  “!”两种符号。  

     (6)  -f  (或  --fragment )

          用来匹配一个被分片的包的第二片或以后的部分。因一个数据包被分成多片以后,只有第一片带有源或目标地址。后面的都不带 ,所以只能用这个来匹配。可防止碎片攻击。

    2、隐含匹配

       这种匹配是隐含的,自动的载入内核的。如我们使用 --protocol tcp  就可以自动匹配TCP包相关的特点。
       分三种不同协议的隐含匹配:tcp   udp  icmp 

      2.1   tcp match

           tcp match 只能隐含匹配TCP包或流的细节。但必须有  -p tcp 作为前提条件。

       (2.1.1)  TCP --sport   
                基于tcp包的源端口匹配包  ,不指定此项则表示所有端口。

                iptable -A INPUT -p  TCP  --sport   22:80    //TCP源端口号22到80之间的所有端口。
                iptable -A INPUT -p  TCP  --sport   22:      //TCP源端口号22到65535之间的所有端口。      

       (2.1.2)  TCP --dport   

                基于tcp包的目的端口来匹配包。   与--sport端口用法一样。

        (2.1.3)  TCP --flags   

                匹配指定的TCP标记。  

                iptable  -p  TCP --tcp-flags  SYN,FIN,ACK   SYN 


       2.2   UDP match

           (2.1.1)  UDP --sport   
                基于UDP包的源端口匹配包  ,不指定此项则表示所有端口。
           
            (2.1.1)  UDP --dport   
                基于UDP包的目的端口匹配包  ,不指定此项则表示所有端口。

       2.3   icmp match 

           icmp --icmp-type    

           根据ICMP类型包匹配。类型 的指定可以使用十进制数或相关的名字,不同的类型,有不同的ICMP数值表示。也可以用“!”取反。

    例:      iptable  -A INPUT  -p icmp-imcp-type 8  


      3、显示匹配

        显示匹配必须用  -m装 载。  

         (1)limit match   
     
           必须用 -m limit 明确指出。  可以对指定的规则的匹配次数加以限制。即,当某条规则匹配到一定次数后,就不再匹配。也就是限制可匹配包的数量。这样可以防止DOS攻击。
           限制方法: 设定对某条规则 的匹配最大次数。设一个限定值 。 当到达限定值以后,就停止匹配。但有个规定,在超过限制次数后,仍会每隔一段时间再增加一次匹配次数。但增加的空闲匹配数最大数量不超过最大限制次数。


            --limit rate
              最大平均匹配速率:可赋的值有'/second', '/minute', '/hour', or '/day'这样的单位,默认是3/hour。

            --limit-burst number
             待匹配包初始个数的最大值:若前面指定的极限还没达到这个数值,则概数字加1.默认值为5

        iptable -A INPUT -m limit --limt 3/hour    //设置最大平均匹配速率。也就是单位时间内,可匹配的数据包个数。   --limt 是指定隔多 长时间发一次通行证。
        iptable -A INPUT  -m limit --limit-burst 5  //设定刚开始发放5个通行证,也最多只可匹配5个数据包。


       (2) mac match 

            只能匹配MAC源地址。基于包的MAC源地址匹配包


       iptable -A  INPUT -m mac  --mac-source   00:00:eb:1c:24     //源地址匹配些MAC地址


        (3)  mark match 

           以数据包被 设置的MARK来匹配包。这个值由  MARK TARGET 来设置的。

      (4)  multiport match 

             这个模块匹配一组源端口或目标端口,最多可以指定15个端口。只能和-p tcp 或者 -p udp 连着使用。
     

            多端口匹配扩展让我们能够在一条规则里指定不连续的多个端口。如果没有这个扩展,我们只能按端口来写规则了。这只是标准端口匹配的增强版。不能在一条规则里同时用标准端口匹配和多端口匹配。

     三个选项:   --source-port   ;  --destination-port  ;   --port

            iptable  -A INPUT  -p TCP   -m  multiport  --source-port 22,28,115        
            iptable  -A INPUT  -p TCP   -m  multiport  --destination-port 22,28,115  
            iptable  -A INPUT  -p TCP   -m  multiport  --port 22,28,115 

      (5) state match 

           状态匹配扩展要有内核里的连接跟踪代码的协助。因为是从连接跟踪机制得到包的状态。这样不可以了解所处的状态。

     (6)  tos match 

           根据TOS字段匹配包,用来控制优先级。  

     (7)   ttl match 

         根据IP头里的TTL字段来匹配包。

    (8) owner match

    基于包的生成者(即所有者或拥有者)的ID来匹配包。  
    owner 可以启动进程的用户的ID。或用户所在的级的ID或进程的ID,或会话的ID。此只能用在OUTPUT 中。 
    此模块设为本地生成包匹配包创建者的不同特征。而且即使这样一些包(如ICMP ping应答)还可能没有所有者,因此永远不会匹配。

    --uid-owner userid
    如果给出有效的user id,那么匹配它的进程产生的包。

    --gid-owner groupid
    如果给出有效的group id,那么匹配它的进程产生的包。

    --sid-owner seessionid
    根据给出的会话组匹配该进程产生的包。

      


    ( 四) targets/jump   

      指由规则指定的操作,对与规则匹配的信息包执行什么动作。

      1、accept 


    这个参数没有任何选项。指定  -j accept 即可。  
    一旦满 足匹配不再去匹配表或链内定义的其他规则。但它还可能会匹配其他表和链内的规则。即在同一个表内匹配后就到上为止,不往下继续。

    2、drop  

    -j drop   当信息包与规则完全匹配时,将丢弃该 包。不对它做处理。并且不向发送者返回任何信息。也不向路由器返回信息。

    3、reject 

    与drop相同的工作方式,不同的是,丢弃包后,会发送错误信息给发送方 。
       
    4、DNAT 

    用在prerouting链上。
    做目的网络地址转换的。就是重写目的的IP地址。
    如果一个包被匹配,那么和它属于同一个流的所有的包都会被自动转换。然后可以被路由到正确的主机和网络。
    也就是如同防火墙的外部地址映射。把外部地址映射到内部地址上。

    iptalbe -t nat   -A PREROUTING   -d 218.104.235.238 -p TCP  --dport 110,125    -j DNAT --to-destination  192.168.9.1  
    //把所有访问218.104.235.238地址  110.125端口的包全部转发到 192.168.9.1上。 

    --to-destination   //目的地重写

    5、SNAT 

    用在nat 表的postrouting链表。这个和DNAT相反。是做源地址转换。就是重写源地址IP。 常用在内部网到外部网的转换。

    --to-source  

    iptable -t nat POSTROUTING  -o eht0 -p tcp  -j SNAT --to-source 218.107.248.127  //从eth0接口往外发的数据包都把源地址重写为218.107.248.127

    6、MASQUERADE

    masquerade 的作用和 SNAT的作用是一样的。 区别是,他不需要指定固定的转换后的IP地址。专门用来设计动态获取IP地址的连接的。
    MASQUERADE的作用是,从服务器的网卡上,自动获取当前ip地址来做NAT
    如家里的ADSL上网,外网的IP地址不是固定的,你无法固定的设定NAT转换后的IP地址。这时就需要用masquerade来动态获取了。

    iptable -t nat -A POSTROUTING  -s 192.168.1.0/24 -j masquerade      //即把192.168.1.0 这个网段的地址都重写为动态的外部IP地址。


    7、REDIRECT  

    只能在NAT表中的PREROUTING  OUTPUT 链中使用
    在防火墙所在的机子内部转发包或流到另一个端口。比如,我们可以把所有去往端口HTTP的包REDIRECT到HTTP proxy(例如squid),当然这都发生在我们自己的主机内部。

    --to-ports

    iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8080

    不使用这个选项,目的端口不会被改变。

    指定一个端口,如--to-ports 8080

    指定端口范围,如--to-ports 8080-8090


    8、RETURN 

    顾 名思义,它使包返回上一层,顺序是:子链——>父链——>缺省的策略。具体地说,就是若包在子链中遇到了RETURN,则返回父链的下一条规 则继续进行条件的比较,若是在父链(或称主链,比如INPUT)中遇到了RETURN,就要被缺省的策略(一般是ACCEPT或DROP)操作了。(译者 注:这很象C语言中函数返回值的情况)

     

    展开全文
  • iptable网络转发

    2016-08-30 13:40:07
    2小时玩转iptable
  • Centos7默认使用的是firewalld 服务,但是兼容一系列 iptables 命令,对于习惯使用 service 控制服务的人来说确实不习惯,安装此包可以使用service命令
  • Iptable

    2021-03-23 13:09:48
    1.iptable介绍 Netfilter/Iptables(以下简称Iptables)是unix/linux自带的一款优秀且开放源代码的完全自由的基于包过滤的防火墙工具 iptables是基于内核的防火墙,功能非常强大,基于数据包的过滤!特别是可以在一台...

    1.iptable介绍

    • Netfilter/Iptables(以下简称Iptables)是unix/linux自带的一款优秀且开放源代码的完全自由的基于包过滤的防火墙工具
    • iptables是基于内核的防火墙,功能非常强大,基于数据包的过滤!特别是可以在一台非常低的硬件配置下跑的非常好
    • iptables主要工作在OSI七层的2.3.4层。七层的控制可以使用squid代理+iptables。
    • iptabes:生产中根据具体情况,一般,内网关闭,外网打开。大并发的情况不能开iptables,影响性能(消耗cpu)。

    2.iptables传输数据包的过程

    在这里插入图片描述
    在这里插入图片描述

    • ① 当一个数据包进入网卡时,它首先进入PREROUTING链,内核根据数据包目的IP判断是否需要转送出去。

    • 如果数据包就是进入本机的,它就会沿着图向下移动,到达INPUT链。数据包到了INPUT链后,任何进程都会收到它。本机上运行的程序可以发送数据包,这些数据包会经过OUTPUT链,然后到达POSTROUTING链输出。
    • ③ 如果数据包是要转发出去的,且内核允许转发,数据包就会如图所示向右移动,经过FORWARD链,然后到达POSTROUTING链输出。

    3.四表五链

    优先顺序:Raw——mangle——nat——filter
    iptables名词和术语

    • Netfilter/iptables

    其实iptables只是Linux防火墙的管理工具而已,位于/sbin/iptables。真正实现防火墙功能的是netfilter,它是Linux内核中实现包过滤的内部结构。

    表(tables)

    表(tables)是链的容器,即所有的链(chains)都属于其对应的表(tables)

    • Filter

    (默认表,真正负责主机防火墙功能的)
    作用:实现防火墙数据过滤功能
    内核模块:iptables_filter
    其所属链
    INPUT链
    作用

    • 负责过滤所有目标是本机地址的数据包 通俗来说:就是过滤进入主机的数据包
    • 对于指定到本地套接字的包,即到达本地防火墙服务器的数据包。 FORWARD链:

    作用

    • 负责转发流经主机的数据包。起到转发的作用,和NAT关系很大。 LVS NAT 模式,net.ipv4.ip_forward=0
    • 路由穿过的数据包,即经过本地防火墙服务器的数据包。

    OUTPUT链:
    作用:
    处理所有源地址是本机地址的数据包 通俗的讲:就是处理从主机发出的数据包

    NAT:

    作用
    负责网络地址转换的,即来源与目的的IP地址和port的转换。
    所属其的链
    FREROUTING链
    在数据包到达防火墙时,进行路由判断之前执行的规则,作用是改变数据包的目的地址、目的端口等
    OUTPUT链
    和主机放出去的数据包有关,改变主机发出数据包的目的地址。
    POSTROUTING链:
    在数据包离开防火墙时进行路由判断之后执行的规则,作用改变数据包的源地址,源端口等。
    例如。默认笔记本和虚拟机都是局域网地址,在出网的时候被路由器将源地址改为公网地址。
    应用:和主机本身无关,一般用于局域网共享上网或者特殊的端口转换相关。
    工作场景
    用于企业路由(zebra)或网关(iptables),共享上网(POSTROUTING)
    做内部外部IP地址一对一映射(dmz),硬件防火墙映射IP到内部服务器,FTP服务(PREROUTING)
    WEB,单个端口的映射,直接映射80端口(PREROUTING)
    Mangle
    作用:

    • 数据包重构和修改(给数据打标记,做标记)
    • 主要用于修改数据包的 ToS ( Type of Service ,服务类型)、TTL (Time toLive
      ,生存周期)以及为数据包设置 Mark 标记,以实现 QoS(Quality of Service ,服务质量)调整以及策略路由等应用

    raw :数据跟踪处理
    对地址的转换
    在这里插入图片描述

    4.防火墙处理数据包的四种方式

    • ACCEPT 允许数据包通过
    • DROP 直接丢弃数据包,不给任何回应信息
    • REJECT 拒绝数据包通过,必要时会给数据发送端一个响应的信息。
    • LOG在/var/log/messages文件中记录日志信息,然后将数据包传递给下一条规则

    5.iptables命令的语法格式

    注意事项

    • 不指定表名时,默认表示filter表
    • 不指定链名时,默认表示该表内所有链
    • 除非设置规则链的缺省策略,否则需要指定匹配条件

    iptables命令使用方法
    iptables -t [ 要操作的表] <操作命令> [要操作的链] [规则号码] [匹配条件] [-j 匹配到以后的动作](ACCEPT运行接收该数据包,REJECT拒绝,DROP丢弃)

    • iptables -I INPUT -p icmp -j ACCEPT
    • iptables -D INPUT 3 #删除第三行
    • iptables -I INPUT -s IP -p tcp --dport 22 -j REJECT 禁止这个源IP ssh 本主机的端口
    • service iptables save 保存
    • systemctl restart iptables 重启(如果不保存重启之后规则就不在了)

    操作命令

    • -A 在链的末尾追加规则
    • -I num 插入,把当前规则插入为第几条(默认是 在开头)
    • -D num 删除,明确指定删除第几条规则
    • -P 设置默认策略的
    • -F 清空所有规则
    • -L:列出一个链或所有链中的规则信息
    • -n:以数字形式显示地址、端口信息
    • -v:更详细的方式显示规则信息
    • -t :指定表名

    查看命令

    • -[vnx]L
    • -L 列出规则
    • -n 以数字格式显示ip和port,需要配合-L选项使用
    • -v 显示信息,以详细信息显示

    防火墙状态机制配置
    状态集简单说明:

    • NEW:表示新建立连接的数据包状态
    • ESTABLISHED:表示新建立连接数据包发送之后,回复响应的数据包状态
    • RELATED 表示借助已经建立的链路,发送新的连接数据包
    • INVALID 无效无法识别的数据包

    6.Iptable工作流程

    • 1.防火墙是一层层过滤的。实际是按照配置规则的顺序从上到下,从前到后进行过滤的。
    • 2.如果匹配上了规则,既明确表明是阻止还是通过,此时数据包就不再向下匹配新规则了。
    • 3.如果所有规则中没有明确表明是阻止还是让这个数据包通过,也就是没有匹配上规则,则向下进行匹配,直到匹配默认规则得到明确的阻止还是通过。
    • 4.防火墙的默认规则则是对应链的所有的规则执行完以后才会执行的(最后的执行的规则)

    7.一个数据包经过的路径可能性

    • 1.本机收到目的IP说本机的数据包:

    PRE_ROUTING -> IN

    • 2.收到的目的IP不是本机的数据包:

    PRE_ROUTING ->FORWARD–>POST_ROUTING

    • 3.本地发出去的数据包

    OUT–>ROUTING

    展开全文
  • iptable 源码

    2018-04-26 17:58:43
    该源码仅供参考,无法直接编译通过。 -------------------------------------------------------------------
  • linux防火墙
  • 今天小编就为大家分享一篇关于使用iptable和Firewalld工具来管理Linux防火墙连接规则的文章,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
  • iptable流量记录器 使用iptables记录某些端口的流量 如何使用 启用端口流量日志记录 ./tlg.sh enable 禁用端口流量日志记录 ./tlg.sh disable 显示和重置端口流量统计信息 ./tlg.sh show 半径支持 安装字典...
  • IPTABLES 是与最新的 3.5 版本 Linux 内核集成的 IP 信息包过滤系统。如果 Linux 系统连接到因特网或 LAN、服务器或连接 LAN 和因特网的代理服务器, 则该系统有利于在 Linux 系统上更好地控制 IP 信息包过滤和...
  • iptable详解概念

    2020-04-18 16:28:19
    分享一个朋友的人工智能教程。...更多iptable系列文参考(转载于):http://www.zsythink.net/archives/tag/iptables/ 防火墙相关概念 此处先描述一些相关概念。 从逻辑上讲。防火墙可以大体分为主机防火墙和网络...
       
    

    全栈工程师开发手册 (作者:栾鹏)
    架构系列文章


    更多iptable系列文参考(转载于):http://www.zsythink.net/archives/tag/iptables/

    防火墙相关概念

    此处先描述一些相关概念。

    从逻辑上讲。防火墙可以大体分为主机防火墙和网络防火墙。

    主机防火墙:针对于单个主机进行防护。

    网络防火墙:往往处于网络入口或边缘,针对于网络入口进行防护,服务于防火墙背后的本地局域网。

    网络防火墙和主机防火墙并不冲突,可以理解为,网络防火墙主外(集体), 主机防火墙主内(个人)。

    从物理上讲,防火墙可以分为硬件防火墙和软件防火墙。

    硬件防火墙:在硬件级别实现部分防火墙功能,另一部分功能基于软件实现,性能高,成本高。

    软件防火墙:应用软件处理逻辑运行于通用硬件平台之上的防火墙,性能低,成本低。

    那么在此处,我们就来聊聊Linux的iptables

    展开全文
  • iptable使用iptable使用

    2010-11-15 22:55:02
    iptableiptableiptableiptableiptableiptableiptable
  • IPTABLE

    2017-08-19 16:10:09
    iptable

    1.iptable 的基本用法
    yum install iptable-server
    这里写图片描述

    不做解析
    这里写图片描述

    -F 清空策略,但如果不保存,任存在
    这里写图片描述

    还在此文件中
    这里写图片描述

    这里写图片描述

    -nL ##默认是filter表的,-t 看其他表的策略
    这里写图片描述

    修改默认为DROP
    这里写图片描述

    -A##添加(默认到最后)
    -s ###匹配ip号(若没有,即匹配所有)
    这里写图片描述

    -I ###指定插入第几条
    这里写图片描述

    -R ###修改
    这里写图片描述
    -D##删除策略
    -N ##创建新的表
    iptable -N westos
    -E##更改表名
    -X ###删除表

    iptable -A INPUT -m state –state NEW –dport 80 -p tcp -j ACCEPT##匹配NEW状态的80端口

    SNAT:地址伪装,从eth0出去的数据包全部伪装成172.25.254.107
    服务端ip为eth0 172.25.254.107
    eth1 172.25.7.100
    这里写图片描述

    客户端ip172.25.254.200,网关如下
    这里写图片描述

    服务端内核路由功能打开
    这里写图片描述

    这里写图片描述

    此时若用客户端连接任一台机子,比如例子中是连接了172.25.254.7
    在172.25.254.7显示登陆的172.25.254.107.而不是连接它的172.25.7.200
    这里写图片描述

    DNAT
    目标地址转换
    这里写图片描述

    这里写图片描述

    展开全文
  • linux iptable 命令大全

    2011-10-15 23:18:19
    Linux Iptables命令列表: 用iptables -ADC 来指定链的规则,-A添加 -D删除 -C 修改 iptables - [RI] chain rule num rule-specification[option] 用iptables - RI 通过规则的顺序指定 iptables -D chain rule ...
  • Linux iptable

    2021-07-22 14:11:39
    命令 vi /etc/sysconfig/iptables service iptables restart service iptables save iptables [-t 表名] 命令选项 [链名] [条件匹配] [-j 目标动作或跳转] iptables -A INPUT -p tcp --dport 22 -j ACCEPT
  • linux iptable

    2009-03-05 23:45:18
    linux iptable 防火墙(Firewall)、网址转换(NAT)、数据包(package)记录、流量统计,这些功能全是Linux核心里的Netfilter子系统所提供的,而iptables是控管Netfilter的唯一工具程序
  • iptable 常用策略及其命令 1.说明 精简于《Linux宝典 第四版》340-346页 2.表 表 说明 -t filter -t NAT -t mangle 3.查看当前的规则 iptables -L 4.drop 不同链上的包 iptables -p INPUT DROP ...
  • 2.Nat表——三个链:PREROUTING、POSTROUTING、OUTPUT 作用:用于网络地址转换(IP、端口) 内核模块:iptable_nat 3.Mangle表——五个链:PREROUTING、POSTROUTING、INPUT、OUTPUT、FORWARD 作用:修改数据包的...
  • 本篇是自己的一篇学习笔记,主要是为了学明白,iptable是如何在envoy里面进行流量劫持的,会从下面几个方面来介绍:iptable是怎么与envoy关联起来的业务app中的流量请求是如...
  • centos7启用iptable

    2021-01-18 09:34:39
    安装iptables yum install iptables-services 停用firewalld systemctl stop firewalld systemctl disable firewalld 启用iptables systemctl enable iptables systemctl start iptables ...保存iptables规则 ...
  • linux iptable设置防火墙

    千次阅读 2018-04-05 14:02:45
    作用:修改数据包的服务类型、TTL、并且可以配置路由实现QOS内核模块:iptable_mangle(别看这个表这么麻烦,咱们设置策略时几乎都不会用到它)  4)Raw表——两个链:OUTPUT、PREROUTING 作用:决定数据包是否被状态...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 14,358
精华内容 5,743
关键字:

iptable