Linux下用iptables防火墙打造安全网络

安全,在网络中一直是一个亘古不变的话题。只有网络存在就会存在安全问题,你就会面临被攻击的风险。在Linux2.4内核之后使用iptables/netfilter网络架构实现报过滤的防火墙。在一定程度上取代硬件防火墙的常用功能,打造一个安全的网络环境

所谓“包过滤”技术,也就是通过匹配数据的“五元组”---源ip、目的ip、源port、目的port和协议(ip,tcp,udp,icmp等)。一般的网络防火墙也就是通过对这些数据进行匹配,来保证内网安全的。

iptables与netfilter

一、首先要明确这两个概念:
    1.linux的防火墙是linux的内核实现的,而不是系统中的服务程序实现的,linux的内核是使用netfilter架构实现这个功能的。

2.iptables只是netfilter的管理工具而已。通过对iptables的管理来实现防火墙的策略。

二、iptables中的“三项纪律”和“五大注意”

1.三项纪律:nat filter以及mangle
    2.五大注意:PREROUTING、FORWARD、POSTROUTING、INPUT、OUTPUT

其框架图如下:

--------PREROUTING---→[ROUTING]---->FORWARD-----→POSTROUTING
          mangle    |               mangle           ↑ mangle
            nat     |               filter            |   nat 
                    |                                 |
                    ↓                                |
                  INPUT                           OUTPUT
                    |   mangle                       |  mangle
                    ↓  filter                       |  nat filter
                    |------------→Local-----------→|


    其中filter、nat、mangel为规则表,其他五个为规则链。其中规则包含在链中,而规则链包含在规则表中。nat针对地址转换、filter针对包过滤(用得最多的也就是它了)、mangel针对策略路由和流量整形(有点QOS的味道),规则链的分配如下:

* filter:INPUT、FORWARD、OUTPUT
    * nat   :PREROUTING、POSTROUTING、OUTPUT
    * mangel:PREROUTING、POSTROUTING、OUTPUT、INPUT、FORWARD

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wzygjz.html