安全防御之IPsec VPN篇

news2025/2/26 19:34:20

目录

1.什么是数据认证,有什么用,有哪些实现的技术手段?

2.什么是身份认证,有什么用,有哪些实现的技术手段?

3.什么是VPN技术?

4.VPN技术有哪些分类?

5.IPsec技术能够提供哪些安全服务?

6.IPsec的技术架构是什么?

7.AH与ESP封装的异同?

8.IKE的作用是什么?

9.详细说明IKE的工作原理?

10.IKE第一阶段都有哪些模式?有什么区别,使用场景是什么?

11.IPsec在NAT环境下会遇到什么问题?

12.详细分析NAT环境下的IPsec的兼容问题?

13.多VPN的NAT环境下IPsec会有哪些问题?如何解决?

14.描述NHRP的第三阶段工作原理?

15.IPsec是否支持动态协议?为什么?

16.DSVPN的工作原理及配置步骤?

17.使用防火墙完成IPsec VPN点到点的实验

18.DSVPN多层分支实验

19.IPsec VPN旁挂,防火墙NAT实验


1.什么是数据认证,有什么用,有哪些实现的技术手段?

在计算机和网络安全领域中,数据认证是指验证数据在传输和存储过程中的完整性、真实性和合法性的过程。数据在传输和存储过程中容易受到数据篡改、损坏或未经授权的访问和修改的风险,数据认证可以帮助防止这些风险并提高数据的安全性和可靠性

数据认证的主要作用包括:

  1. 防止数据被篡改和损坏:通过数据认证可以验证数据的完整性,确保数据没有被篡改或损坏。

  2. 防止未经授权的访问和修改:数据认证可以验证数据的真实性和合法性,确保只有经过授权的用户才能访问和修改数据。

  3. 提高数据的可靠性:数据认证可以提高数据的安全性和可靠性,保证数据的准确性和一致性。

实现数据认证的主要手段包括:

  1. 数字签名:数字签名是一种基于公钥密码学的技术,用于验证数据的真实性和完整性。数字签名使用私钥对数据进行签名,公钥用于验证签名的有效性。

  2. 散列函数:散列函数将数据映射为一个固定长度的散列值,不同的数据映射为不同的散列值。通过比较散列值,可以验证数据是否被篡改或损坏。

  3. 消息认证码:消息认证码是一种对数据进行加密和认证的技术,它使用一个密钥和一组算法,将数据转换为一个固定长度的认证标记,用于验证数据的完整性和真实性。

  4. 数字证书:数字证书是一种用于验证身份和保护通信安全的数字凭证。数字证书可以包含用户的公钥、身份信息和数字签名,用于验证数据的真实性和合法性。

2.什么是身份认证,有什么用,有哪些实现的技术手段?

身份认证是指确认一个实体是其所声称的实体的过程。在计算机和网络安全领域中,身份认证通常指通过验证用户提供的凭证(如用户名和密码、数字证书、生物特征等)来确认用户的身份

身份认证的作用是保护计算机和网络系统中的敏感信息和资源,防止未经授权的用户访问和操作。身份认证可以用于许多场景,例如:

  1. 在网上购物或银行业务中,用户需要进行身份认证才能保护其账户和支付信息的安全;

  2. 在企业网络中,身份认证可以确保只有经过授权的用户才能访问敏感信息和资源;

  3. 在政府或军事系统中,身份认证可以保护国家机密和重要信息的安全。

实现身份认证的主要手段包括:

  1. 用户名和密码:这是最常用的身份认证方式,用户提供用户名和密码以确认其身份。用户名和密码可以在本地存储或使用加密技术进行传输和存储。

  2. 数字证书:数字证书是一种用于验证身份的数字凭证。数字证书通常包含用户的公钥、身份信息和数字签名,可以用于验证用户身份和保护通信的安全性。

  3. 双因素认证:双因素认证要求用户提供两个或多个凭证进行身份认证,通常是密码和一次性验证码、指纹等。

  4. 生物特征认证:生物特征认证使用用户的生物特征(如指纹、面部识别、虹膜扫描等)来进行身份认证。这种方式不需要用户记忆密码,但需要专门的硬件和软件支持。

3.什么是VPN技术?

VPN(Virtual Private Network,虚拟私人网络)技术是一种通过公共网络(如互联网)建立安全连接的技术。它可以通过加密和隧道技术,为用户提供一个安全、私密的网络连接,实现远程访问、数据传输、保护隐私等功能。

具体来说,VPN技术可以通过以下方式工作:

  1. 加密:VPN技术使用加密技术对数据进行加密,确保数据在传输过程中不会被窃取或篡改。加密算法通常使用AES、DES等强加密算法,以保护数据的安全。

  2. 隧道:VPN技术使用隧道技术将数据包装在一个安全的通道中进行传输,确保数据不会在传输过程中被劫持或篡改。隧道技术可以使用多种协议实现,如PPTP、L2TP、IPSec等。

  3. 认证:VPN技术使用认证技术对用户进行身份验证,以确保只有经过授权的用户才能访问网络。认证技术通常包括用户名和密码、数字证书、双因素认证等。

通过使用VPN技术,用户可以在不受限制的公共网络上访问私人网络,实现远程访问企业内部系统、保护隐私、绕过地理限制等功能。VPN技术已经广泛应用于企业、政府、个人等领域,成为保护网络安全和隐私的重要工具。

4.VPN技术有哪些分类?

业务:

client to LAN (access vpn)

LAN to LAN (site to site)

网络层次: 

5.IPsec技术能够提供哪些安全服务?

IPsec(Internet Protocol Security)是一种网络安全协议,它提供了一系列的安全服务,包括:

  1. 认证(Authentication):确保通信的两个实体是真实的,并且不会被伪装或篡改。IPsec提供了两种认证机制:预共享密钥和数字证书。

  2. 加密(Encryption):将数据进行加密,防止数据在传输过程中被窃听或篡改。IPsec提供了两种加密算法:DES和AES。

  3. 完整性保护(Integrity Protection):防止数据在传输过程中被篡改,确保数据的完整性。IPsec使用消息摘要算法(例如SHA-1或SHA-256)来实现完整性保护。

  4. 防重放攻击(Anti-replay):防止攻击者在通信过程中重复发送已经被发送过的数据包。IPsec通过序列号来防止重复数据包的发送。

  5. 访问控制(Access Control):限制对网络资源的访问,保护网络的机密性和完整性。IPsec使用访问控制列表(ACL)来实现访问控制。

综上所述,IPsec是一个功能强大的安全协议,它可以为网络通信提供多种安全服务,包括认证、加密、完整性保护、防重放攻击和访问控制等。

6.IPsec的技术架构是什么?

7.AH与ESP封装的异同?

  • AH     协议号51,没有机密性

传输模式:

 隧道模式:

  •  ESP      协议号50

传输模式:

隧道模式:

8.IKE的作用是什么?

  • 协商封装协议以及工作模式
  • 协商加密算法和加密算法
  • 协商密钥参数---密钥生成算法,密钥有效期,密钥分发者身份认证,密钥长度,认证算法

  • 为ipsec通信双方,动态的建立安全联盟SA,对SA进行管理与维护。

  • 为ipsec生成密钥,提供AH/ESP加解密和验证使用

9.详细说明IKE的工作原理?

IKE经过两个阶段为ipsec进行密钥协商并建立安全联盟:

第一个阶段通信各方彼此之间需要建立一个已通过身份验证和安全保护的通道,交换建立一个iskmp

安全联盟,iskmp sa。

  • 主模式

  • 野蛮模式

第二个阶段:用已经建立的安全联盟 iskmp sa(ike sa)的安全通道为ipsec协商安全服务,建立ipsec sa,产生用于业务数据加密的密钥

10.IKE第一阶段都有哪些模式?有什么区别,使用场景是什么?

主模式:一般使用在同一厂商的设备之间

6个包交互,默认使用IP地址作为身份标识,默认传递自己的接口地址作为身份标识,对方的公网地址作为对端身份标识去检查。

安全提议:加密算法、hash算法、身份认证方式、密钥交换算法、密钥有效期

第1,2个报文--协商加密算法;第3,4个报文--共享秘钥材料(类似于AH算法中的预主密钥),用于算出后续的加密秘钥;第5,6个报文---运用已经建立的安全加密通道进行身份验证。

野蛮模式:一般使用在不同厂商设备之间,解决不兼容的问题

 野蛮虽然是三个包但是安全性没问题,ID设置灵活性很高,有助于不同厂商ipsec对接。nat也会破坏IP地址导致ip作为身份信息不可靠。

两个模式的对比

11.IPsec在NAT环境下会遇到什么问题?

无论在哪种协议下由于NAT会转换IP地址,就导致了会破坏完整性;

具体场景:当我们ipsec设备没有部署在企业边界,而是部署企业内网时,ipsec的通信地址会被边界NAT设备做地址转换,这种情况下,需要考虑NAT与IPSEC的兼容性。

12.详细分析NAT环境下的IPsec的兼容问题?

我们需要详细分析IPSEC在第一阶段、第二阶段与NAT具体兼容情况:

  • 第一阶段的主模式

  • 第一阶段的野蛮模式

  • 第二阶段ESP的传输模式

  • 第二阶段ESP的隧道模式

  • 第二阶段AH的传输模式

  • 第二阶段AH的隧道模式

分析结果:

第一阶段的主模式:第5、6包的认证ID,由于NAT的破坏无法完成身份认证。

第一阶段的野蛮模式:由于ID可以自定义为字符串,NAT无法破坏,可以正常完成第一阶段身份认证。

第二阶段AH的传输模式与隧道模式:AH协议会校验外层IP地址,无论是传输还是隧道NAT都会转换外层头IP地址,所以完整性都会被破坏,AH协议无法与NAT兼容。

第二阶段ESP的隧道模式与传输模式:ESP不会对外层IP做认证或校验,所以完整性算法不会被NAT破坏,但是由于存在尾首部校验,传输模式也被破坏(nat在修改IP地址的时候也要修改伪首部校验和,这样就不会出现伪首部校验失败的问题,但是ESP等加密封装把4层加密后nat就无法修改伪首部校验和,导致校验失败)。

结论:综上所述ipsec的AH协议不支持NAT,ESP仅有隧道模式支持,传输模式不支持NAT,并且标准的IKE SA的主模式是用IP地址作为身份ID的,nat会破坏IP地址故而不支持主模式,仅支持野蛮模式。       野蛮模式+ESP的隧道模式

13.多VPN的NAT环境下IPsec会有哪些问题?如何解决?

当企业需要架设多条VPN线路,但是公网接口有限,由于ESP协议没有端口号,无法完成一对多端口的映射。

 以上问题是IPSEC在NAT环境下用野蛮模式和ESP隧道模式下依然会遇到的问题

NAT环境下IPSEC最终解决方案:NAT-T技术,该技术规定在NAT模式下IPSEC的IKE SA阶段使用目的端口UDP 500或4500作为端口号,源端口允许被修改(这种情况下防火墙写策略时不要规定其源端口号),IPSEC SA数据加密流传输阶段规定使用目的端口UDP 4500来传输ESP加密流,源端口允许被修改,解决了ESP没有端口号的问题。  

14.描述NHRP的第三阶段工作原理?

NHRP(Next Hop Resolution Protocol)是一种用于实现动态虚拟专用网(DMVPN)的协议。NHRP协议的第三阶段主要涉及到动态隧道的建立,其工作过程如下:

  1. Spoke节点发送NHRP注册请求消息到Hub节点,请求建立动态IPsec隧道。该消息包括Spoke节点的IP地址和需要与之通信的目标地址。

  2. Hub节点收到NHRP注册请求消息后,检查目标地址是否已经存在于NHRP缓存中。如果目标地址已经存在于缓存中,则Hub节点向Spoke节点发送NHRP响应消息,告知Spoke节点可以直接与目标地址通信。

  3. 如果目标地址不存在于NHRP缓存中,则Hub节点将NHRP请求消息转发给其他Spoke节点,请求获取目标地址的动态映射信息。

  4. 其他Spoke节点收到NHRP请求消息后,查询本地的路由表,找到下一跳路由器的IP地址,并将其发送回Hub节点。

  5. Hub节点收到其他Spoke节点返回的下一跳路由器IP地址后,将NHRP响应消息发送给Spoke节点,告知Spoke节点可以通过该下一跳路由器建立动态IPsec隧道。

  6. Spoke节点收到NHRP响应消息后,根据响应消息中提供的下一跳路由器IP地址,向该路由器发送IPsec数据包,建立动态IPsec隧道。

  7. Spoke节点将与目标地址的通信流量通过动态IPsec隧道发送到下一跳路由器。

15.IPsec是否支持动态协议?为什么?

       ipsec不支持动态协议,因为ipsec自始至终都没有创建该协议所需要的接口;并不想GRE协议,需要创建Tunnel口,并且配置IP。

16.DSVPN的工作原理及配置步骤?

DSVPN的工作原理主要涉及到MGRE和IPsec VPN的传输模式

配置步骤:

  1. 配置MGRE,在中心站点开启重定向功能;
  2. 配置ipsec vpn

17.使用防火墙完成IPsec VPN点到点的实验

配置IPsec VPN 

1.在安全策略中放行IPsec的第一阶段和第二阶段流量

2.放行感兴趣流的流量 

3.测试:

4.抓包验证:

 从抓包信息中可以看到第一阶段使用UDP的源目端口都是500,可以看到PC1访问PC2的流量已经加密,看不到任何信息,并且已经封装上公网的IP头部。

18.DSVPN多层分支实验

实验背景:R1为总公司,R3和R4为分公司,R5和R6为R3的分公司,R7和R8为R4的分公司。

要求:所有公司之间使用DSVPN通信,使用基础MGRE建立隧道,IPESC加密数据; 

配置:

   R3:

#
ipsec proposal yyy
 encapsulation-mode transport
 transform ah-esp
 ah authentication-algorithm sha1
 esp authentication-algorithm sha1
 esp encryption-algorithm 3des

#

ike proposal 1
 encryption-algorithm aes-cbc-128
 dh group5
 authentication-algorithm md5
 sa duration 3600

#
ike peer yyy v1
 exchange-mode aggressive
 pre-shared-key simple 999
 ike-proposal 1
 local-id-type name
 remote-name kkk

#
ipsec profile yyy
 ike-peer yyy
 proposal yyy

#
interface Tunnel0/0/0
 ip address 172.16.1.3 255.255.255.0 
 tunnel-protocol gre p2mp
 source GigabitEthernet0/0/0
 gre key 123
 ospf network-type p2mp
 ipsec profile yyy
 nhrp redirect
 nhrp shortcut
 nhrp entry multicast dynamic
 nhrp network-id 100
 nhrp entry 172.16.1.1 100.1.12.2 register

#
ospf 1 router-id 3.3.3.3 
 area 0.0.0.0 
  network 10.3.3.3 0.0.0.0 
  network 172.16.1.0 0.0.0.255 

#
 ike local-name kkk

抓包分析:

可以看到1号路由器的环回在访问3号路由器的环回数据已经加密 

19.IPsec VPN旁挂,防火墙NAT实验

注:后期补上<^....^>

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

走进小程序【八】微信小程序中使用【Vant组件库】

文章目录&#x1f31f;前言&#x1f31f;Vant介绍&#x1f31f;Vant安装&#x1f31f;npm 支持&#x1f31f;使用Vant&#x1f31f;引入组件&#x1f31f;页面使用组件&#x1f31f;样式覆盖&#x1f31f;介绍&#x1f31f;解除样式隔离&#x1f31f;使用外部样式类&#x1f31…

基于冯洛伊曼拓扑的鲸鱼算法用于滚动轴承的故障诊断研究(Matlab代码实现)

&#x1f468;‍&#x1f393;个人主页&#xff1a;研学社的博客&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5;&#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密…

【YOLO】YOLOv8实操:环境配置/自定义数据集准备/模型训练/预测

YOLOv8实操&#xff1a;环境配置/自定义数据集准备/模型训练/预测引言1 环境配置2 数据集准备3 模型训练4 模型预测引言 源码链接&#xff1a;https://github.com/ultralytics/ultralytics yolov8和yolov5是同一作者&#xff0c;相比yolov5&#xff0c;yolov8的集成性更好了&a…

C++面向对象丨1. 内存分区模型

Author&#xff1a;AXYZdong 硕士在读 工科男 有一点思考&#xff0c;有一点想法&#xff0c;有一点理性&#xff01; 定个小小目标&#xff0c;努力成为习惯&#xff01;在最美的年华遇见更好的自己&#xff01; CSDNAXYZdong&#xff0c;CSDN首发&#xff0c;AXYZdong原创 唯…

图解NLP模型发展:从RNN到Transformer

图解NLP模型发展&#xff1a;从RNN到Transformer 自然语言处理 (NLP) 是深度学习中一个颇具挑战的问题&#xff0c;与图像识别和计算机视觉问题不同&#xff0c;自然语言本身没有良好的向量或矩阵结构&#xff0c;且原始单词的含义也不像像素值那么确定和容易表示。一般我们需…

【随笔记】Win11、RTX3070、CUDA117的深度学习机器学习环境配置

文章目录一、创建深度学习 Conda 虚拟环境二、安装 Pytorch-Gpu三、安装 PyTorch Geometric四、安装 Sklearn五、Jupyter 配置5.1 将虚拟环境加入内核5.2 插件配置5.3 主题、字体、字号配置假设你已经安装了Anaconda3&#xff08;最新Anaconda3的安装配置及使用教程&#xff08…

里程碑,ChatGPT插件影响几何?

目录插件发布网络浏览器代码解释器平台生态微软魄力总结3月15日OpenAI推出了GPT-4&#xff0c;引起了全球轰动&#xff0c;仅仅过去一周多时间&#xff0c;OpenAI又宣布推出插件功能。如果说ChatGPT是AI的“iPhone时刻”&#xff0c;那么插件就是ChatGPT的“App Store”。超强的…

SpringBoot整合Flink(施耐德PLC物联网信息采集)

SpringBoot整合Flink&#xff08;施耐德PLC物联网信息采集&#xff09;Linux环境安装kafka前情&#xff1a;施耐德PLC设备&#xff08;TM200C16R&#xff09;设置好信息采集程序&#xff0c;连接局域网&#xff0c;SpringBoot订阅MQTT主题&#xff0c;消息转至kafka&#xff0c…

【chatgpt-01】部署学术神器chatgpt_academic

目录1 chatgpt_academic简介2 前置准备3 项目下载/配置4 安装依赖5 项目配置6 运行7 测试实验性功能1 chatgpt_academic简介 chatgpt_academic是一个科研工作专用ChatGPT拓展&#xff0c;特别优化学术Paper润色体验&#xff0c;支持自定义快捷按钮&#xff0c;支持markdown表格…

Jenkins部署与自动化构建

Jenkins笔记 文章目录Jenkins笔记[toc]一、安装Jenkinsdocker 安装 JenkinsJava启动war包直接安装二、配置mavenGit自动构建jar包三、自动化发布到测试服务器运行超时机制数据流重定向编写清理Shell脚本四、构建触发器1. 生成API token2. Jenkins项目配置触发器3. 远程Git仓库配…

Elasticsearch:配置选项

Elasticsearch 带有大量的设置和配置&#xff0c;甚至可能让专家工程师感到困惑。 尽管它使用约定优于配置范例并且大部分时间使用默认值&#xff0c;但在将应用程序投入生产之前自定义配置是必不可少的。 在这里&#xff0c;我们将介绍属于不同类别的一些属性&#xff0c;并讨…

【风光场景生成】基于改进ISODATA的负荷曲线聚类算法(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5;&#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。⛳座右铭&#…

《计算机网络-自顶向下》04. 网络层-数据平面

文章目录网络层数据平面和控制平面两者的概述数据平面控制平面控制平面&#xff1a;传统方法控制平面&#xff1a;SDN 方法网络服务模型路由器工作原理通用路由器体系结构输入端口的功能基于目标的转发交换结构内存交换方式总线交换方式纵横式交换方式输出端口的功能何时何处出…

YOLOV8改进:如何增加注意力模块?(以CBAM模块为例)

YOLOV8改进&#xff1a;如何增加注意力模块&#xff1f;&#xff08;以CBAM模块为例&#xff09;前言YOLOV8nn文件夹modules.pytask.pymodels文件夹总结前言 因为毕设用到了YOLO&#xff0c;鉴于最近V8刚出&#xff0c;因此考虑将注意力机制加入到v8中。 YOLOV8 代码地址&am…

ChatGPT能代替Oracle DBA吗?用Oracle OCP(1z0-083)的真题测试一下。

让我们来看看ChatGPT不能通过Oracle OCP的考试&#xff1f; 文章目录引言测试过程总结和分析关于博主&#xff0c;姚远&#xff1a;Oracle ACE&#xff08;Oracle和MySQL数据库方向&#xff09;。Oracle MAA 大师。华为云MVP。《MySQL 8.0运维与优化》的作者。拥有 Oracle 10g和…

被吐槽 GitHub仓 库太大,直接 600M 瘦身到 6M,这下舒服了

大家好&#xff0c;我是小富&#xff5e; 前言 忙里偷闲学习了点技术写了点demo代码&#xff0c;打算提交到我那 2000Star 的Github仓库上&#xff0c;居然发现有5个Issues&#xff0c;最近的一条日期已经是2022/8/1了&#xff0c;以前我还真没留意过这些&#xff0c;我这人懒…

Esp8266+阿里云+STM32点灯(三)

1、简介 1、固件库烧录&#xff1a;Esp8266阿里云STM32点灯&#xff08;一&#xff09; 2、ESP8266通过电脑与阿里云通讯&#xff1a;Esp8266阿里云STM32点灯&#xff08;二&#xff09; 前两部分已经完成ESP8266和阿里云简单通讯&#xff0c;这部分通过STM32单片机通过ESP8…

vue全局使用svg

1、安装依赖 npm install svg-sprite-loader2、配置选项 在vue.config.js的chainWebpack里配置下面代码 解释&#xff1a;config.module.rule是一个方法&#xff0c;用来获取某个对象的规则。.exclude.add&#xff08;文件a&#xff09;是往禁用组添加文件a&#xff0c;就是对文…

人民链Baas服务平台上线,中创助力人民数据共建数据服务应用场景

人民链2.0是数据要素大发展时代下的可信联盟链 作为区块链分布式存储领域行业先驱与让人民放心的国家级数据云平台&#xff0c;中创算力与人民数据的合作从未间断。为了推动人民链2.0高质量发展&#xff0c;中创算力与人民数据开展了多方面合作&#xff0c;助力人民数据共建数据…

计算机网络 - 网络通信 (TCP与UDP)

前言 本篇通过了解套接字&#xff0c;TCP与UDP协议的特点&#xff0c;使用UDP的api套接字与TCP的api套接字进行回显程序的网络通信&#xff0c;如有错误&#xff0c;请在评论区指正&#xff0c;让我们一起交流&#xff0c;共同进步&#xff01; 文章目录前言1. 认识网络通信需…