安全技术和防火墙——iptables防火墙

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 一、安全技术和防火墙
    • (一)、安全技术
      • 补充说明:——防水墙
    • (二)、防火墙的分类
      • 1、按照保护类型划分:
      • 2、按实现方式划分:
      • 3、按网络协议划分:
    • (三)、Linux包过滤防火墙的概述
      • 3.1 、Linux防火墙
        • (1)、netfilter——内核态(包过滤功能体系)
        • (2)、iptables——用户态(管理防火墙规则)
      • 3.2、包过滤的工作层次
  • 二、Linux防火墙的基本认识
    • (一)、Netfilter——内核态(包过滤功能体系)
    • (二)、防火墙工具介绍
      • 1、iptables——用户态(管理防火墙规则)
      • 2、firewalld——前端管理工具
      • 3、nftables
      • 3、netfilter中五个勾子函数和报文流向
        • 内核中数据包的传输过程
        • 数据包过滤的匹配流程
          • 匹配流程示意图
  • 三、firewalld服务
    • (一)、介绍firewalld
    • (二)、**归入zone顺序:**
    • (三)、firewalld zone 分类
    • (四)、预定义服务
  • 四、 iptables
    • (一)、iptables的组成概述
    • (二)、 netfilter/iptables关系:
      • 1、 netfilter:
      • 2、iptables :
    • (三)、五个表table:filter、nat、mangle、raw、security
    • (四)、 iptables的表、链结构
      • 1、规则链
      • 2、 默认包括4种规则链
      • 3、规则表
      • 4、默认包括4中规则链
      • 5、iptables 的四表五链小结
    • (五)、实际操作
      • (一)、关闭防火墙,并安装iptables
      • (二)、安装iptables,并开启iptables 服务
      • (三)、配置方式
        • 1、基本语法:
          • 1.1、命令格式
          • 1.2、数据包的常见控制类型——注:需要大写
        • 2、选项
          • 2.1、添加、查看、删除规则等基本操作
        • 3、增加新的防火墙规则
          • 3.1、iptables -t filter -A INPUT -p icmp -j REJECT 不允许任何主机ping本主机 DROP(丢弃数据包不回复) ACCEPT(允许)
          • 3.2、iptables -t filter -A INPUT -p icmp -j DROP ——(DROP 直接把数据包丢弃就压根不会理你,但是你要是清空就立即生效)
          • 3.3、iptables -I INPUT 2 -p tcp --dport 22 -j ACCEPT——指定端口号之前一定要加 -p +协议
        • 4、查看规则表
          • 4.1、iptables -vnL ——(v:表示详细信息 ;n :表示以数字形式显示 L : 查看 注意:L 一定放最后)
          • 4.2、iptables -vnL --line-numbers
        • 5、删除、清空规则
          • 5.1、iptables -F 表示清空所有策略——亦可以指定链中或者表中的规则
          • 5.2、删除链中规则需要指定序号 iptables -t filter -D INPUT 5 表示将表filter中删除 链INPUT 里序号为5的规则
        • 6、设置默认策略
          • 6.1、白名单和黑名单
        • 7、通用匹配
          • 7.1、设置默认策略并使除了icmp(ping)都可以通过本主机
        • 8、隐含匹配


前言

提示:这里可以添加本文要记录的大概内容:


提示:以下是本篇文章正文内容,下面案例可供参考

一、安全技术和防火墙

(一)、安全技术

入侵检测系统(Intrusion Detectlan 5ysteins)特点是不阻断任何阿终访问,迷化。定位来自内处网络的威胁情况.王要以提供报熙和票后监督为主,提供有针对性的指异措施和安全决筏依据,类似于监控系统一般采用旁路部蓿「默默的看看你)方式。

入侵防御系统(Intrusion Preuention 5ysteml:以选明模式工作,分析致据包的内容如〉褴出攻击,柜绝服务攻击,木马.镇虫系统漏洞寺进行准确的分析判断,在判定为攻击行为后立即予以阻断,主动而有效的保护网络的安全,一没采用在线部署方式。〔必经之路)

防火墙(FineWwall):隔高功能,工作在网络或王机边缘,对逛出网络或王机的数据包篁于一定的规则检查,并在匹配某翔现则⒂由规则定义的行为进行处理的一组功能的组件,基本上的买现郡是默认情况下关闭所有的通过型切问只开放允许访阿的策略;会将希望外网访问的主机放在DNZ.(clemilitanzed zone网络中.

补充说明:——防水墙

防水墙:广泛意义上的防水墙:防水墙(waterwall),与防火墙相对,是一种防止内部信息泄露的安全铲产品。 网络、外设接口、存储介质和打印机或信息泄露的全部途径,防水墙针对这两种泄密途径,在事前、事中、事后进行全面保护。其与防病毒产品、外部安全产品一起的完整的网络安全体系。

安全技术和防火墙——iptables防火墙_第1张图片

(二)、防火墙的分类

1、按照保护类型划分:

主机防火墙:服务范围为当前一台主机
网络防火墙:服务范围为防火墙一侧的局域网

2、按实现方式划分:

硬件防火墙:在专用硬件级别实现部分功能的防火墙;另一个部分功能基于软件实现,如:华为,山石hilitone,天融信,启明星辰,绿盟,深信服,PaloAlto , fortinet, Cisco, Checkpoint,NetScreen(uniper2004年40亿美元收购)等。
软件防火墙:运行于通用硬件平台之上的防火墙的应用软件,Windows防火墙ISA --> Forefront。

3、按网络协议划分:

网络层防火墙:OSI模型下四层,又称为包过滤防火墙。
应用层防火墙/代理服务器: proxy 代理网关,OSl模型七层。

包过滤防火墙

网络层对数据包进行选择,选择的依据是系统内设置的过滤逻辑,被称为访问控制列表(ACL),通过检查数据流中每个数据的源地址,目的地址,所用端口号和协议状态等因素,或他们的组合来确定是否允许该数据包通过。

优点:对用户来说透明,处理速度快且易于维护

缺点:无法检查应用层数据,如病毒等缺点:无法检查应用层数据,如病毒等

应用层防火墙

应用层防火墙/代理服务型防火墙,也称为代理服务器(Proxy Server)
将所有跨越防火墙的网络通信链路分为两段
内外网用户的访问都是通过代理服务器上的"链接"来实现
优点:在应用层对数据进行检查,比较安全

缺点:增加防火墙的负载

提示:现实生产环境中所使用的防火墙一般都是二者结合体,即先检查网络数据,通过之后再送到应用层去检查

(三)、Linux包过滤防火墙的概述

3.1 、Linux防火墙

(1)、netfilter——内核态(包过滤功能体系)

位于Linux内核中的包过滤功能体系
称为Linux防火墙的“内核态

(2)、iptables——用户态(管理防火墙规则)

位于/sbin/iptables,用来管理防火墙规则的工具
称为Linux防火墙的“用户态

3.2、包过滤的工作层次

主要是网络层,针对IP数据包(网络层)
体现在对包内的IP地址、端口等信息的处理上

二、Linux防火墙的基本认识

(一)、Netfilter——内核态(包过滤功能体系)

Linux防火墙是由Netfilter组件提供的,Netfilter工作在内核空间,集成在linux内核中
Netfilter是Linux 2.4.x之后新一代的Linux防火墙机制,是linux内核的一个子系统。Netfilter采用模块化设计,具有良好的可扩充性,提供扩展各种网络服务的结构化底层框架。Netfilter与IP协议栈是无缝契合,并允许对数据报进行过滤、地址转换、处理等操作
lNetfilter官文档:https://netfilter.org/documentation/

(二)、防火墙工具介绍

1、iptables——用户态(管理防火墙规则)

由软件包iptables提供的命令行工具,工作在用户空间,用来编写规则,写好的规则被送往netfilter,告诉内核如何去处理信息包

iptables --version  查看版本

在这里插入图片描述
查看命令的帮助(说明书)
在这里插入图片描述

2、firewalld——前端管理工具

从centOS7版开始引入了新的前端管理工具软件包:
firewalld
firewalld-config
管理工具:
firewall-cmd命令行工具
firewall-config图形工作

3、nftables

此软件是CentOS 8 新特性,Nftables最初在法国巴黎的Netfilter Workshop 2008上发表,然后由长期的netfilter核心团队成员和项目负责人Patrick McHardy于2009年3月发布。它在2013年末合并到Linux内核中,自2014年以来已在内核3.13中可用。

它重用了netfilter框架的许多部分,例如连接跟踪和NAT功能。它还保留了命名法和基本iptables设计的几个部分,例如表,链和规则。就像iptables一样,表充当链的容器,并且链包含单独的规则,这些规
则可以执行操作,例如丢弃数据包,移至下一个规则或跳至新链。
从用户的角度来看,nftables添加了一个名为nft的新工具,该工具替代了iptables,arptables和ebtables中的所有其他工具。从体系结构的角度来看,它还替换了内核中处理数据包过滤规则集运行时评估的那些部分。

3、netfilter中五个勾子函数和报文流向

Netfilter在内核中选取五个位置放了五个hook(勾子)function(INPUT、OUTPUT、FORWARD、PREROUTING、POSTROUTING),而这五个hook function向用户开放,用户可以通过一个命令工具(iptables)向其写入规则。

由信息过滤表(table)组成,包含控制IP包处理的规则集(rules),规则被分组放在链(chain)上

提示:从 Linux kernel 4.2 版以后,Netfilter 在prerouting 前加了一个 ingress 勾子函数。可以使用这个新的入口挂钩来过滤来自第2层的流量,这个新挂钩比预路由要早,基本上是 tc 命令(流量控制工具)的替代品。

www.taoboa.com:80
www.taoboa.com:8080
iptabales 调用 netfiter 功能 5个 函数
安全技术和防火墙——iptables防火墙_第2张图片

内核中数据包的传输过程

1、当一个数据包进入网卡时,数据包首先进入PREROUTING链,内核根据数据包目的IP判断是否需要 转送出去;
2、如果数据包是进入本机的,数据包就会沿着图向下移动,到达INPUT链。数据包到达INPUT链后,任何进程都会收到它。本机上运行的程序可以发送数据包,这些数据包经过OUTPUT链,然后到达;
3、如果数据包是要转发出去的,且内核允许转发,数据包就会向右移动,经过FORWARD链,然后到达POSTROUTING链输出。

**三种报文流向**

流入本机:PREROUTING --> INPUT-->用户空间进程(访问我的服务)
流出本机:用户空间进程 -->OUTPUT--> POSTROUTING(穿过我)
转发:PREROUTING --> FORWARD --> POSTROUTING(分摊流量)

数据包过滤的匹配流程

#1、入站:PREROUTING→INPUT
#2、出站: OUTPUT→>POSTROUTING
#3、转发:PREROUTING→>FORWARD>POSTROUTING

规则链内的匹配顺序
按顺序依次检查,匹配即停止(LOG策略例外)
若找不到相匹配的规则,则按该链的默认策略处理

匹配流程示意图

安全技术和防火墙——iptables防火墙_第3张图片

三、firewalld服务

(一)、介绍firewalld

firewalld是CentoS 7.0新推出的管理netilter的用户空间软件工具.也被ubuntu18.04版以上所支持(apt install firewalld安装即可)firewalld是配置和监控防火墙规则的系统守护进程。可以实iptables jpbtables,ebtables的功能firewalld服务由firewalld包提供

(二)、归入zone顺序:

先根据数据包中源地址,将其纳为某个zone
纳为网络接口所属zone
纳入默认zone,默认为public zone,管理员可以改为其它zone
网卡默认属于public zone,lo网络接口属于trusted zone

firewalld支持划分区域zone,每个zone可以设置独立的防火墙规则
1.已经存在了zone区域
⒉.使用firewall,就是将特定的流量关联到某个zone中
通过源网段关联zone
通过网卡关联zone区域
如果两者都没有关联的数据报文,那就会去default zonec
3.进入到zone以后,开始匹配zone内的规则

(三)、firewalld zone 分类

zone名称 默认配置
trusted 允许所有流量
home 拒绝除和传出流量相关的,以及ssh,mdsn,ipp-client,samba-client,dhcpv6-client预 定义服务之外其它所有传入流量
internal 和home相同
work 拒绝除和传出流量相关的,以及ssh,ipp-client,dhcpv6-client预定义服务之外的其它所有传入流量
public 拒绝除和传出流量相关的,以及ssh,dhcpv6-client预定义服务之外的其它所有传入流 量,新加的网卡默认属于public zone
external 拒绝除和传出流量相关的,以及ssh预定义服务之外的其它所有传入流量,属于external zone的传出ipv4流量的源地址将被伪装为传出网卡的地址。
dmz 拒绝除和传出流量相关的,以及ssh预定义服务之外的其它所有传入流量
block 拒绝除和传出流量相关的所有传入流量
drop 拒绝除和传出流量相关的所有传入流量(甚至不以ICMP错误进行回应)

(四)、预定义服务

服务名称 配置
ssh Local SSH server. Traffic to 22/tcp
dhcpv6- client Local DHCPv6 client. Traffic to 546/udp on the fe80::/64 IPv6 network
ipp- client Local IPP printing. Traffic to 631/udp.
samba- client Local Windows file and print sharing client. Traffic to 137/udp and 138/udp.
mdns Multicast DNS (mDNS) local-link name resolution. Traffic to 5353/udp to the 224.0.0.251 (IPv4) or ff02::fb (IPv6) multicast addresses.

四、 iptables

(一)、iptables的组成概述

Linux 的防火墙体系主要工作在网络层,针对 TCP/IP 数据包实施过滤和限制,属于典型的包过滤防火墙(或称为网络层防火墙)。Linux 系统的防火墙体系基于内核编码实现, 具有非常稳定的性能和高效率,也因此获得广泛的应用。

netfilter/iptables:IP 信息包过滤系统,它实际上由两个组件 netfilter 和 iptables组成。
主要工作在网络层,针对IP数据包,体现在对包内的IP地址、端口等信息的处理。

(二)、 netfilter/iptables关系:

1、 netfilter:

属于“内核态”又称内核空间(kernel space)的防火墙功能体系。linux 好多东西都是内核态 用户态,那我们运维人员关注的是用户态, 内核我们关注不是很多,内核基本是我们开发人员关心的事情是内核的一部分,由一些信息包过滤表组成,这些表包含内核用来控制信息包过滤处理的规则集。

2、iptables :

属于“用户态”(User Space, 又称为用户空间)的防火墙管理体系。是一种用来管理Linux防火墙的命令程序,它使插入、修改和删除数据包过滤表中的规则变得容易,通常位于/sbin/iptables目录下。
netfilter/iptables后期简称为iptables。iptables是基于内核的防火墙,其中内置了raw、mangle、 nat和filter四个规则表。表中所有规则配置后,立即生效,不需要重启服务。

iptables由五个表table和五个链chain以及一些规则组成
安全技术和防火墙——iptables防火墙_第4张图片

(三)、五个表table:filter、nat、mangle、raw、security

filter 过滤规则表,根据预定义的规则过滤符合条件的数据包,默认表
nat network address translation 地址转换规则表
mangle 修改数据标记位规则表
raw 关闭启用的连接跟踪机制,加快封包穿越防火墙速度
security 用于强制访问控制(MAC)网络规则,由Linux安全模块(如SELinux)实现
优先级由高到低的顺序为:
security -->raw-->mangle-->nat-->filter

(四)、 iptables的表、链结构

1、规则链

规则的作用:对数据包进行过滤或处理
链的作用:容纳各种防火墙规则
链的分类依据:处理数据包的不同时机

2、 默认包括4种规则链

INPUT:处理入站数据包.
OUTPUT:处理出站数据包
FORWARD:处理转发数据包
POSTROUTING链:在进行路由选择后处理数据包PREROUTING链:在进行路由选择前处理数据包

3、规则表

表的作用:容纳各种规则链
表的划分依据:防火墙规则的作用相似

4、默认包括4中规则链

#filter|过滤规则表,根据预定义的规则过滤符合条件的数据包,默认表
#nat|network address translation 地址转换规则表
mangle|修改数据标记位规则表               
raw|关闭启用的连接跟踪机制,加快封包穿越防火墙速度
规则表之间的顺序
raw→mangle→>nat→>filter规则链之间的顺序

安全技术和防火墙——iptables防火墙_第5张图片

5、iptables 的四表五链小结

raw:主要用来决定是否对数据包进行状态跟踪 包含两个规则链,OUTPUT、PREROUTING

mangle :  修改数据包内容,用来做流量整形的,给数据包设置标记。包含五个规则链,INPUT、 OUTPUT、 FORWARD、 PREROUTING、 POSTROUTING

#nat:负责网络地址转换,用来修改数据包中的源、目标IP地址或端口。包含三个规则链,OUTPUT、PREROUTING、POSTROUTING。

#filter:负责过滤数据包,确定是否放行该数据包(过滤)。包含三个链,即PREROUTING、POSTROUTING、OUTPUT

#注:在iptables 的四个规则表中,mangle 表 和raw表的应用相对较少

 INPUT:  处理入站数据包,匹配目标IP为本机的数据包。
- OUTPUT:  处理出站数据包,一般不在此链上做配置。
- FORWARD:  处理转发数据包,匹配流经本机的数据包。
- PREROUTING链:  在进行路由选择前处理数据包,用来修改目的地址,用来做DNAT。相当于把内网服务器的IP和端口映射到路由器的外网IP和端口上。
- POSTROUTING链:  在进行路由选择后处理数据包,用来修改源地址,用来做SNAT。相当于内网通过路由器NAT转换功能实现内网主机通过一个公网IP地址上网。

(五)、实际操作

CentOS7默认使用firewalld防火墙,没有安装iptables,若想使用iptables防火墙。必须先关闭firewalld防火墙,再安装iptables

(一)、关闭防火墙,并安装iptables

关闭防火墙
systemctl stop firewalld.service
# 关闭防火墙服务
setenforce 0
#关闭核心防护
### 关闭防火墙软件

1. 临时关闭命令 systemctl stop firewalld.service
2. 查看服务状态 systemctl status firewalld.service
3. 永久关闭(下次开机不自启动) systemctl disable firewalld.service 


####关闭 SELinux
对于 SELinux,初学者可以这么理解,它是部署在 Linux 上用于增强系统安全的功能模块。
1. 临时关闭命令 setenforce 0     
2. 查看服务状态 /usr/sbin/sestatus -v
3. 永久关闭(下次开机不自启动)修改vim /etc/selinux/config     将配置文件中的SELINUX=enforcing改为SELINUX=disabled
设置永久关闭之后需要重启机器


systemctl disable  --now  firewalld.service
##开机不自启  并且立即关闭
systemctl enable  --now  firewalld.service
##开机自启  并且 立即开启

安全技术和防火墙——iptables防火墙_第6张图片

(二)、安装iptables,并开启iptables 服务

yum -y install iptables iptables-services
systemctl start iptables.service
systemctl enable iptables.service

安全技术和防火墙——iptables防火墙_第7张图片

(三)、配置方式

#iptables防火墙的配置方法:
#1、使用iptables命令行。
2、使用system-config-firewall centso7不能使用 centos 6可以使用

1、基本语法:

安全技术和防火墙——iptables防火墙_第8张图片

1.1、命令格式
命令格式
#iptables  [-t  表名]   管理选项   [链名]   [匹配条件]   [-j  控制类型]

#  -t   nat    filter   如果不指定  默认为filter



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

#管理选项:表示iptables规则的操作方式,如插入、增加、删除、查看等;
#匹配条件:用来指定要处理的数据包的特征,不符合指定条件的数据包将不会处理;
#控制类型指的是数据包的处理方式,如允许、拒绝、丢弃等。

**注意事项**#不指定表名时,默认指filter表
#不指定链名时,默认指表内的所有链
#除非设置链的默认策略,否则必须指定匹配条件
#选项、链名、控制类型使用大写字母,其余均为小写
1.2、数据包的常见控制类型——注:需要大写

对于防火墙,数据包的控制类型非常关键,直接关系到数据包的放行、封堵及做相应的日志记录等。在 iptables 防火墙体系中,最常用的几种控制类型如下:

#ACCEPT:允许数据包通过。 
#DROP:直接丢弃数据包,不给出任何回 应信息。 
#REJECT:拒绝数据包通过,必要时会给数据发送端一个响应信息。 
#LOG:在/var/log/messages 文件中记录日志信息,然后将数据包传递给下一条规则。 
SNAT:修改数据包的源地址。
DNAT:修改数据包的目的地址。
MASQUERADE:伪装成一个非固定公网IP地址。

防火墙规则的“匹配即停止”对于 LOG 操作来说是一个特例,因为 LOG 只是一种辅助 动作,并没有真正处理数据包。

2、选项

2.1、添加、查看、删除规则等基本操作
管理选项 用法示例
-A 在指定链末尾追加一条 iptables -A INPUT (操作)
-I 在指定链中插入一条新的,未指定序号默认作为第一条 iptables -I INPUT (操作)
-P 指定默认规则 iptables -P OUTPUT ACCEPT (操作)
-D 删除 iptables -t nat -D INPUT 2 (操作)
-p 服务名称-R修改、替换某一条规则 iptables -t nat -R INPUT (操作)
-L 查看 iptables -t nat -L (查看)
-n 所有字段以数字形式显示(比如任意ip地址是0.0.0.0而不是anywhere,比如显示协议端口号而不是服务名) iptables -L -n,iptables -nL,iptables -vnL (查看)
-v 查看时显示更详细信息,常跟-L一起使用 (查看)
–line-number 规则带编号 iptables -t nat -L -n --line-number /iptables -t nat -L --line-number
-F 清除链中所有规则 iptables -F (操作)
-X 清空自定义链的规则,不影响其他链 iptables -X
-Z 清空链的计数器(匹配到的数据包的大小和总和)iptables -Z
-S 看链的所有规则或者某个链的规则/某个具体规则后面跟编号

最下面的规则不怎么用

3、增加新的防火墙规则

3.1、iptables -t filter -A INPUT -p icmp -j REJECT 不允许任何主机ping本主机 DROP(丢弃数据包不回复) ACCEPT(允许)

安全技术和防火墙——iptables防火墙_第9张图片
安全技术和防火墙——iptables防火墙_第10张图片

3.2、iptables -t filter -A INPUT -p icmp -j DROP ——(DROP 直接把数据包丢弃就压根不会理你,但是你要是清空就立即生效)

安全技术和防火墙——iptables防火墙_第11张图片
安全技术和防火墙——iptables防火墙_第12张图片

3.3、iptables -I INPUT 2 -p tcp --dport 22 -j ACCEPT——指定端口号之前一定要加 -p +协议

-I 后面加数字就是制定在哪一行加
安全技术和防火墙——iptables防火墙_第13张图片

4、查看规则表

4.1、iptables -vnL ——(v:表示详细信息 ;n :表示以数字形式显示 L : 查看 注意:L 一定放最后)

安全技术和防火墙——iptables防火墙_第14张图片

4.2、iptables -vnL --line-numbers

安全技术和防火墙——iptables防火墙_第15张图片

5、删除、清空规则

注意:
1.若规则列表中有多条相同的规则时,按内容匹配只删除的序号最小的一条
2.按号码匹配删除时,确保规则号码小于等于已有规则数,否则报错
3.按内容匹配删数时,确保规则存在,否则报错
5.1、iptables -F 表示清空所有策略——亦可以指定链中或者表中的规则

安全技术和防火墙——iptables防火墙_第16张图片

5.2、删除链中规则需要指定序号 iptables -t filter -D INPUT 5 表示将表filter中删除 链INPUT 里序号为5的规则

安全技术和防火墙——iptables防火墙_第17张图片

6、设置默认策略

iptables 的各条链中,默认策略是规则匹配的最后一个环节——当找不到任何一条能够匹配数据包的规则时,则执行默认策略。默认策略的控制类型为 ACCEPT(允许)、DROP(丢弃)两种。

iptables [-t表名] -P <链名> <控制类型>
iptables -P INPUT DROP      输入后没显示  清除所有规则之后生效,因为下面只剩下DROP  添加远程端口22

iptables -P FORWARD DROP
#--般在生产环境中设置网络型防火墙、主机型防火墙时都要设置默认规则为DROP,并设置白名单
#拒绝所有前  先将   22 端口 放开
#iptables -t filter -P FORWARD DROP
#iptables -P OUTPUT ACCEPT
6.1、白名单和黑名单

在电脑系统里,有很多软件都应用到了黑白名单规则,操作系统、防火墙、杀毒软件、邮件系统、应用软件等,凡是涉及到控制方面几乎都应用了黑白名单规则。黑名单启用后,被列入到黑名单的用户(或IP地址、IP包、邮件、病毒等)不能通过。
如果设立了白名单,则在白名单中的用户(或IP地址、IP包、邮件等)会优先通过,不会被当成垃圾邮件拒收,安全性和快捷性都大大提高。
将其含义扩展一步,那么凡有黑名单功能的应用,就会有白名单功能与其对应。

例如:在运营体系中,如果某一用户的号码被列入黑名单,那么它可能不能享用某项业务或全部业务,而白名单内的用户则可不受系统中对普通用户的规则限制。

通俗话说就是

白名单加进来允许
黑名单是加进来不允许,所以白名单的安全性更高

区别

白名单是设置能通过的用户,白名单以外的用户都不能通过。
黑名单是设置不能通过的用户,黑名单以外的用户都能通过。
所以一般情况下白名单比黑名单限制的用户要更多一些。

7、通用匹配

#直接使用,不依赖于其他条件或扩展,包括网络协议、IP地址、网络接口等条件。
#协议匹配: -p协议名
#地址匹配: -s 源地址、-d目的地址    (可以是IP、网段、域名、空(任何地址)
#接口匹配: -i入站网卡、-o出站网卡 
iptables -A FORWARD ! -p icmp -j ACCEPT
iptables -A INPUT -s 192.168.91.101 -j DROP
iptables -I INPUT -i ens33 -s 192.168.91.0/24 -j DROP

iptables -I INPUT -p icmp -j DROP
iptables -A FORWARD ! -p icmp -j ACCEPT           //感叹号”!”表示取反
7.1、设置默认策略并使除了icmp(ping)都可以通过本主机
iptables -P INPUT DROP——默认策略
iptables -t filter -A INPUT ! -p icmp -j ACCEPT  ——除了icmp都可以

安全技术和防火墙——iptables防火墙_第18张图片

在这里插入图片描述

安全技术和防火墙——iptables防火墙_第19张图片

8、隐含匹配

要求以特定的协议匹配作为前提,包括端口、TCP标记、ICMP类型等条件。
端口匹配: --sport 源端口、--dport 目的端口
#可以是个别端口、端口范围
--sport 1000          匹配源端口是1000的数据包
--sport 1000:3000     匹配源端口是1000-3000的数据包
--sport :3000         匹配源端口是3000及以下的数据包
--sport 1000:         匹配源端口是1000及以上的数据包
注意: --sport和--dport 必须配合-p <协议类型>使用

端口可以使用的范围 0-65535

你可能感兴趣的:(shell,安全,网络)