========网络安全概述=========
网络安全:计算机网路通信时安全保障
TCP/IPv4协议的脆弱性:TCP/IPv4协议基于可信任的实验室内部网络开发,在开发过程中并没有考虑到未来实际使用的安全性问题
1、缺乏数据源验证:无法确保数据发送者身份的合法性
2、缺乏机密性保障:在传输数据过程中无法保障数据安全性,IPv4不支持加密
3、缺乏完整性校验:收到数据后,无法保障数据发送者所发生数据和接收者所接收到的数据完全一致,没有收到篡改
常见网络安全术语:
漏洞:Bug,程序的一些缺陷,可以让使用者非法获取某些服务
0day漏洞:零日漏洞,指目前尚未推出响应解决补丁的漏洞
APT:高级持续性攻击,通过持续性的某种报文攻击指定服务
攻击的四种基础类型/方式
截获:非法截获报文
篡改:篡改报文数据
中断:让指定服务中断,用户无法正常获取该服务
伪造:伪造合法设备,欺骗其他合法主机
常见网络攻击:
物理层:
线路侦听
物理破坏
数据链路层:
MAC地址泛洪攻击:攻击者通过持续不断大量伪造发送源MAC地址不同报文给交换机,让交换机MAC地址表项学习数量达到上限,消耗设备资源,并且后续报文会采取泛洪转发方式,攻击者就会获取数据,影响数据机密性。
MAC地址欺骗攻击:攻击者伪造报文,使用其他合法设备的MAC地址,让交换机错误学习MAC地址表项,将数据错误转发给攻击者
ARP欺骗攻击:攻击者通过ARP原理,让通信终端设备学习到错误的ARP缓存表项,将数据错误转发给攻击者
网络层:
IP地址嗅探:攻击者通过ICMP请求等方式,针对网络中所有地址进行试探,寻找该网络中所有的地址进行试探,寻找网络中设备使用的IP地址,为后续攻击做准备
IP地址欺骗:攻击者通过修改成合法设备IP地址,去欺骗网络中合法设备
ICMP攻击:
ICMP洪水攻击:攻击者发送ICMP请求报文,并且源IP地址使用其他设备IP地址,该合法设备就会收到大量的ICMP响应报文回复,消耗设备资源
ICMP重定向攻击:攻击者通过给目标设备发送ICMP重定向报文,告诉目标设备去往指定目的的下一跳为自己,导致目标设备在发送报文时会发送给攻击者
ICMP不可达攻击:攻击者通过给目标设备发送ICMP不可达报文,通知其指定地址由于某种原因不可达,造成通信中断
传输层:
TCP SYN Flood:TCP SYN洪水/泛洪攻击,攻击者持续不断大量向指定服务器发送SYN请求建立连接报文,但是不对服务器进行后续的TCP报文响应,让服务器建立大量的TCP空连接,占用服务器TCP资源,影响合法设备获取服务
UDP洪水攻击:攻击者持续不断大量发送UDP报文,消耗网络带宽资源
应用层:
缓冲区溢出攻击:攻击者通过让某种程序沾染病毒,使其内存缓冲空间溢出到其他程序调用位置中,其他程序在调用数据时就会沾染上病毒
DoS:拒绝服务攻击,一台设备攻击一台设备
DDoS:分布式拒绝服务攻击,多台设备同时攻击一台设备
信息安全五要素:
机密性:保障数据在传输过程中不会被攻击者非法获取
完整性:确保发送者所发送数据和接收者所接收数据完全一致,没有遭到篡改
可用性:保障网络服务的正常使用
可控性:对用户上网行为进行记录
不可否认性:在通信过程中,发送者和接收者都无法抵赖自身发送数据和接收数据的行为
===================防火墙基础==============================
防火墙:属于网络安全设备,用于网络设备之间的访问控制
1、逻辑区域隔离/网络隔离
2、隐藏内网结构
3、自身安全保护
4、VPN远程接入
5、用户身份认证
6、病毒检测和查杀
7、内容安全检查
防火墙的发展历史:
包过滤防火墙:使用包过滤技术
应用代理防火墙:使用应用代理技术
状态检测防火墙:使用状态检测技术
UTM:统一威胁网关,将多个安全防护功能进行集成
NGFW:下一代防火墙,对UTM的升级,支持更加丰富的功能以及更加强大的性能
**UTM和NGFW都是使用状态检测技术
防火墙的类型:
按照使用核心技术的分类:
包过滤防火墙
应用代理防火墙
状态检测防火墙
按照软硬件分类:
软件防火墙:就是一个应用程序,APP,比如火绒,厂商安全管家,以及Windows自带防火墙
硬件防火墙:真实存在的物理设备
按照工作层次的分类:
路由模式:防火墙接口工作在三层,需要配置IP地址,对原有网络存在一定影响
交换模式:防火墙接口工作在二层,需要配置VLAN,对原有网络影响小,所以也叫透明模式
防火墙的部署方式:
从可靠性角度:
单机部署:单独部署一台防火墙,存在单点故障问题,可靠性低
双机热备:部署两台防火墙,并且双机热备技术进行负载和冗余,可靠性高
从部署位置:
直连部署:防火墙直接部署在流量的必经之路上,流量必须经过防火墙检测,安全性较好,配置简单,但是可靠性较低
旁挂部署:防火墙部署在网络的边缘,流量可以不经过防火墙检测,此时就需要单独配置策略路由进行引流,配置较为麻烦,但是可靠性高
Security-Zone:安全区域,防火墙将网络从逻辑上划分成多个安全区域,通过安全区域对流量进行管控,安全区域存在唯一的安全级别,范围1-100(状态检测防火墙默认域内允许,域间拒绝)
四个默认的安全区域:默认存在,并且无法删除
Local:本地区域,防火墙自身接口处于该区域,安全级别100
Trust:信任区域,一般连接可信任网络,一般用于连接私网内部,安全级别85
DMZ:非军事化管理区域,一般用于连接服务器所在网络,安全级别50
UnTrust:非信任区域,连接不可信任网络,一般用于连接公网,安全级别5
自定义安全区域:
用户自行创建的安全区域,自行指定安全级别
Security-policy:安全策略,就是防火墙上制定的访问控制规则
域内安全策略:用于控制安全区域内部互访,默认允许通信
域间安全策略:用于控制安全区域之间的互访,默认拒绝通信
接口安全策略:用来控制防火墙自身接口的一些特定服务功能互访
http、https、ping、SNMP、SSH、Telnet
防火墙的三大核心过滤技术:
包过滤技术:原理同ACL,针对收到的每一个数据报文去匹配安全策略,匹配中则放行
特点:
1、原理简单
2、无法关联数据之间的关系,需要配置来回的安全策略
3、每个报文单独匹配安全策略,转发效率低
4、无法检测应用层数据
5、无法适应多通道协议
应用代理技术:FW类似中间人,客户端先和防火墙建立TCP连接,防火墙检测通过完成TCP连接后,防火墙再以客户端的身份去和真实服务器建立TCP连接,客户端和服务器之间的交互全部需要先经过防火墙检测,最大程度上保障服务器的安全性
特点:
1、隐藏服务器身份,最大程度上保障服务器安全
2、能够检测应用层数据
3、需要针对协议单独开发,开发成本高,并且协议一旦升级,防火墙也需要升级
4、无法适应多通道协议
状态检测技术:基于首包检测机制,针对首包匹配安全策略,匹配中安全策略后会建立对应的Session-Table表项,记录当前的通信状态,也可以用来放行后续数据
特点:
1、能够关联数据之间的关系,自动通过Session-Table放行后续报文,无需单独创建回包策略
2、后续报文匹配Session-Table即可转发,转发效率高
3、能够检测应用层数据
4、能够适应多通道协议
首包:通信过程的第一个报文
TCP的SYN报文
UDP每一个报文
ICMP的请求报文
Session-Table:会话表,是状态检测防火墙转发数据的唯一依据,用来记录通信状态,放行后续流量
会话表针对不同协议存在不同的默认老化时间
状态检测防火墙的转发流程:
收到报文后先匹配会话表项:
如果匹配中会话表项,则直接转发流量即可
如果没有匹配中会话表项,则继续判断数据是否为首包:
如果不是首包,则不具备匹配安全策略的资格,直接丢弃
如果是首包,则匹配安全策略
如果安全策略放行,则建立对应的会话表项,放行数据
如果安全策略拒绝,则丢弃数据
单通道协议:在通信过程中,只需要使用一个端口
比如Web、DNS、Telent、SSH等
多通道协议:在通信过程中,需要使用多个端口
比如FTP
FTP:文件传输协议,用于传输文件数据,使用到控制和数据通道两个连接
控制通道:用于传输控制指令,比如登录的账号密码、协商的工作模式、上传文件和下载文件的指令
数据通道:用于传输具体的文件数据
FTP使用TCP封装,使用20和21端口,20用来建立数据通道,21用来建立控制通道
一、建立控制通道
客户端使用随机端口和服务器的21号端口建立TCP连接,也就是建立控制通道
Client:随机端口a---->Server:21号端口
建立完控制通道后,通过控制通道进行身份认证、模式协商,接下来建立数据通道
二、建立数据通道
1、主动模式:服务器主动发送数据通道建立请求
客户端提前通过控制通道向服务器发送一个FTP PORT消息,将客户端IP地址和端口信息通知服务器,其中携带a,b,c,d,e,f 六个参数,a,b,c,d为客户端IP地址,e,f通过公式计算得到客户端开放的端口号(e*256 + f)
服务器会使用20端口和客户端的e*256 + f端口发起TCP连接请求
Server:20 ----> Client :e*256 + f
2、被动模式:客户端主动发起数据通道建立请求
服务器提前通过控制听到向客户端发送一个FTP PASV消息,用来通知客户端自身的IP地址和开放的端口,其中携带a,b,c,d,e,f 六个参数,a,b,c,d为服务器IP地址,e,f通过公式计算得到服务器开的端口号(e*256 + f)
客户端会主动向服务器发送SYN报文请求建立数据通道,其中源端口为自身随机端口,目的端口为e*256 + f
Client:随机端口b---->Server:e*256 + f
ASPF:针对应用层的包过滤技术
背景:
如果使用多通道协议,同时建立控制和数据通道,并且由于数据通道会使用随机端口建立,管理员无法事先得知,也就没有办法提前配置好对应的安全策略放行数据通道建立的报文,就会导致多通道协议通道建立失败,无法正常工作
作用:
在防火墙上开启ASPF技术后,防火墙会监听和分析收到的控制通道报文,从中分析和判断出接下来数据通道建立的过程,建立起对应的Server-Map表项,通过Server-Map表项放行后续数据通道建立的报文
*华为防火墙默认开启该功能
Server-Map:
通过ASPF或者NAT-Alg建立的表项,相当于动态建立的安全策略,命中Server-Map表项也能够建立对应的Session-Table和放行后续流量
防火墙处理报文的完整流程:
1、匹配会话表
2、匹配Server-Map表
3、判断是否为首包
4、匹配手工配置的安全策略
==========================防火墙网络地址转换-=======================
NAT:网络地址转换,对报文地址进行转换,实现私网和公网的通信,节约IPv4公网地址
防火墙NAT分类:
源NAT:针对报文的源地址或者源端口进行转换
地址池模式:使用地址池进行转换
PAT:(NAPT),同时转换地址和端口
No-PAT:(动态NAT),只转换地址,不转换端口
出接口模式:(easy-ip),直接使用出口IP地址进行转换,并且也会对端口进行转换
目的NAT:针对报文的目的地址或者目的端口进行转换
双向NAT:同时针对报文的源和目的地址以及端口进行转换,让公网用户和私网用户都通过公网地址访问服务器,最大程度上保障服务器安全性(同时配置NAT-Server和Easy-IP即可)
地址转换和路由的先后:
源NAT:先查找路由,确定出接口,再执行出接口上的NAT,再转换地址
目的NAT:先转换地址,将目的地址从公网变成真正需要访问的私网地址,然后基于私网地址查找路由表项,将其转发给私网设备
地址转换和安全策略的先后:安全策略只匹配真实地址
源NAT:先进行安全策略匹配,基于原来的真实私网地址匹配安全策略,然后再进行地址转换
目的NAT:先进行地址转换,将目的地址从公网地址变成服务器的真实私网地址,然后再去进行安全策略匹配
配置NAT时需要使用到两种策略:
安全策略:用来控制数据是否能够转发
NAT策略:用来控制该报文是否能够进行地址转换
NAT-ALG:NAT应用层网关
背景:
在NAT场景中使用多通道协议,由于多通道协议会自动协商地址和端口信息,容易将设备真实使用的私网地址通知给公网设备,此时公网设备就会向私网地址发起连接建立请求,导致数据通道无法正常建立
作用:
在设备上开启NAT-ALG后会对收到的协议协商报文中私网地址转换成公网地址,避免公网设备建立数据通道产生的问题
NAT-ALG和ASPF华为设备都默认开启,都能够分析报文动态建立Server-Map表项,放行后续流量
Server-Map表项的建立方式:
1、开启ASPF的情况下,转发基于TCP的多通道协议数据时建立动态Server-Map
2、开启ASPF的情况下,转发基于UDP的多通道协议数据时建立动态Server-Map
3、配置NAT No-Pat后,建立动态的Server-Map
4、配置NAT-Server后,建立静态的Server-Map
==================================防火墙双机热备======================================
防火墙双机热备:
将两台防火墙通过双机热备技术实现主备备份,提高网络可靠性
热备:正常情况下,主设备开机运行,备设备也会开机待命,故障收敛快,但是备设备长期开机需要消耗一定电费
冷备:正常情况下,主设备开机运行,备设备处于关机下电状态备设备长期处于下电状态,能够更加节约电费,运维成本,但是故障收敛慢
防火墙通过VRRP实现双机热备的两个问题:
1、正常情况下,流量经过主设备转发,会话表建立在主防火墙上,如果故障收敛,流量会切换到备设备转发,此时会由于备设备不存在会话表项将流量直接丢弃,造成通信中断
解决:HRP
2、设备会加入到两个VRRP组中,不同VRRP组可以具备不同优先级,也就会存在不同的VRRP组设备角色,如果同一台设备的不同VRRP组角色不同,就会导致流量的来回路径不一致,也会造成数据丢失
解决:VGMP
VGMP:VRRP组管理协议,确保VRRP角色一致性,从而保障流量来回路径一致性
通过VGMP确定设备的VGMP状态,如果设备的VGMP状态为Active,那么相对应设备上所有VRRP组的状态为Master,也就是主设备,如果设备的VGMP状态为Standby,那么相对应设备上所有VRRP组的状态为Backup,也就是备设备
VGMP的状态机:
Load-balance:主主模式下设备处于该状态
Active:主备模式下主设备处于该状态
Standby:主备模式下备设备处于该状态
HRP:华为冗余协议,用来在设备之间快速同步关键配置和关键转发表项信息
备份内容:
关键配置:安全策略,NAT策略
转发表项:Session-Table(会话表)、Server-Map(转发表)
心跳线:设备之间用来传输HRP报文和VGMP报文的线缆,可以是物理接口,也可以是逻辑接口(Eth-Trunk)
心跳线接口状态:
Invalid:无效,使用二层接口,或者接口物理状态up,协议状态为Down
Down:故障,接口物理和协议状态都为Down
Peerdown:邻居故障,本端接口物理和协议up,准备完毕,但是对方接口处于Invalid或者Down状态,此时本端就会处于PeerDown
Ready:准备,双方接口物理和协议状态都为up,此时就可以开始正常交互
Running:运行,从Ready状态的接口中选举一个接口进入该状态,用来传输HRP和VGMP报文,其余Ready接口都为备份
防火墙双机热备使用的三个协议:
VRRP:将接口加入到VRRP组中,虚拟成一个IP地址进行工作,实现备份功能
VGMP:保障设备上不同VRRP组角色一致性
HRP:在设备之间同步关键配置和关键转发表项
====================================VPN基础=======================================
VPN:虚拟专用网,在公网上为私网搭建安全的通信隧道,实现私网之间的安全通信
虚拟:在现有资源上搭建虚拟线缆
专用:只能处于搭建的企业使用
VPN分类:
按照搭建部署机构的分类:
运营商搭建VPN:由运营商搭建,企业用户向运营商购买VPN服务即可
QinQ VPN、MPLS VPN
企业自建VPN:由企业自行搭建,无需运营商参与
GRE VPN、IPSec VPN
按照业务类型分类:
Client-to-LAN VPN:让单台终端设备通过VPN接入到一个私有网络中,一般用于远程办公场景
LAN-to-LAN VPN:让一个私有网络通过VPN接入到另一个私有网络,一般用于分支结构之间的互访
按照网络层次的分类:
应用层:SSL VPN
传输层:SangforVPN(深信服私有VPN技术)
网络层:GRE VPN、IPSec VPN、MPLS VPN
数据链路层:QinQ VPN、VXLAN
VPN核心技术:
隧道技术:VPN的最核心的技术,也就是构建虚拟VPN链路的方式
加解密技术:对数据进行加密和解密,确保数据传输安全性
身份认证技术:对VPN接入设备或者用户身份进行认证,确保其合法性
数据认证技术:完整性校验,确保收到数据和发送数据具备一致性
密钥管理技术:管理VPN隧道使用的算法和密钥的方式
加解密技术:
两种行为:
加密:将明文数据通过加密算法和密钥变成密文数据
解密:将密文数据通过加密算法和密钥变成明文数据
加解密技术的发展历史:
1、古典加密学:算法保密,密钥保密
凯撒密码:移位制,将数据字符往前或者往后移动任意位数
2、近代加密学:算法公开,密钥保密
字典加密:密码本
3、现代加密学:算法公开,密钥公开
对称加密:通信双方使用相同的对称加密密钥对数据进行加密和解密
1、加解密原理简单
2、设备在进行对称加密处理时效率高
3、密钥传输存在安全隐患问题
4、密钥管理复杂,需要针对每一台设备单独保存一份密钥
常用对称加密算法:DES/3DES、AES(分组加密)
非对称加密:通信双方使用不同的密钥对数据进行解密
两种密钥:
公钥:对外公开
私钥:绝对保密
两种应用:
公钥加密,私钥解密(数据加密,确保数据传输安全性)
私钥加密,公钥解密(数字签名,验证发送者身份合法性)
特点:
1、加密原理较为复杂
2、加解密效率较低,需要消耗大量的时间
3、不存在密钥传输安全隐患问题,公钥直接公开,私钥自身保密即可
4、密钥管理较为简单,提供所有设备相同的公钥即可
非对称加密算法:RSA
现网中实际上会同时使用对称和非对称加密方式传输数据:
首先以对称加密的方式将传输数据变成密文,然后通过非对称加密方式将对称加密使用的密钥安全传输给接收者
数字签名:用来对数据发送者身份进行认证
1、者先将Hash计算,将得到的摘要值通过自己的私钥进行加密,得到数字签名,将数字签名发送给接收者
2、接收者收到数字签名后,使用发送者的公钥进行解密,如果解密成功,就可以确保数据发送者身份合法性
**因为私钥只会由发送者自身保存
CA:证书颁发机构,负责给用户颁发CA证书,以及CA证书后续的管理和维护
CA证书包含的三个重要信息:
被颁发者基本信息
被颁发者公钥
颁发者信息
PKI:公开密钥体系,是当今互联网上用来保障数据传输安全性的一个体系架构
散列算法:Hash算法,音译为哈希算法,一般用于完整性校验
可以针对任意长度的输入,通过散列算法,得到一个固定长度的输出,具备不可逆性和唯一性
常见的散列算法:MD5、SHA
===================================GRE VPN======================================
GRE,通用路由封装协议,能够将某种网络层报头封装在另一种网络层报头中,实现报文在异种网络的传输,属于网络层协议,IP协议号为47
特点:
1、原理简单,实现简单
2、GRE VPN可以封装组播数据,传输组播报文,也就代表可以运行路由协议
3、GRE VPN不支持数据加密
4、GRE VPN支持简单的弱认证技术,但是安全性不高
GRE VPN能够在GRE头部中明文携带Key值,进行简单的身份认证
===================================IPSec VPN======================================
IPSec:IP Security,是IETF指定一系列网络安全协议组成的协议栈,提供基于密码学的安全保护机制。IPSec最早诞生于IPv6
特点:
1、机密性保障:支持对数据进行加密,防止被攻击者非法获取其中的有效数据
2、完整性保障:能够保障发送者所发送数据和接收者所接收到的数据具备一致性,没有遭到攻击者非法篡改
3、数据源鉴别:能够对数据发送者身份进行认证,确保数据发送者身份合法性
4、不可否认性:通信双方无法否认自己发送数据或者接收数据的行为
5、抗重放/重传攻击:能够防止重放攻击
重放攻击:也叫重传攻击,攻击者将数据复制多份,同时发送给目标设备,目标设备收到后需要进行解密流程,消耗目标设备资源
防止重放攻击的原理:IPSec针对每一份数据会赋予其唯一的序列号,如果收到数据的序列号相同,则认为遭受重放攻击,直接丢弃后续序列号相同的报文,避免对本设备资源的消耗
6、IPSec原理较为复杂
7、IPSec支持数据加密、身份认证等功能,安全性高
8、IPSec VPN自身只支持传递单播报文,不支持传递组播报文但是可以通过和GRE结合,也就是GRE over IPSec VPN解决方案,通过GRE将原始的组播数据变成单播数据,然后再通过IPSec对GRE处理完成后的单播数据进行处理即可,同时结合GRE传递组播数据以及IPSec安全性高的优点
IPSec VPN的工作模式:
传输模式:不添加新的IP头部,直接使用原始IP头部转发数据
封装格式:原始IP头部 + IPSec头部 + 段头 + Data
特点:无需添加新的IP头部,能够更加节约资源,但是原始IP头部会直接暴露在外,安全性较差
使用场景:两台IPSec设备之间具备公网地址,直接使用原始IP头部就具备可达性
隧道模式:添加新的IP头部,使用新的IP头部转发数据 (华为默认)
封装格式:新的IP头部 + IPSec头部 + 原始IP头部 + 段头 + Data
特点:使用新的IP头部转发数据,能够隐藏原始IP头部,保障安全性,但是添加新的IP头部需要占用更多的资源
应用场景:两台IPSec设备之间地址不具备直接的连通性,此时可以使用隧道模式,添加新的公网IP头部转发数据即可
IPSec VPN的两种安全协议:
AH:鉴别头协议,认证头协议,能够提供针对整个数据报文的完整性校验,以及身份认证、和抗重放攻击的功能,但是不支持数据加密, IP协议号51
AH的处理流程:
1、AH首先会在最外层IP头部后面添加上AH的头部
2、然后针对整个数据报文所有字段进行Hash计算,将得到的摘要值存放到AH头部中,用于在数据接收方进行完整性校验
AH在两种模式下的报文封装:
传输模式:
原始IP头部 + AH头部 + 段头 + Data
隧道模式:
新的IP头部 + AH头部 + 原始IP头部 + 段头 + Data
ESP:封装安全净载协议,能够提供AH的所有功能,并且还支持数据加密,只不过ESP的完整性校验不包括最外层IP头部,IP协议号50
ESP的处理流程:
1、首先在最外层IP头部后面添加ESP头部,在数据最后面加上ESP尾部
2、针对ESP头部后面的数据和ESP尾部进行数据加密,形成密文
3、针对ESP头部和密文数据进行完整性校验,也就是Hash计算,将得到的摘要值以及ESP认证数据的方式添加到报文最后面
ESP在两种模式下的报文封装:
传输模式:
原始IP头部 + ESP头部 + 段头 + Data + ESP尾部 + ESP认证数据
隧道模式:
新的IP头部 + ESP头部 +原始IP头部 + 段头 + Data + ESP尾部 + ESP认证数据
AH和ESP的区别:
1、IP协议号
2、完整性校验:AH针对全部进行校验,ESP不包括最外层IP头部
3、数据加密:AH不支持数据加密,ESP支持数据加密
4、是否支持NAT-T(NAT穿越):AH不支持NAT-T,ESP支持NAT-T
AH不支持NAT-T的原因在于AH会针对最外层IP头部进行校验,如果最外层IP头部进行NAT转换,会导致接收方校验失败
ESP支持NAT-T的原因在于ESP不会针对最外层IP头部进行校验,即使最外层IP头部进行NAT转换,也不会导致接收方的校验失败
AH+ESP:同时使用AH和ESP进行封装处理,结合AH针对全部报文完整性校验和ESP支持数据加密的优点,最大程度上保障数据安全性
处理流程:
1、首先ESP针对原始数据进行ESP处理
2、AH再针对ESP处理完的数据进行AH处理
再两种模式下的报文封装:
传输模式:
原始IP头部 + AH头部 + ESP头部 + 段头 + Data + ESP尾部 + ESP认证数据
隧道模式:
新的IP头部 + AH头部 + ESP头部 + 原始IP头部 + 段头 + Data + ESP尾部 + ESP认证数据
备注:由于ESP会针对部分数据进行加密,所以从抓包角度而言,ESP不管在传输还是隧道模式下,截获报文字段都只有:
(原始/新的)IP头部 + ESP头部 + 密文数据 + ESP认证数据(抓包软件会去除)
SA:安全联盟,IPSec VPN通信双方对IPSec参数的协定
比如使用何种工作模式、使用何种安全协议、加密或者认证使用的算法以及对应密钥和用户身份信息
SA的三元组:SPI安全参数索引号,安全协议和目的IP地址
建立IPSec VPN隧道的关键就在于SA的建立,建立方式有两种:
手工静态建立SA:管理员手动在设备上指定SA的所有参数
如果不修改配置,SA永久失效,随着使用时间增长,被破解几率越大
协议动态建立SA:通过IKE协议自动在设备之间协商建立SA
可以通过IKE协议自动周期性关系SA参数,安全性较好
IKE协议:密钥管理协议,用来在设备之间协商SA
IKE基于UDP封装,使用端口500
IKE动态建立的SA的过程:
阶段一:IPSec网关设备之间先协商建立临时的IKE SA,用来保障后续阶段二建立IPSec SA的安全性
主模式:一共交互六个报文,其中最后两个报文会进行加密
1、通过第一个和第二个报文交互协商使用的算法
2、通过第三个和第四个报文交互密钥生成材料,计算生成双方的密钥
DH:密钥生成协议,能够在不安全的网络中安全传输生成密钥
3、通过第五个和第六个报文交互双方身份信息,进行身份认证,并且最后两个报文会通过前面协商的算法和密钥进行加密,确保双方身份的安全性
野蛮模式:一共交互三个报文,建立效率较高,但是安全性较差,因为只有最后一个用来发送本端身份信息的报文会进行加密,对端发送身份信息的报文不加密,只能够保障本端身份的安全性
1、A明文给B发送自身自身支持的算法、密钥生成材料
2、B收到后,协商出需要使用的算法,以及通过密钥生成材料计算出对应的密钥,然后明文向A发送第二个报文,用来携带自身支持的算法,密钥生成材料和身份信息
3、A收到后,协商出需要使用的算法,以及通过,密钥生成材料计算出对应的密钥,然后密文向B发送第三个报文,用来携带自身身份信息
阶段二:基于阶段一建立的IKE SA通道,IPSec网关设备之间协商建立最终传输数据需要使用的IPSec SA
快速模式: