天为鶴家乡 发表于 2023-6-13 16:40:34

linux iptables安全技术与防火墙

目录
一、入侵检测系统
二、防火墙
三、防水墙  
四、tcpdump抓包
五、实验演示
  1.SNAT 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
一、入侵检测系统
  特点:是不阻断任何网络访问,量化、定位来自内外网络的威胁情况,
    主要以提供报警和事后监督为主,提供有针对性的指导措施和安全决策依据,类似于监控系统
 
二、防火墙
  1.特点:隔离功能,工作在网络或主机边缘
      对进出网络或主机的数据包基于一定的规则检查,并在匹配某规则时由规则定义的行为进行处理的一组功能的组件,
      基本上的实现都是默认情况下关闭所有的通过型访问,只开放允许访问的策略,会将希望外网访问的主机放在网络中。
 
  2.防火墙分类:
    主机防火墙:服务范围为当前一台主机
    网络防火墙:服务范围为防火墙一侧的局域网
 
  3.按实现方式划分:
    硬件防火墙:在专用硬件级别实现部分功能的防火墙;另一个部分功能基于软件实现
  
   4.按网络协议划分:
    网络层防火墙:OSI模型下四层,又称为包过滤防火墙
    应用层防火墙/代理服务器:proxy 代理网关,OSI模型七层
   
  5.Netfilter
    Linux防火墙是由Netfilter组件提供的,Netfilter工作在内核空间,集成在linux内核中
 
  6.iptables
    由软件包iptables提供的命令行工具,工作在用户空间,用来编写规则,写好的规则被送往netfilter,告诉内核如何去处理信息包
    iptables默认安装

    Linux的防火墙体系主要工作在网络层针对数据包实施过滤和限制,属于典型的包过滤防火墙(或称为网络层防火墙)。
    (1)五元素:
        1.源ip地址
        2.目标IP地址
        3.源端口
        4.目标端口
        5.协议
     (2)五种规则链
        1.INPUT:处理入栈数据包
        2.OUTPUT:处理出栈数据包
        3.FORWORD:处理转发数据包
        4.POSTROUTING:处理路由选择后处理数据包
        5.PREROUTING:处理路由选择前数据包
 
     (3)四种规则表
        1.raw表:确定是对数据包进行状态跟踪
        2.mangle表:为数据包设置标记
        3.nat表:修改数据包的源目标IP地址或端口
        4.fileter表:确认是否放行该数据包
 
        四表五链
          规则表的作用:容纳各种规则链
          规则链的作用:容纳各种防火墙规则
          总结:表里有链,链里有规则
        
        注意事项:
          不指定表名时,默认指filter表
          不指定链名时,默认指表内的所有链,一般不这么操作
          除非设置链的默认策略,否则必须指定匹配条件
          选项、链名、控制类型使用大写字母,其余均为小写
 
     (4)内核中数据包的传输过程
        1. 当一个数据包进入网卡时,数据包首先进入PREROUTING链,内核根据数据包目的IP判断是否需要转送出去。        
        2. 如果数据包是进入本机的,数据包就会沿着图向下移动,到达INPUT链。数据包到达INPUT链后, 任何进程都会收到它。
          本机上运行的程序可以发送数据包,这些数据包经过OUTPUT链,然后到达        
        3. 如果数据包是要转发出去的,且内核允许转发,数据包就会向右移动,经过FORWARD链,然后到达POSTROUTING链输出
 
     (5)规则内的匹配顺序
        自上向下按顺序依次进行检查,找到相匹配的规则即停止(LOG策略例外,表示记录相关日志)
        若在该链内找不到相匹配的规则,则按该链的默认策略处理(未修改的状况下,默认策略为允许)
     
      (6)数据包的常见控制类型
        ACCEPT:允许数据包通过。
        DROP:直接丢弃数据包,不给出任何回 应信息。
        REJECT:拒绝数据包通过,必要时会给数据发送端一个响应信息。
        SNAT:        修改数据包的源地址
        DNAT:        修改数据包的目的地址
      
     (7)管理选项   
         -A             在指定链末尾追加一条
         -I             在指定链中插入一条新的,未指定序号默认作为第一条
         -P             指定默认策略
         -D             删除
         -R             修改、替换某一条规则
         -L             查看
         -n             所有字段以数字形式显示
         -v             查看时显示更详细信息,常跟-L一起使用 
         --line-numbers  规则带编号
         -F             清除链中所有规则
         -X             清空自定义链的规则,不影响其他链 
         -Z             清空链的计数器
         -S 看链的所有规则或者某个链的规则/某个具体规则后面跟编号

 
      (8)匹配的条件
       -p              指定要匹配的数据包的协议类型  
       -s         指定要匹配的数据包的源IP地址
       -d            指定要匹配的数据包的目的IP地址
          -i             指定数据包进入本机的网络接口
       -o            指定数据包离开本机做使用的网络接口
         --sport       指定源端口号
         --dport       指定目的端口号
    例子演示:
      (1)粗略查看默认规则:

       (2)数字化的形式查看规则:

      (3) 指定表查看:

       (4)查看指定表中的指定链

       (5) 清空规则(清除前先备份)

       (6)备份iptabs

       (7)还原iptabes

      (8)添加规则,禁止所有主机ping本机   

  可以看到所有网段无法通信

 
     (9)添加所有网段都可以通信

     (10)指定序号插入,插入到第一条

      (11) 添加禁止任何主机tcp

     (12)添加允许任何主机udp

     (13)查看行规则的位置

     (14)添加拒绝某一台主机,其他的可以


     (15) 拒绝多台主机

     (16) 添加指定端口(禁止22端口ssh服务会掉)

     (17)添加指定IP地址的服务端口拒绝

         可以看到IP地址可以登录,但是使用指定端口不可通信

     (18)根据序号删除内容

      (19)内容匹配删除(有两个相同的则作用为去重) 如果有两个重复的规则,则删除序号较小的


       (20)修改默认规则:

       (21)filter三条链的默认值为ACCEPT,修改为DROP

       (22)除了icmp以外,所有的协议都可以进入

       (23)禁止整个网段访问21和80端口 (小的数字写在前面,大的写在后面)
      

    显示匹配      
      (1)-m multiport --sport 源端口列表 -m multiport --dport 目的端口列表

       (2)IP范围匹配
          -m iprange --src-range源IP范围
          -m iprange --dst-range目的IP范围

       (3)MAC匹配
          -m mac --mac-source MAC地址

 
       (4) 自定义链使用


           (5)自定义链改名


         (6)创建自定义链规则


         (7)删除自定义规则链:先删除iptables INPUT链中的对应关系,然后删除自定义链中的规则。

 
 
  7.firewalld
    软件包:firewalld、firewalld-config
    管理工具:firewall-cmd 命令行工具、firewall-config 图形工作
  
 
三、防水墙
  特点:广泛意义上的防水墙:防水墙,与防火墙相对,是一种防止内部信息泄漏的安全产品。   
    防水墙针对这四种泄密途径,在事前、事中、事后进行全面防护。
 
四、 tcpdump抓包
    tcpdump抓包工具的运用
    wireshark 抓包工具只在windows中使用。
    tcpdump 可以在Linux系统中使用。
    1.静态抓包


    linux没有查看工具,所有将target.cap导入到外面实验target查看

   2.动态抓包

 

 

 
五、实验演示
  1.在pc1配置内网地址
    重启服务

   2.配置外网地址pc3

3.中转服务器pc2,先配置ens33网关

   重启网卡

   配置ens37网卡作为外网的转发处

    重启网卡  

    4.修改网卡模式
    内网和对应网卡为nat,外网为仅主机  
      网关服务器配置:

  外网网卡配置

 5.启动转发
  进入/etc/sysctl.conf


 6.添加规则,允许访问指定网段端口


 使用pc1向外网通信

 pc3外网访问内网
 
来源:https://www.cnblogs.com/zhende/p/17475976.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!
页: [1]
查看完整版本: linux iptables安全技术与防火墙