Red Hat Certified Engineer 8 备考第九天 iptables与firewalld

时间:2019年7月26日linux

地点:家里web

内容:防火墙、策略与规则链、iptable、firewalld、SNAT、TCP Wrappers网络

防火墙     在公网与企业内网之间充当保护屏障

                   分类:

                                从逻辑上讲。防火墙能够大致分为主机防火墙和网络防火墙。

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

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

                                网络防火墙和主机防火墙并不冲突,能够理解为,网络防火墙主外(集体),主机防火墙主内 (我的)。

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

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

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

                   功能: 依据策略对穿越防火墙自身的流量进行过滤。

                   策略: 基于流量的源目地址、端口号、协议、应用等信息来定制,而后防火墙使用预先定制的策略规则监控出入的流量,若流量与某一条策略规则相匹配,则执行相应的处理,反之则丢弃。

策略与规则链     防火墙会从上至下的顺序来读取配置的策略规则,在找到匹配项后就当即结束匹配工做并去执行匹配项中定义的行为(即放行或阻止)。

                                     分类:app

                                              在进行路由选择前处理数据包(PREROUTING);ssh

                                              处理流入的数据包(INPUT);tcp

                                              处理流出的数据包(OUTPUT);工具

                                              处理转发的数据包(FORWARD);性能

                                              在进行路由选择后处理数据包(POSTROUTING)。学习

                                     动做状态:网站

                                              ACCEPT(容许经过)

                                              REJECT(拒绝经过)

                                              LOG(记录日志)

                                              DROP(拒绝且不反馈)

iptables     iptables是一款基于命令行的防火墙策略管理工具,具备大量参数,学习难度较大。 格式:“ iptables [-t table] COMMAND chain CRETIRIA -j ACTION ”。

         

         

          扩展:iptables详解

firewalld     firewalld(Dynamic Firewall Manager of Linux systems,Linux系统的动态防火墙管理器)服务是默认的防火墙配置管理工具,它拥有基于CLI(命令行界面)和基于GUI(图形用户界面)的两种管理方式。

          特性: firewalld支持动态更新技术并加入了区域(zone)的概念。

                     firewalld中常见的区域名称(默认为public)。

         

     终端管理     firewall-cmd

                       模式:临时:Runtime

                                 永久:Permanent

         

          特殊格式: 流量转发命令格式为firewall-cmd --permanent --zone=<区域> --add-forward-port=port=<源端口号>:proto=<协议>:toport=<目标端口号>:toaddr=<目标IP地址>

          富规则     富规则表示更细致、更详细的防火墙策略配置,它能够针对系统服务、端口号、源地址和目标地址等诸多信息进行更有针对性的策略配置。它的优先级在全部的防火墙策略中也是最高的。

SNAT     SNAT ,是源地址转换,其做用是将ip数据包的源地址转换成另一个地址。

DNAT     Destination Network Address Translation目的地址转换,将一组本地内部地址映射全球地址。

                     如何区分SNAT和DNAT

                     1.从定义来说它们一个是源地址转换,一个是目标地址转换。都是地址转换的功能,将私有地址转换为公网地址。

                     要区分这两个功能能够简单的由链接发起者是谁来区分:

                     内部地址要访问公网上的服务时(如web访问),内部地址会主动发起链接,由路由器或者防火墙上的网关对内部地址作个地址转换,将内部地址的私有IP转换为公网的公有IP,网关的这个地址转换称为SNAT,主要用于内部共享IP访问外部。

                     当内部须要提供对外服务时(如对外发布web网站),外部地址发起主动链接,由路由器或者防火墙上的网关接收这个链接,而后将链接转换到内部,此过程是由带有公网IP的网关替代内部服务来接收外部的链接,而后在内部作地址转换,此转换称为DNAT,主要用于内部服务对外发布。

                     在配置防火墙或者路由acl策略时要注意这两个NAT必定不能混淆。

TCP Wrappers     TCP Wrappers服务的防火墙策略由两个控制列表文件所控制,用户能够编辑容许控制列表文件来放行对服务的请求流量,也能够编辑拒绝控制列表文件来阻止对服务的请求流量。

判断程序是否支持tcp_wrapper

程序若是调用了libwrap.so库,表示支持。

ldd 程序路径|grep libwrap.so
strings 程序路径|grep libwrap.so

#ldd /usr/sbin/sshd|grep libwrap.so
    libwrap.so.0 => /lib64/libwrap.so.0 (0x00007f9851678000)

#ldd /usr/sbin/vsftpd |grep libwrap.so
    libwrap.so.0 => /lib64/libwrap.so.0 (0x00007f802ef50000)

#strings `which sshd`|grep libwrap.so
libwrap.so.0

                                   控制文件:白名单(路径:/etc/hosts.allow)

                                                    黑名单(路径:/etc/hosts.deny)

          

        

        配置原则:

                      编写拒绝策略规则时,填写的是服务名称,而非协议名称;

                      建议先编写拒绝策略规则,再编写容许策略规则,以便直观地看到相应的效果。

书面笔记