IPSec的配置实现实验报告

2023-11-05

一、实验目的

1、在Windows中配置(内置或者专有)IPSec。
2、通过抓包工具抓取建立IPSec的协商密钥过程,和建立之后的加密通信数据包,并进行分析。
3、配置Cisco Packet Tracer软件仿真路由器的VPN,分析密钥协商和加密流程数据包。

二、实验环境

1、两台Windows 3虚拟机PC1和PC2,并可以互相ping通。
2、Wireshark抓包软件
3、对于cisco仿真VPN,在win11上完成。

三、实验原理

IPsec(Internet Protocol Security)是为IP网络提供安全性的协议和服务的集合,是一组基于网络层的,应用密码学的安全通信协议族,不具体指某个协议。它是 VPN(Virtual Private Network,虚拟专用网)中常用的一种技术。由于IP报文本身没有集成任何安全特性,IP 数据包在公用网络如 Internet 中传输可能会面临被伪造、窃取或篡改的风险。通信双方通过 IPsec 建立一条 IPsec 隧道,IP 数据包通过 IPsec 隧道进行加密传输,有效保证了数据在不安全的网络环境如 Internet 中传输的安全性。
IKE SA和IPSec SA建立过程的理论图如下:

在这里插入图片描述
在这里插入图片描述
VPN的原理就是在两台直接和公网连接的计算机之间建立一条专用通道。私有网络之间的通信内容经过发送端计算机或设备打包,通过公用网络的专用通道进行传输,然后在接收端解包,还原成私有网络的通信内容转发到私有网络中。这样,公用网络就像普通的通信电缆,而接在公用网络上的两台私有计算机或设备则相当于两个特殊的节点。由于VPN连接的特点,私有网络的通信内容会在公用网络上传输,出于安全和效率的考虑,一般通信内容需要加密或压缩。而通信过程的打包和解包工作则必须通过一个双方协商好的协议进行,从而在两个私有网络之间建立VPN通道将需要一个专门的过程,依赖于一系列不同的协议。这些设备和相关的设备和协议组成了一个VPN系统。

四、实验步骤及结果

(1)在PC1按下windows+R组合键,输入secpol.msc,打开本地安全设置;在左侧窗口选取IP安全策略,鼠标在右侧窗口右键创建IP安全策略。
在这里插入图片描述

在这里插入图片描述

(2)点击“下一步”,设置IP安全策略名称;点击“下一步”,编辑属性;点击添加来增加一条规则:
在这里插入图片描述
在这里插入图片描述

(3)下一步,选择此规则不指定隧道;下一步,选择所有网络连接;下一步,选择添加IP筛选器;填入名称,去掉“添加向导”,点击添加。
在这里插入图片描述

在这里插入图片描述

(4)之后,默认下一步后结束,点击确认;回到安全规则向导界面,选取刚才新建的筛选器,点击下一步;添加筛选器操作,输入筛选器名称为新筛选器操作;下一步,选取协商安全;下一步,选择不允许不安全的通信;下一步,选择完整性和加密,完成设置。
在这里插入图片描述
在这里插入图片描述

(5)在本地安全策略中对此进行指派。在PC2中进行和上述一样的操作。
在这里插入图片描述

在这里插入图片描述

(6)查看PC1和PC2的ip地址,PC1的ip地址:192.168.236.130,PC2的ip地址:192.168.236.128。
在这里插入图片描述

在这里插入图片描述

(8)在PC1的命令行ping虚拟机PC2,可以看到可以ping通。通过wireshark抓取数据包,分析IKE SA和IPSec SA 建立过程。
在这里插入图片描述
在这里插入图片描述

(9)对部分抓到的数据包进行分析。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
通过以上数据包可以猜测共享密钥已经被加密了。
在这里插入图片描述
在这里插入图片描述
(10)安装Packet Tracer,初始化配置路由器:在模拟器窗口工具栏下选择file->new。在左下角设备栏选取路由器图标,将2811路由器拖入工作区。单机工作区中的路由器图标,选择CLI项,等待路由器启动后,在交互对话框中输入no并回车。
在这里插入图片描述
在这里插入图片描述
(11)进入路由器特权模式,配置路由器网卡IP,初始配置router0完成,根据router0的配置过程完成router1的配置,其中router1的f0/0端口IP为10.0.0.2/24,router1的f0/1端口的IP地址为192.168.2.1/24。
在这里插入图片描述
在这里插入图片描述
具体配置过程如下:进入特权模式,只有在特权模式下才可以对路由器进行配置,配置网卡f0/0端口的IP地址和子网掩码,该网卡连接公网;进入配置状态,通过端口进行配置;进入端口f0/0,配置网卡f0/0的IP地址和子网掩码;开启端口f0/0;返回特权模式。
(12)配置完成后,选择Connections图标,选择虚线,将router0和router1的f0/0端口进行连接。
在这里插入图片描述
(13)搭建网络环境:在模拟器左下角选择End Devies图标,选取PC-PT图标拖到工作区。双击PC图标,选择Desktop,选择IP Configuration,配置PC的IP地址和子网掩码。
在这里插入图片描述
在这里插入图片描述
(14)选取Switches中的2950-24,在Connections中选择Straight-Through将路由器与交换机相连,将交换机与PC机相连,需要对所有的PC机进行上图配置,最后完成如下图:
在这里插入图片描述
(15)在路由中配置路由,令路由器两端的网络互通,在router0和router1中CLI配置指令。
在这里插入图片描述
在这里插入图片描述
(16)测试网络连通性:双击PC0图标,弹出对话框,选择Desktop,选择Command Prompt,进行ping测试是否连通,可以看到能够连通。
在这里插入图片描述
(17)配置IPSec VPN。配置router0,首先,定义IKE策略,IKE就是router 0和router1之间的密钥交换策略。 IKE只是密钥的交换策略,我们在使用加密对称和非对称加密算法的时候,需要密钥来对数据加密,上面的IKE策略只是建立一条管理连接,负责加密生成的各种密钥。之后,定义数据的加密方式和认证方式,配置IPSec。然后,将map映射到公网端口,一个端口只能映射一个map。
在这里插入图片描述
(18)查看IKE策略、IPSec变换集、crypto maps。
在这里插入图片描述
(19)配置router1,定义的IKE的策略,IKE就是router 0和router1之间的密钥交换策略,两者的策略必须匹配起来,除了优先级序号可以不同。定义数据的加密方式和认证方式,配置IPSec,将map映射到公网端口。
在这里插入图片描述
(18)测试IPSec VPN。测试连通性,双击PC0图标,在弹出的对话框中,选择Desktop,选择Command Prompt,ping 192.168.2.10,如下图:
在这里插入图片描述
(19) 验证数据经过IPSec VPN加密传输,进入simulation mode,切换到相应界面:
在这里插入图片描述
(20)再次ping 192.168.2.10,在simulation Panel中选取Auto Capture,观察工作区动画,双击在路由器router 0处数据包,弹出面板可以分析出数据包的信息。
在这里插入图片描述
从图中可以看到,进入路由器的数据包(左侧)的信息源IP为192.168.1.10,目的IP为192.168.2.10,但是路由器出去的数据包的源IP转为了10.0.0.1,目的IP为10.0.0.2,另外可以看到下面的第6条信息中可以看到ESP的encrypts the received packet包。由此可以看出,从PC0发往PC3的数据包经过路由器的IPSec VPN模块加密处理,隐藏了内网的IP地址信息,从而保护了内网的数据。
(21)断开VPN,配置router0和router1的指令。需要注意的是,只断开一端路由器的端口map映射,两边无法连通;两端都断开后,两边网络可以再次保持连接,只是数据不再加密传输。
在这里插入图片描述

五、实验总结

1、实验过程中遇到的问题及解决办法;
(1)在cisco中配置网络拓扑时,不显示label,需进行设置,才显示端口。
(2)虚拟机中下载wireshark时打不开网页,安装虚拟机工具包,在主机上下载后复制到虚拟机上,需要注意的是要下载适合windows3的win32版本。
(3)在配置好PC1和PC2的安全策略后,无论是使用PC1去ping PC2,还是使用PC2去ping PC1,都ping不通。因为设置的PC1和PC2的共享密钥不同,前者是20020707,后者是buptlqx。于是将PC2的共享密钥设置为20020707,和PC1一样。之后再互相ping,就能ping通了。
2、设计及调试过程中的心得体会。
通过本次实验,我深入了解了虚拟专用网(VPN)的概念和协议,学习了第二层隧道协议和第三层隧道协议,并通过实际操作完成了IPSec的配置。同时,我还通过抓包分析,了解了IKE SA和IPSec SA的建立过程,更深入地理解VPN的工作原理。另外,我还学会了使用Cisco Packet Tracer网络模拟工具进行VPN的配置。通过实践操作,我不仅加深了对所学知识的理解,也提高了自己的技能水平。最重要的是,我认识到网络安全的重要性,并意识到维护网络安全需要我们不断学习和实践。因为网络安全是一个永无止境的工作,需要时刻更新知识和技能,以应对各种威胁和攻击。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

IPSec的配置实现实验报告 的相关文章

  • 14、OSPF学习心得2

    1 OSPF的报文 1 Hell报文 作用 1 建立和发现邻居 2 维护OSPF的邻居关系 2 DBD报文 用于描述LSDB的摘要信息 3 LSR报文 用于向对方请求所需的具体的LSA信息 4 LSUpdate 用于向对方发送具体的LSA
  • 在Linux上搭建JAVAEE的开发环境

    1 安装JDK 1 下载安装包 jdk 8u121 linux x64 tar gz 2 把JDK安装包上传到Linux系统中的 opt 目录下 通过xftp软件连接上Linux 然后双击要上传的安装包即可上传 3 解压JDK安装包 命令
  • 逻辑漏洞归纳总结

    Web安全渗透方向 三大核心 输入输出 登录体系 权限认证 典型的web漏洞 注入 跨站 上传 代码执行等属于输入输出这个层级 这也是OWASP早期比较侧重的 近年来 像越权漏洞 逻辑绕过 接口安全等逐渐增多 这些属于登录体系和权限认证这个
  • LaWGPT基于中文法律知识的大语言模型_初步安装

    准备代码 创建环境 下载代码 git clone git github com pengxiao song LaWGPT git cd LaWGPT 创建环境 conda create n lawgpt python 3 10 y cond
  • 【高效办公】程序员专用云笔记推荐

    一 参考资料 推荐几款好用的云笔记软件 云 社区 腾讯云 Markdown基本语法 简书 Markdown菜鸟教程
  • webpack-serve 的使用

    webpack serve 官方已经不维护了 还请继续食用webpack dev server 基本情况 仓库地址 配合webpack4食用最佳 在webpack3及以前的版本会有帮助信息提示 因为热加载使用的是WebSockets 所以在
  • 基于Arduino的循迹小车搭建

    材料准备 我做的是双层的循迹小车 这个网上有套件可以直接购买 到了之后组装是比较简单的 如果有不会组装的去bilbil上找一下教程也是很方便的 https www bilibili com video BV1Pe4y197DN spm id
  • 工作流Activiti7整合SpringBoot使用

    前言 一个软件系统中具有工作流的功能 我们把它称为工作流系统 一个系统中工作流的功能是什么 就是对系统的业务流程进行自动化管理 所以工作流是建立在业务流程的基础上 所以一个软件的系统核心根本上还是系统的业务流程 工作流只是协助进行业务流程管
  • 8086的写总线周期

    http www2 zzu edu cn qwfw wjylcai list asp id 127 写总线周期用来完成对存储器或I O端口的一次写操作 1 T1状态 总线周期的第一个时钟周期主要用于输出存储器地址或I O地址 如果M IO
  • android 右边充满 左边自适应,RelativeLayout中的格局,自适应宽度布局

    RelativeLayout中的布局 自适应宽度布局 该图片中为android布局 总布局为 RelativeLayout AtLeft 为居左 android layout height wrap content android layo

随机推荐

  • mf253s移动版变全网通_中国电信发布5G全网通终端需求白皮书v2.0

    2019 11 07 10 56 2019年10月31日 中国5G正式商用 标志着5G发展已进入快车道 整个社会各行各业对5G热情高涨 业界纷纷增加5G投入 5G终端的发展进程必将加快 市场空间巨大 潜力无限 为更好地引导产业链 推动5G加
  • nuxt.js服务端渲染使用flexible.js和postcss-px2rem实现移动端自适应—淘宝弹性布局方案(750px设计稿)

    在用vue做服务端渲染的时候需要对移动端做适配所以要用到postcss 2rem插件 第一步 首先下载flexible js 可加载阿里的cdn文件 http g tbcdn cn mtb lib flexible 0 3 4 flexib
  • Error: Package: mysql-community-server-5.6.41-2.el7.x86_64 (mysql56-community) Requires:

    http www cnblogs com xiaoluo501395377 archive 2013 04 07 3003278 html MySQL登陆失败 ERROR 2002 HY000 Can t connect to local
  • JDK与Tomcat的安装及配置教程

    code ran 超级详细的JDK与Tomcat的安装及配置教程 1 JDK的安装与环境配置 首先我们需要去官网上下载JDK对应的版本 以我现在要下载的1 8为例 1 官网 JDK官网地址 具体操作如下 然后下载之后去下载路径下去安装即可
  • k8s v1.2 web界面——kubernetes-dashboard详解

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 1 Kube dashboard介绍 dashboard功能 Kube dashboard是kube 1 2版本中新增的 具备与kubelet commandline类似的
  • LeetCode——049

    49 Group Anagrams My Submissions QuestionEditorial Solution Total Accepted 73397 Total Submissions 267525 Difficulty Med
  • 一些VR延迟优化方法

    VR中的 延迟 特指 Motion To Photon Latency 指的是从用户运动开始到相应画面显示到屏幕上所花的时间 这中间经过了大概这么几个步骤 传感器采集运动输入数据 采集到的数据进行过滤并通过线缆传输到主机 游戏引擎根据获取的
  • 红黑树学习

    红黑树的是一种特殊的二叉搜索树 有如下性质 性质1 节点是红色或黑色 性质2 根是黑色 性质3 每个叶节点是黑色的 性质4 每个红色节点的两个子节点都是黑色 从每个叶子到根的所有路径上不能有两个连续的红色节点 性质5 从任一节点到其每个叶子
  • 项目同时使用两个mysql驱动_SpringBoot配置双数据源(一个项目同时连接操作两台数据库)...

    本文章使用的是持久化框架为JPA 所以数据源也是基于JPA 采用的是SpringBoot2 SpringDataJPA MySQL 双数据源 一 双数据源的适用场景 1 主从库分离 数据库读写分离 2 数据迁移 3 系统版本升级 数据库升级
  • session失效时间设置

    session失效时间设置 一 java代码 request getSession setMaxInactiveInterval 1800 秒为单位 二 web xml
  • 璀璨光滑【牛客】【题意解析+BFS+贪心】

    题目链接 中文题意 表面平静 实则暗藏玄机 而打开本题的突破口 也确确实实就在于题目的描述 也就是说 这张图的边的数目是确定的 并且这是一张连通图 而且图上的个点每个点连接出去的边的数目都是条 因为每个数都刚好只与个数在二进制位上差1 那么
  • 算力单位详解

    TOPS TOPS是Tera Operations Per Second的缩写 1TOPS代表处理器每秒钟可进行一万亿次 10 12 操作 与此对应的还有GOPS Giga Operations Per Second MOPS Millio
  • YOLOv5发布第六个版本,支持一键适配OpenVINO/OpenCV DNN部署

    YOLOv5发布了第六个版本 其它我不说 什么是开源精神 不是写个程序扔github就叫开源 而是持续不断改进 精益求精 不断演化版本 增加最有商业价值的功能 YOLOv5做到了 看看最新版本都有哪些新功能让开发者心动 新特性 首次发布支持
  • 基于升序链表的定时器及其简单应用

    Linux网络编程笔记 定时器 基于升序链表的定时器 这其实就是一个结点为 class util timer public util timer prev NULL next NULL 构造函数 public time t expire 任
  • 红队隧道应用篇之Burpsuite设置上游代理访问内网(五)

    为何要设置上层代理 Burp Suite设置上游代理的主要原因是为了拦截和修改来自浏览器的请求 当您在使用Burp Suite进行Web应用程序安全测试时 您可能希望模拟攻击者发送恶意请求 以测试应用程序是否能够防御这些攻击 使用上游代理可
  • C++中erase的用法

    erase一共三种用法 1 erase pos n 删除从下标pos开始的n个字符 比如erase 0 1 就是删除第一个字符 2 erase position 删除postion处的一个字符 position是一个string类型的迭代器
  • 面经-hangzhou

    目录 上篇 一 基础篇 网络基础 TCP三次握手 HTTP协议 浏览器输入URL过程 操作系统基础 进程和线程的区别 操作系统内存管理 Java基础 面向对象三大特性 数据结构 设计模式与原则 面试题 构造方法 初始化块 This 重写和重
  • C# 获取FormData数据

    通常的方法是你创建一个 FormData 对象 然后你使用append方法来加入任何额外的key和他们的值 就像这样 var form new FormData form append myName Robert 然后你只需使用XMLHtt
  • dataframe 判断是否为空的解决方式,即判断是否为NAN

    利用pd read table 读出来的数据 如果存在空值的 补充为 1 若x是dataframe中emp length列里面的其中一个值 判断其是否为空用什么 x is None 没起作用 len x 0 提示float 没有len np
  • IPSec的配置实现实验报告

    IPSec的配置实现 一 实验目的 二 实验环境 三 实验原理 四 实验步骤及结果 五 实验总结 一 实验目的 1 在Windows中配置 内置或者专有 IPSec 2 通过抓包工具抓取建立IPSec的协商密钥过程 和建立之后的加密通信数据