• Linux中的防火墙(粗糙版)


    防火墙的配置和策略

    安全技术

    入侵检测系统:特点是不阻断网络访问,量化,定位的方式来锁定内外网络的危险情况,提供告警服务和事后监督为主。

    说白了就是默默看着你,没有主动行为

    入侵防御系统:特点是以透明模式工作,分析数据包,木马,病毒,服务攻击等进行准确的分析判断,判定之后会立即阻断。

    他是主动地有效的保护网络安全

    是所有数据进入指定网络的必经之路

    防火墙就是入侵防御系统(人工配置或者系统预设):主要就是隔离,工作在网络或者主机的边缘

    对进出网络或者主机的数据包基于一定规则的检查。而且在匹配到某规则时,由规则定义做出相应的处理动作

    只有允许策略的数据包,才能够通过

    防水墙:ensp.他是不透明的一种工作方式,你干什么都会有记录,但是你自己不知道

    保护范围:

    主机防火墙:只能保护当前一台主机

    网络防火墙:可以保护整个防火墙另一侧的局域网

    网络协议:

    网络层防火墙:iptables firwalld 包过滤防火墙,对数据包进行过滤

    应用层防火墙:

    iptables 就是包过滤防火墙

    面试题:通信的五要素和四要素:

    五要素:

    源IP和目的IP

    源端口和目的端口

    协议(tcp/udp)

    四要素:

    源IP和目的IP

    源端口和目的端口

    iptables:属于用户态防火墙

    用户态:面向使用对象,我们就是使用工具,配置策略

    内核态:代码层(开发考虑的)

    iptables的配置规则生效之后,会立即生效,无须重启

    centos7之前,iptables是默认配置,现在默认配置是firewalld

    之后要使用iptables需提前将firewalld关闭

    面试题:四个表组成:

    row表:控制数据包的状态跟踪,以及可以决定是否跳过后续的处理。(关闭还是启用数据包的跟踪机制,加快数据包穿越防火墙的速度)

    mangle表:修改数据包的头部信息(修改数据包的标记位规则)

    nat表:用于网络地址转换,可以改变数据包的源IP地址和目的IP地址

    filter表:是iptables的默认表,用于过滤数据包,可以控制数据包的进出。以及是否接受或者拒绝数据包

    每个表里面都有链:链里面有5个链:

    INPUT链:数据包进入本机的规则

    OUTPUT链:数据包出本机的规则

    PREROUTING链:数据包进入本机之前,是否做地址转换

    POSTROUTING链:数据包离开本机之前,是否要做地址转换

    FORWARD链:是否运行数据包通过本机进行转发

    四个表……5个链……每个链里面都有对应的规则

    规则就是我们人工配置的策略

    数据包进入本机之后,匹配表是由优先级的

    row…………mangle………net…………filter

    PS:到工作中千万不要这么干,发现服务无法启动不要去关防火墙。 生产的防火墙都是白名单。清空防火墙策略,你也要倒霉。

    iptables命令的格式和相关选项:

    格式:

    iptables -t 表名 管理选项 链名 匹配条件 -j 控制类型

    不加 -t 表名 默认就是fiter表

    不加链名,就是指所有链,不推荐如此操作

    管理选项:

    -A:在指定链的末尾追加一条

    -I:在指定链中插入一条新的规则,根据编号来进行插入,不指定序号,直接插入当前链中的第一条(不推荐)

    -P:指定默认策略

    -D:删除规则

    -R:修改或者替换规则(不推荐)

    -L:查看

    v:显示详细信息

    n:所有字段以数字形式显示

    -F:清空链当中的所有规则(慎用)

    -X:清空自定义链的规则

    匹配条件:

    -p:指定匹配数据包的协议类型

    -s:指定匹配数据包的源IP地址

    -d:指定匹配数据包的目的IP地址

    -i:指定数据包进入使用本机的网络接口

    -o:指定数据包离开本机使用的网络接口

    -sport:指定源端口

    -dport:指定目的端口

    控制类型:

    ACCPET:允许数据包通过

    DROP:直接丢弃数据包而且没有任何回应信息

    REJECT:拒绝数据包通过,会给一个响应信息

    SNAT:修改数据包的源地址

    DNAT:修改数据包的目的地址

    规则内的匹配顺序:

    自上向下按照顺序依次进行检测,找到匹配的规则立刻停止,如果在链中找不到规则,则会按照该链默认策略处理

    1.如果策略已保存过,写在配置文件中的保存,导入到iptables,重启服务即可

    2.机房调整

    3.炸

    命令:

    iptables -F #清空所有策略

    iptables -vnL

    iptables -vnL --line-numbers

    iptables -t filter -A INPUT -p icmp -j REJECT #禁止所有主机ping本机,包括本机

    iptables -t filter -A INPUT -p icmp -j ACCEPT #允许ping通,-A在前一条规则后添加

    PS:匹配到了就不会在匹配后面的规则

    iptables -t filter -I INPUT 1 -P icmp -j ACCEPT #指定序号插入,插入到第一条,他是立即生效

    iptables -vnL --line-numbers #查看行规则的位置

    iptables -t filter -I INPUT 1 -p icmp -j DROP #

    iptables -A INPUT -s 192.168.86.12 -p icmp -j REJECT #指定拒绝主机

    iptables -t filter -I INPUT 1 -s 192.168.86.12 -p tcp --dport 80 -j REJECT

    删除规则:

    iptables -D INPUT 需要删除的序号

    修改规则:(极其不推荐此功能)

    iptables -R INPUT 1 -s 192.168.86.12 -p tcp --dport 80 -j ACCEPT

    修改默认策略:

    iptables -P INPUT DROP

    拒绝整个网段:

    iptables -A INPUT -ptcp -s 192.168.86.0/24 --dport 80 -j REJECT

    拒绝多个网络是用逗号隔开

    拒绝多个端口是用:隔开,而且需要小的端口在前,大的端口在后

    iptables -A INPUT -p tcp -m -- dport 22:80 -j REJECT

    显示匹配:已-m扩展模块形式指出类型,多端口MAC地址,ip范围

    多端口:

    iptables -A INPUT -p tcp -m multiport -- dport 80,22,21,53 -j REJECT

    IP范围:

    iptables -A INPUT -p tcp -m iprange --src-range 192.168.86.11-192.168.86.14 --dport 80 -j REJECT

    MAC地址:

    iptables -A INPUT -m mac --mac-source mac地址 -j REJECT

    对指定设备进行操作:

    -i:数据的入口设备

    -o:数据的出口设备

    需求:所有从ens33接口进入的数据包,全部拒绝,而且指定IP地址DROP

    iptables -A INPUT -i ens33 -s 192.168.86.12,192.168.86.13 -j DROP

    iptables -A INPUT -p icmp -j ACCEPT

    备份:

    iptables-save > /opt/iptables.bak

    cat /etc/sysconfig/iptables

    iptables-restore < /opt/iptables.bak #这是临时导入

    cat /opt/iptables.bak > /etc/sysconfig/iptables #这是永久导入

    PS:导入配置文件之前,原文件一定要备份!

  • 相关阅读:
    测试开发路线大纲与总结
    【软件测试】常用ADB命令
    Thread的常用方法
    新手使用vue引入cesium
    java毕业设计校园自行车租赁系统mybatis+源码+调试部署+系统+数据库+lw
    G1D23-RAGA&报名蓝桥&Attackg&安装cuda&torch
    【数据结构】排序算法复杂度 及 稳定性分析 【图文详解】
    Design Compiler工具学习笔记(1)
    在直播系统中使用SRT协议传输视频
    机器视觉计算(一)
  • 原文地址:https://blog.csdn.net/m0_75000405/article/details/134261746