Linux系统安全:安全技术和防火墙

目录

一、安全技术和防火墙

1.安全技术

2.防火墙的分类

二、防火墙

1.iptables四表五链

2.黑白名单

3.iptables基本语法

4.iptables选项

5.控制类型

6.隐藏扩展模块

7.显示扩展模块

8.iptables规则保存

9.自定义链使用


一、安全技术和防火墙

1.安全技术

  • 入侵检测系统(Intrusion Detection Systems):特点是不阻断任何网络访问,量化、定位来自内外网络的威胁情况,主要以提供报警和事后监督为主,提供有针对性的指导措施和安全决策依据,类 似于监控系统一般采用旁路部署(默默的看着你)方式。

  • 入侵防御系统(Intrusion Prevention System):以透明模式工作,分析数据包的内容如:溢出攻击、拒绝服务攻击、木马、蠕虫、系统漏洞等进行准确的分析判断,在判定为攻击行为后立即予以 阻断,主动而有效的保护网络的安全,一般采用在线部署方式。(必经之路)

  • 防火墙( FireWall ):隔离功能,工作在网络或主机边缘,对进出网络或主机的数据包基于一定的规则检查,并在匹配某规则时由规则定义的行为进行处理的一组功能的组件,基本上的实现都是默 认情况下关闭所有的通过型访问,只开放允许访问的策略,会将希望外网访问的主机放在DMZ (demilitarized zone)网络中.

2.防火墙的分类

①按保护范围划分

主机防火墙:服务范围为当前一台主机。

网络防火墙:服务范围为防火墙一侧的局域网。

②按实现方式划分

硬件防火墙:在专用硬件级别实现部分功能的防火墙;另一个部分功能基于软件实现,华为、深信服等。

软件防火墙:运行于通用硬件平台之上的防火墙的应用软件,Windows 防火墙 ISA --> Forefront。

③按网络协议划分

包过滤防火墙:只对osi模型下四层生效,速度快拆包少。

网络层防火墙:OSI模型下四层,又称为包过滤防火墙。

应用层防火墙/代理服务器:proxy 代理网关,OSI模型七层。

二、防火墙

1.iptables四表五链

1.四表  (优先级排序)

1 raw表:确定是否对数据进行状态跟踪

2 mangle表:为数据包设置标记

3 nat表:修改数据包中的源、目标IP地址或端口

4 filter表:确定是否放行该数据包,起到过滤的作用,是最常用的一个表项

2.五链

 PREROUTING链: 在进行路由选择前处理数据包,用来修改目的地址。

   INPUT: 匹配进入了本机的数据包

   OUTPUT: 处理出本机的数据包,一般不在此链上做配置

   FORWARD: 处理转发数据包,匹配流经本机的数据包

   POSTROUTING链: 在进行路由选择后处理数据包

2.黑白名单

①黑名单:默认全部允许通过,添加谁才不允许谁通过。

②白名单:默认全部不允许通过,添加谁允许谁通过。

3.iptables基本语法

基本语法:表中有链,链中有规则

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

表名、链名用来指定 iptables 命令所操作的表和链,未指定表名时将默认使用 filter 表

管理选项:表示iptables规则的操作方式,如插入、增加、删除、查看等

匹配条件:用来指定要处理的数据包的特征,不符合指定条件的数据包将不会处理

控制类型指的是数据包的处理方式,如ACCEPT允许、REJECT拒绝、DROP丢弃等

4.iptables选项

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

 -I  :在指定行前插入一条,未指定序号默认作为第一条。-I INPUT 1表示在第一行前添加。

 -P :表示修改默认规则,默认允许流量通过,使用黑名单。

         iptables -P INPUT DROP或REJECT (白名单)

         iptables -P INPUT ACCEPT  (黑名单)

 -R :修改、替换某一条规则,-R INPUT 1表示修改第一条规则

 -D :表示删除单个,-D INPUT 1表示删除第一条规则

 -F :清除链中所有规则,清空iptables

 -vnL  -t  表名:查看指定 iptables规则列表,filter表可以省略-t

 -vnL -line-num :加上行号查看iptables规则列表

5.控制类型

控制类型需要使用 -j 跳转到某类型处理数据包。

①ACCEPT:允许通过

②REJECT :拒绝通过

③DROP:丢弃,会接受但是将数据包丢弃不处理6、隐藏扩展模块

④SNAT:源地址转换

⑤DNAT:目的地址转换

6.隐藏扩展模块

-sport  :匹配报文源端口

[root@localhost ~]#iptables -A INPUT -p tcp -s 192.168.21.0/24  --sport 80 -j ACCEPT
[root@localhost ~]#    允许所有源地址在192.168.21.0/24网段源端口为80的访问

--dport  :匹配报文目的端口

[root@localhost ~]#iptables -A INPUT -p tcp -s 192.168.21.0/24 --dport 8 -j ACCEPT
[root@localhost ~]#   允许所有源地址在192.168.21.0/24网段且目的端口为80的访问

7.显示扩展模块

扩展模块使用格式:  -m  {模块名}   [选项]

1.multiport模块

--dports端口1,端口2 ,等 使用,隔开最多指定15个不连续端口

[root@localhost ~]#iptables -A INPUT -p tcp -m multiport --sport 80,433 -j ACCEPT
[root@localhost ~]#    允许tcp协议源端口号为80、433的访问

--sports 端口1,端口2 ,等 使用,隔开最多指定15个不连续端口

[root@localhost ~]#iptables -A INPUT -p tcp -m multiport --sport 80,22 -j ACCEPT
[root@localhost ~]#    允许tcp协议目的端口号为80、22访问

2. iprange模块

iprange模块可以指定连续的(一般不是整个网络)ip地址范围

3.mac地址模块

指明源MAC地址,适用INPUT链,PREOUTING,POSTROUTING链。

--mac-source    源mac地址,只能指定源mac地址。

4.

string字符串模块

可以使用string模块指定字符串范围。

--from offset 字符串开始查询的地方。

--to offset     字符串结束查询的地方  。

例如:iptables -A OUTPUT -p tcp --sport 80 -m string --algo bm --from 62 --string "bilibili" -j REJECT

5.connlimit模块

据每客户端IP做并发连接数数量匹配,可防止Dos(Denial of Service,拒绝服务)攻击。

--connlimit-upto N     #连接的数量小于等于N时匹配

--connlimit-above N   #连接的数量大于N时匹配

例如:iptables -A INPUT -p tcp --dport 80 -m connlimit --connlimit-above 2 -j REJECT

6.stat模块

stat模块可以根据连接状态控制数据包。

NEW:新发出的请求;第一次发出的请求。

ESTABLISHED:new之后的正常连接状态。

例如:ipatables -A INPUT -m state --state NEW -j REJECT

           ipatables -A INPUT -m state --state ESTABLISHED -j ACCEPT

7.控制流量模块

limit控制流量模块,可以控制通过的包数以及每分钟或每小时通过的包数。

--limit     10/minute(1分钟之内只允许10个包通过)

--limit-burs    数字    例如: --limit-burst 5(允许通过前5个包,5个包不受影响)

8.iptables规则保存

将写好的规则导入一个文件中  iptables-save >文件名。

永久保存保存规则的文件重新写入   iptables-restore <保存规则的文件名。

[root@localhost ~]#iptables-save >/save
[root@localhost ~]#cat /save
# Generated by iptables-save v1.4.21 on Mon Feb 19 18:48:07 2024
*nat
:PREROUTING ACCEPT [15:1708]
:INPUT ACCEPT [1:52]
:OUTPUT ACCEPT [1:72]
:POSTROUTING ACCEPT [1:72]
:OUTPUT_direct - [0:0]
:POSTROUTING_ZONES - [0:0]
:POSTROUTING_ZONES_SOURCE - [0:0]
:POSTROUTING_direct - [0:0]
:POST_public - [0:0]
:POST_public_allow - [0:0]
:POST_public_deny - [0:0]
:POST_public_log - [0:0]
:PREROUTING_ZONES - [0:0]
:PREROUTING_ZONES_SOURCE - [0:0]
:PREROUTING_direct - [0:0]
:PRE_public - [0:0]
:PRE_public_allow - [0:0]
:PRE_public_deny - [0:0]
:PRE_public_log - [0:0]
-A PREROUTING -j PREROUTING_direct
-A PREROUTING -j PREROUTING_ZONES_SOURCE
-A PREROUTING -j PREROUTING_ZONES
-A OUTPUT -j OUTPUT_direct
-A POSTROUTING -s 192.168.122.0/24 -d 224.0.0.0/24 -j RETURN
-A POSTROUTING -s 192.168.122.0/24 -d 255.255.255.255/32 -j RETURN
-A POSTROUTING -s 192.168.122.0/24 ! -d 192.168.122.0/24 -p tcp -j MASQUERADE --to-ports 1024-65535
-A POSTROUTING -s 192.168.122.0/24 ! -d 192.168.122.0/24 -p udp -j MASQUERADE --to-ports 1024-65535
-A POSTROUTING -s 192.168.122.0/24 ! -d 192.168.122.0/24 -j MASQUERADE
-A POSTROUTING -j POSTROUTING_direct
-A POSTROUTING -j POSTROUTING_ZONES_SOURCE
-A POSTROUTING -j POSTROUTING_ZONES
-A POSTROUTING_ZONES -o ens33 -g POST_public
-A POSTROUTING_ZONES -g POST_public
-A POST_public -j POST_public_log
-A POST_public -j POST_public_deny
-A POST_public -j POST_public_allow
-A PREROUTING_ZONES -i ens33 -g PRE_public
-A PREROUTING_ZONES -g PRE_public
-A PRE_public -j PRE_public_log
-A PRE_public -j PRE_public_deny
-A PRE_public -j PRE_public_allow
COMMIT
# Completed on Mon Feb 19 18:48:07 2024
# Generated by iptables-save v1.4.21 on Mon Feb 19 18:48:07 2024
*mangle
:PREROUTING ACCEPT [1421:90360]
:INPUT ACCEPT [1421:90360]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [813:66803]
:POSTROUTING ACCEPT [820:68809]
:FORWARD_direct - [0:0]
:INPUT_direct - [0:0]
:OUTPUT_direct - [0:0]
:POSTROUTING_direct - [0:0]
:PREROUTING_ZONES - [0:0]
:PREROUTING_ZONES_SOURCE - [0:0]
:PREROUTING_direct - [0:0]
:PRE_public - [0:0]
:PRE_public_allow - [0:0]
:PRE_public_deny - [0:0]
:PRE_public_log - [0:0]
-A PREROUTING -j PREROUTING_direct
-A PREROUTING -j PREROUTING_ZONES_SOURCE
-A PREROUTING -j PREROUTING_ZONES
-A INPUT -j INPUT_direct
-A FORWARD -j FORWARD_direct
-A OUTPUT -j OUTPUT_direct
-A POSTROUTING -o virbr0 -p udp -m udp --dport 68 -j CHECKSUM --checksum-fill
-A POSTROUTING -j POSTROUTING_direct
-A PREROUTING_ZONES -i ens33 -g PRE_public
-A PREROUTING_ZONES -g PRE_public
-A PRE_public -j PRE_public_log
-A PRE_public -j PRE_public_deny
-A PRE_public -j PRE_public_allow
COMMIT
# Completed on Mon Feb 19 18:48:07 2024
# Generated by iptables-save v1.4.21 on Mon Feb 19 18:48:07 2024
*security
:INPUT ACCEPT [1424:90752]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [876:76517]
:FORWARD_direct - [0:0]
:INPUT_direct - [0:0]
:OUTPUT_direct - [0:0]
-A INPUT -j INPUT_direct
-A FORWARD -j FORWARD_direct
-A OUTPUT -j OUTPUT_direct
COMMIT
# Completed on Mon Feb 19 18:48:07 2024
# Generated by iptables-save v1.4.21 on Mon Feb 19 18:48:07 2024
*raw
:PREROUTING ACCEPT [1421:90360]
:OUTPUT ACCEPT [813:66803]
:OUTPUT_direct - [0:0]
:PREROUTING_ZONES - [0:0]
:PREROUTING_ZONES_SOURCE - [0:0]
:PREROUTING_direct - [0:0]
:PRE_public - [0:0]
:PRE_public_allow - [0:0]
:PRE_public_deny - [0:0]
:PRE_public_log - [0:0]
-A PREROUTING -j PREROUTING_direct
-A PREROUTING -j PREROUTING_ZONES_SOURCE
-A PREROUTING -j PREROUTING_ZONES
-A OUTPUT -j OUTPUT_direct
-A PREROUTING_ZONES -i ens33 -g PRE_public
-A PREROUTING_ZONES -g PRE_public
-A PRE_public -j PRE_public_log
-A PRE_public -j PRE_public_deny
-A PRE_public -j PRE_public_allow
COMMIT
# Completed on Mon Feb 19 18:48:07 2024
# Generated by iptables-save v1.4.21 on Mon Feb 19 18:48:07 2024
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [152:11732]
:FORWARD_IN_ZONES - [0:0]
:FORWARD_IN_ZONES_SOURCE - [0:0]
:FORWARD_OUT_ZONES - [0:0]
:FORWARD_OUT_ZONES_SOURCE - [0:0]
:FORWARD_direct - [0:0]
:FWDI_public - [0:0]
:FWDI_public_allow - [0:0]
:FWDI_public_deny - [0:0]
:FWDI_public_log - [0:0]
:FWDO_public - [0:0]
:FWDO_public_allow - [0:0]
:FWDO_public_deny - [0:0]
:FWDO_public_log - [0:0]
:INPUT_ZONES - [0:0]
:INPUT_ZONES_SOURCE - [0:0]
:INPUT_direct - [0:0]
:IN_public - [0:0]
:IN_public_allow - [0:0]
:IN_public_deny - [0:0]
:IN_public_log - [0:0]
:OUTPUT_direct - [0:0]
-A INPUT -i virbr0 -p udp -m udp --dport 53 -j ACCEPT
-A INPUT -i virbr0 -p tcp -m tcp --dport 53 -j ACCEPT
-A INPUT -i virbr0 -p udp -m udp --dport 67 -j ACCEPT
-A INPUT -i virbr0 -p tcp -m tcp --dport 67 -j ACCEPT
-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -j INPUT_direct
-A INPUT -j INPUT_ZONES_SOURCE
-A INPUT -j INPUT_ZONES
-A INPUT -m conntrack --ctstate INVALID -j DROP
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A INPUT -s 192.168.21.0/24 -p tcp -m tcp --sport 80 -j ACCEPT
-A INPUT -s 192.168.21.0/24 -p tcp -m tcp --dport 8 -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type 8 -j REJECT --reject-with icmp-port-unreachable
-A INPUT -p tcp -m multiport --sports 80,433 -j ACCEPT
-A INPUT -p tcp -m multiport --sports 80,22 -j ACCEPT
-A FORWARD -d 192.168.122.0/24 -o virbr0 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -s 192.168.122.0/24 -i virbr0 -j ACCEPT
-A FORWARD -i virbr0 -o virbr0 -j ACCEPT
-A FORWARD -o virbr0 -j REJECT --reject-with icmp-port-unreachable
-A FORWARD -i virbr0 -j REJECT --reject-with icmp-port-unreachable
-A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i lo -j ACCEPT
-A FORWARD -j FORWARD_direct
-A FORWARD -j FORWARD_IN_ZONES_SOURCE
-A FORWARD -j FORWARD_IN_ZONES
-A FORWARD -j FORWARD_OUT_ZONES_SOURCE
-A FORWARD -j FORWARD_OUT_ZONES
-A FORWARD -m conntrack --ctstate INVALID -j DROP
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
-A OUTPUT -o virbr0 -p udp -m udp --dport 68 -j ACCEPT
-A OUTPUT -j OUTPUT_direct
-A FORWARD_IN_ZONES -i ens33 -g FWDI_public
-A FORWARD_IN_ZONES -g FWDI_public
-A FORWARD_OUT_ZONES -o ens33 -g FWDO_public
-A FORWARD_OUT_ZONES -g FWDO_public
-A FWDI_public -j FWDI_public_log
-A FWDI_public -j FWDI_public_deny
-A FWDI_public -j FWDI_public_allow
-A FWDI_public -p icmp -j ACCEPT
-A FWDO_public -j FWDO_public_log
-A FWDO_public -j FWDO_public_deny
-A FWDO_public -j FWDO_public_allow
-A INPUT_ZONES -i ens33 -g IN_public
-A INPUT_ZONES -g IN_public
-A IN_public -j IN_public_log
-A IN_public -j IN_public_deny
-A IN_public -j IN_public_allow
-A IN_public -p icmp -j ACCEPT
-A IN_public_allow -p tcp -m tcp --dport 22 -m conntrack --ctstate NEW -j ACCEPT
COMMIT
# Completed on Mon Feb 19 18:48:07 2024
[root@localhost ~]#iptables -F
[root@localhost ~]#iptables-restore </save
[root@localhost ~]#iptables -nvl
iptables v1.4.21: unknown option "-nvl"
Try `iptables -h' or 'iptables --help' for more information.
[root@localhost ~]#iptables -nvL
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 ACCEPT     udp  --  virbr0 *       0.0.0.0/0            0.0.0.0/0            udp dpt:53
    0     0 ACCEPT     tcp  --  virbr0 *       0.0.0.0/0            0.0.0.0/0            tcp dpt:53
    0     0 ACCEPT     udp  --  virbr0 *       0.0.0.0/0            0.0.0.0/0            udp dpt:67
    0     0 ACCEPT     tcp  --  virbr0 *       0.0.0.0/0            0.0.0.0/0            tcp dpt:67
   65  3788 ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            ctstate RELATED,ESTABLISHED
    0     0 ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0           
    0     0 INPUT_direct  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
    0     0 INPUT_ZONES_SOURCE  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
    0     0 INPUT_ZONES  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
    0     0 DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0            ctstate INVALID
    0     0 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            reject-with icmp-host-prohibited
    0     0 ACCEPT     tcp  --  *      *       192.168.21.0/24      0.0.0.0/0            tcp spt:80
    0     0 ACCEPT     tcp  --  *      *       192.168.21.0/24      0.0.0.0/0            tcp dpt:8
    0     0 REJECT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0            icmptype 8 reject-with icmp-port-unreachable
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            multiport sports 80,433
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            multiport sports 80,22

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 ACCEPT     all  --  *      virbr0  0.0.0.0/0            192.168.122.0/24     ctstate RELATED,ESTABLISHED
    0     0 ACCEPT     all  --  virbr0 *       192.168.122.0/24     0.0.0.0/0           
    0     0 ACCEPT     all  --  virbr0 virbr0  0.0.0.0/0            0.0.0.0/0           
    0     0 REJECT     all  --  *      virbr0  0.0.0.0/0            0.0.0.0/0            reject-with icmp-port-unreachable
    0     0 REJECT     all  --  virbr0 *       0.0.0.0/0            0.0.0.0/0            reject-with icmp-port-unreachable
    0     0 ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            ctstate RELATED,ESTABLISHED
    0     0 ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0           
    0     0 FORWARD_direct  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
    0     0 FORWARD_IN_ZONES_SOURCE  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
    0     0 FORWARD_IN_ZONES  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
    0     0 FORWARD_OUT_ZONES_SOURCE  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
    0     0 FORWARD_OUT_ZONES  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
    0     0 DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0            ctstate INVALID
    0     0 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            reject-with icmp-host-prohibited

Chain OUTPUT (policy ACCEPT 37 packets, 2972 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 ACCEPT     udp  --  *      virbr0  0.0.0.0/0            0.0.0.0/0            udp dpt:68
   37  2972 OUTPUT_direct  all  --  *      *       0.0.0.0/0            0.0.0.0/0           

Chain FORWARD_IN_ZONES (1 references)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 FWDI_public  all  --  ens33  *       0.0.0.0/0            0.0.0.0/0           [goto] 
    0     0 FWDI_public  all  --  *      *       0.0.0.0/0            0.0.0.0/0           [goto] 

Chain FORWARD_IN_ZONES_SOURCE (1 references)
 pkts bytes target     prot opt in     out     source               destination         

Chain FORWARD_OUT_ZONES (1 references)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 FWDO_public  all  --  *      ens33   0.0.0.0/0            0.0.0.0/0           [goto] 
    0     0 FWDO_public  all  --  *      *       0.0.0.0/0            0.0.0.0/0           [goto] 

Chain FORWARD_OUT_ZONES_SOURCE (1 references)
 pkts bytes target     prot opt in     out     source               destination         

Chain FORWARD_direct (1 references)
 pkts bytes target     prot opt in     out     source               destination         

Chain FWDI_public (2 references)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 FWDI_public_log  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
    0     0 FWDI_public_deny  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
    0     0 FWDI_public_allow  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
    0     0 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0           

Chain FWDI_public_allow (1 references)
 pkts bytes target     prot opt in     out     source               destination         

Chain FWDI_public_deny (1 references)
 pkts bytes target     prot opt in     out     source               destination         

Chain FWDI_public_log (1 references)
 pkts bytes target     prot opt in     out     source               destination         

Chain FWDO_public (2 references)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 FWDO_public_log  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
    0     0 FWDO_public_deny  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
    0     0 FWDO_public_allow  all  --  *      *       0.0.0.0/0            0.0.0.0/0           

Chain FWDO_public_allow (1 references)
 pkts bytes target     prot opt in     out     source               destination         

Chain FWDO_public_deny (1 references)
 pkts bytes target     prot opt in     out     source               destination         

Chain FWDO_public_log (1 references)
 pkts bytes target     prot opt in     out     source               destination         

Chain INPUT_ZONES (1 references)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 IN_public  all  --  ens33  *       0.0.0.0/0            0.0.0.0/0           [goto] 
    0     0 IN_public  all  --  *      *       0.0.0.0/0            0.0.0.0/0           [goto] 

Chain INPUT_ZONES_SOURCE (1 references)
 pkts bytes target     prot opt in     out     source               destination         

Chain INPUT_direct (1 references)
 pkts bytes target     prot opt in     out     source               destination         

Chain IN_public (2 references)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 IN_public_log  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
    0     0 IN_public_deny  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
    0     0 IN_public_allow  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
    0     0 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0           

Chain IN_public_allow (1 references)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:22 ctstate NEW

Chain IN_public_deny (1 references)
 pkts bytes target     prot opt in     out     source               destination         

Chain IN_public_log (1 references)
 pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT_direct (1 references)
 pkts bytes target     prot opt in     out     source               destination         
[root@localhost ~]#

9.自定义链使用

①自定义链添加:iptables -N web(链名) 创建链

②自定义链改名:iptabels -E web(原来名称) (新名称) 自定义链改名

③创建自定义链规则:iptables -t filter -I web -p icmp -j REJECT 创建自定义规则,iptables的链中添加一条对应到自定义链中才能生效

④iptabales创建对应链规则然后跳转自定义链web:iptables -t filter -I INPUT -p icmp -j web

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/395404.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

AMD FPGA设计优化宝典笔记(5)低频全局复位与高扇出

亚军老师的这本书《AMD FPGA设计优化宝典》&#xff0c;他主要讲了两个东西&#xff1a; 第一个东西是代码的良好风格&#xff1b; 第二个是设计收敛等的本质。 这个书的结构是一个总论&#xff0c;加上另外的9个优化&#xff0c;包含的有&#xff1a;时钟网络、组合逻辑、触发…

在ubuntu20.04 上配置 qemu/kvm linux kernel调试环境

一&#xff1a;安装qemu/kvm 和 virsh qemu/kvm 是虚拟机软件&#xff0c;virsh是管理虚拟机的命令行工具&#xff0c;可以使用virsh创建&#xff0c;编辑&#xff0c;启动&#xff0c;停止&#xff0c;删除虚拟机。 &#xff08;1&#xff09;&#xff1a;安装之前&#xff0c…

Matlab|基于支持向量机的电力短期负荷预测【最小二乘、标准粒子群、改进粒子群】

目录 主要内容 部分代码 结果一览 下载链接 主要内容 该程序主要是对电力短期负荷进行预测&#xff0c;采用三种方法&#xff0c;分别是最小二乘支持向量机&#xff08;LSSVM&#xff09;、标准粒子群算法支持向量机和改进粒子群算法支持向量机三种方法对负荷进行…

Shiro-05-shiro 基础知识补充密码学+哈希散列

密码学 密码术是隐藏或混淆数据的过程&#xff0c;因此窥探眼睛无法理解它。 Shiro的加密目标是简化JDK的加密支持并使之可用。 需要特别注意的是&#xff0c;密码通常不是特定于主题的&#xff0c;因此Shiro API的其中一个领域不是特定于主题的。 即使未使用“主题”&…

Android 架构组件全示例

Android 架构组件全示例 Android架构组件属于Jetpack的组成部分&#xff0c;彻底改变了开发人员构建健壮且易于维护的Android应用程序的方式。通过Room、Lifecycle-aware组件、ViewModels、LiveData、Paging、Navigation、ViewBinding和WorkManager等组件&#xff0c;开发人员…

K8s进阶之路-命名空间级-服务发现 :

服务发现&#xff1a; Service&#xff08;东西流量&#xff09;&#xff1a;集群内网络通信、负载均衡&#xff08;四层负载&#xff09;内部跨节点&#xff0c;节点与节点之间的通信&#xff0c;以及pod与pod之间的通信&#xff0c;用Service暴露端口即可实现 Ingress&#…

python绘制k线图均线图

AAPL.csv 数据文件 Date,Close,Volume,Open,High,Low 06/23/2023,$186.68,53117000,$185.55,$187.56,$185.01 06/22/2023,$187.00,51245330,$183.74,$187.045,$183.67 06/21/2023,$183.96,49515700,$184.90,$185.41,$182.5901 06/20/2023,$185.01,49799090,$184.41,$1…

unity学习(15)——服务器组装(1)

1.新建好的c#项目如下&#xff1a; 文件夹中内容如下&#xff1a; 此时已经可以通过vs2022打开.sln文件&#xff0c;就可以打开项目了。 2.我们把逆向后&#xff08;主程序&#xff09;的内容的代码粘贴过去。有些逆向功底&#xff0c;很快可以定位到&#xff0c;服务器的入口…

uniapp项目准备工作

1.封装请求 export const baseUrl function getHeaders () {let token uni.getStorageSync(token)let header {"access-token":token,// X-Requested-With: XMLHttpRequest,Content-Type: application/json; charsetUTF-8}return header } function reLogin(){/…

Leetcoder Day14|二叉树part03

语言&#xff1a;Java/C 104.二叉树的最大深度​​​​​​​ 给定一个二叉树&#xff0c;找出其最大深度。 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。 说明: 叶子节点是指没有子节点的节点。 示例&#xff1a; 给定二叉树 [3,9,20,null,null,15,7]&#xf…

如何配置OSS中的文件是预览还是下载

如何决定文件是预览还是下载 1. 首先需要绑定自己的二级域名&#xff0c;下载时使用自己的二级域名下载 链接&#xff1a;关于绑定域名的官方文档 2. 文件需要配置正确的请求头 链接&#xff1a; 关于设置文件Content-Type的官方文档 2.1 设置或修改文件请求头包含多种方式…

【C++】C++11中

C11中 1.lambda表达式2.可变参数模板3.包装器 1.lambda表达式 在前面我们学习过仿函数。仿函数的作用到底是干什么的呢&#xff1f; 它为了抛弃函数指针&#xff01; 主要是因为函数指针太难学了 就比如下面这个&#xff0c;看着也挺难受的。 它的参数是一个函数指针&#x…

IO线程-day2

1> 使用fread和fwrite完成两个文件的拷贝 程序&#xff1a; #define MAXSIZE 1024 #include<myhead.h>int main(int argc, char const *argv[]) {FILE *srcfpNULL;FILE *destfpNULL;if(!(srcfpfopen("pm.bmp","r")))PRINT_ERR("");if…

【漏洞复现-通达OA】通达OA video_file.php 任意文件下载漏洞

一、漏洞简介 通达OA video_file.php文件存在任意文件下载漏洞&#xff0c;攻击者通过漏洞可以读取服务器敏感文件。 二、影响版本 ● 通达OA2011 三、资产测绘 ● hunterapp.name"通达 OA" ● 特征 四、漏洞复现 GET /general/mytable/intel_view/video_file.…

比特浏览器bit_selenium3bit_selenium4使用

bit_selenium3 from selenium import webdriver from selenium.common.exceptions import TimeoutException from selenium.webdriver.common.keys import Keys from selenium.webdriver.chrome.options import Options from bit_api import *# /browser/open 接口会返回 selen…

【C/C++】实现Reactor高并发服务器 完整版

代码结构 文件介绍 InetAddress.h InetAddress类 ip和端口设置 Socket.h Socket类 设置fd Epoll.h epollfd 管理类 Channel.h Channel类 管理epoll以及对应回调函数实现 EventLoop.h EventLoop事件循环类 TcpServer.h 服务器类 tcpepoll.cpp 主函数 InetAddress.h #if…

腾讯云OSS文件上传功能

腾讯云COS介绍 腾讯云COS&#xff08;Cloud Object Storage&#xff09;是一种基于对象的存储服务&#xff0c;用于存储和管理海量的非结构化数据&#xff0c;如图片、音视频文件、备份数据等。它具有以下特点和优势&#xff1a; 高可靠性&#xff1a;采用分布式存储架构&…

什么是485远程水表?

485远程水表是一种利用RS485通信协议进行数据传输的智能水表&#xff0c;它具有远程读数、实时监控、数据存储等功能&#xff0c;为水资源管理和居民用水提供了便捷。在我国&#xff0c;随着物联网、大数据等技术的发展&#xff0c;485远程水表得到了广泛的应用&#xff0c;为智…

数据库索引面试的相关问题

查看索引的执行计划 索引失效的情况 1、索引列上做了计算&#xff0c;函数&#xff0c;类型转换等操作。索引失效是因为查询过程需要扫描整个索引并回表。代价高于直接全表扫描。 Like匹配使用了前缀匹配符“%abc” 字符串不加引号导致类型转换。 原因&#xff1a; 常见索…

Java Thread 线程安全问题 上锁 解锁

模拟问题 package com.zhong.thread.usethread;import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor;/*** ClassName : ThreadProject* Description : 线程安全问题小案例* Author : zhx* Date: 2024-02-19 13:21*/ public class ThreadPr…
最新文章