• iptables 简介


    iptables 的底层就是 Linux 内核中的 netfilter。

    iptables 是 linux 内核中集成的“包过滤”防火墙,完全免费,合理配置可以完美替代昂贵的企业级防火墙,完成包过滤、重定向和 NAT 等功能。

    从名字可以看出,ip tables :字面意思就是 IP 数据包的规则表 tables 的意思,包过滤。

    需要注意的是,在大并发网站的设计中,建议关闭 iptables,使用硬件防火墙。

    iptables netfilter 以及 firewall 之间的关系:

    CentOS 7 中 iptables 和 Firewall 的关系:

    iptables用于过滤数据包,属于网络层防火墙.

    firewall能够允许哪些服务可用,哪些端口可用…. 属于更高一层的防火墙。

    firewall的底层是使用iptables进行数据过滤,建立在iptables之上

    iptables 四表五链:

    四表:mangle、nat、filter、raw

    五链:input、output、prerouting、forward、postrouting

    iptables 容器关系:

    iptables/Netfilter 是表 (Tables)的容器,iptables包括四个表:MANGLE、NAT、FILTER、RAW

    iptables 的表是“链 (Chains)” 的容器,链包括:INPUT、OUTPUT、PREROUTING、FORWARD、POSTROUTING

    ” 是规则策略 (policy)”的容器:例如, 开放本机 80 端口的规则用法:iptables -I INPUT -p tcp --dport 80 -j ACCEPT

    iptables 语法规则:

    iptables  [-t tablename] option [chainname] rule [-j active]

    例如,阻止别人 ping 的规则:iptables -t filter -I INPUT -p icmp -j REJECT

    -t:指定表,不指定默认 FILTER 表,-I(I,insert;D,delete,A,add):指定链,不指定默认指表内所有链

    1. 防火墙是层层过滤的,按照配置规则的顺序从上到下,从前到后进行过滤的;

    2. 只要匹配上规则,即明确表明是阻止还是允许,数据包就不再向下匹配下面的规则

    3. 如果规则表中没有明确阻止还是允许,也就是没有匹配规则,直到匹配到默认规则;

    4. 防火墙默认规则是所有指定规则执行完以后没有匹配上,默认规则才会执行。

    建议大家开始学习使用 iptables 时按照语法使用,这样容易理解,熟练以后可以自行决定(大佬请忽略这句废话)。

    iptables 默认的表、链结构。没错,看着让人害怕,不过没关系,仔细看,有标红的,这才是实际工作中用到的。

    可以看出 NAT 表FILTER 表是标红的,也就是说,在实际工作中,常用的也就是这两个表,MANGLE 表很少用,而 RAW 表几乎可以忽略,没有人使用。

     iptables 表和链的工作流程图:

    去掉 RAW 表以后简化为:

    前边说好了,只用NAT 和 FILTER 两个表,那么,最小化原则,就变成这样的了:

    本节并没有介绍 iptables 的具体用法,只是简单介绍了 iptables 的基本原理以及语法规则,后续介绍 iptables 用法。

    查看 iptables 规则:iptables -L -n

  • 相关阅读:
    点分治。。。。。
    巧克力
    离散化初步
    [NOI1998]:围巾裁剪
    关于Tarjan(3)——离线LCA
    Eigen学习笔记2-Matrix类
    Eigen学习
    Git使用入门笔记
    LeetCode 之二叉树中序遍历(使用栈实现)
    leetCode之二叉树数中序遍历(递归实现)
  • 原文地址:https://www.cnblogs.com/liuxgcn/p/11167986.html
Copyright © 2020-2023  润新知