使用两个CentOS7虚拟机,基于strongswan搭建IPSec VPN实验环境,通过是否配置加密算法,达到产生正常和非正常ESP数据包的目的。本篇为自己填坑记录。

目录

1、准备两个CentOS7虚拟机

2、安装strongswan

3、修改配置文件

4、配置NAT

5、 scp模拟大流量场景

6、修改配置文件去掉加密算法


1、准备两个CentOS7虚拟机

使其能相互ping通 (192.168.220.139 ping 通192.168.220.140)

实验拓扑如图:

2、安装strongswan

(1)运行以下命令安装strongSwan。

[root@VM_2_2_centos ~]# yum install strongswan -y 

(2)运行以下命查看安装的软件版本。

[root@VM_2_2_centos ~]# strongswan version

3、修改配置文件

参考:https://cloud.tencent.com/developer/article/1505715

3.1.1配置 service 端的 ipsec.conf 文件

使用 vim 打开 ipsec.conf 文件

vim /etc/strongswan/ipsec.conf

添加以下内容

conn %defaultikelifetime=1440m   keylife=60mrekeymargin=3mkeyingtries=0keyexchange=ikev1   #ike版本authby=secretconn n2nleft=192.168.220.139leftid=192.168.220.139    #本端公网IPleftsubnet=192.168.142.0/24    #本端私有网络地址right=192.168.220.140      #对端公网IPrightsubnet=192.168.72.0/24     #对端私有网络地址auto=start   #进程主动时立即建立 IPsec 安全连接type=tunnelike=3des-md5-modp1024esp=3des-md5

3.1.2 配置 service 端的 ipsec.secrets 文件

使用 vim 打开 ipsec.conf 文件

vim /etc/strongswan/ipsec.secrets

添加以下内容

#本地公网出口IP   #对端公网出口IP     #双方约定的秘钥
192.168.220.139 192.168.220.140 : PSK qcloud123

3.1.3 配置 转发

使用 vim 打开 sysctl.conf 文件

vim /etc/sysctl.conf

添加以下内容

net.ipv4.ip_forward = 1

使配置生效

sysctl -p

3.2.1配置 client 端的 ipsec.conf 文件

使用 vim 打开 ipsec.conf 文件

vim /etc/strongswan/ipsec.conf

添加以下内容

conn %defaultikelifetime=1440m   keylife=60mrekeymargin=3mkeyingtries=0keyexchange=ikev1   #ike版本authby=secretconn n2nleft=192.168.220.140leftid=192.168.220.140    #本端公网IPleftsubnet=192.168.72.0/24    #本端私有网络地址right=192.168.220.139      #对端公网IPrightsubnet=192.168.142.0/24     #对端私有网络地址auto=start   #进程主动时立即建立 IPsec 安全连接type=tunnelike=3des-md5-modp1024esp=3des-md5

3.2.2 配置 client 端的 ipsec.secrets 文件

使用 vim 打开 ipsec.conf 文件

vim /etc/strongswan/ipsec.secrets

添加以下内容

#本地公网出口IP   #对端公网出口IP     #双方约定的秘钥
192.168.220.140 192.168.220.139 : PSK qcloud123

3.2.3 配置 转发

使用 vim 打开 sysctl.conf 文件

vim /etc/sysctl.conf

添加以下内容

net.ipv4.ip_forward = 1

使配置生效

sysctl -p

3.3.1 启动 service 端 ipsec服务

先关闭防火墙

永久关闭命令:systemctl disable firewalld

再在 /etc/strongswan 路径下输入以下命令

strongswan start

3.3.2 启动 client 端 ipsec服务

先关闭防火墙

永久关闭命令:systemctl disable firewalld

再在 /etc/strongswan 路径下输入以下命令

strongswan start

接着在 client 端输入以下命令建立隧道

strongswan up n2n

效果:


3.4 查看当前建立的隧道

strongswan status

4、配置NAT

直接客户端 ping 服务端(192.168.220.140 ping 192.168.220.139)相当于走的外网,不经过 ipsec 加密网关,所以需要 ping 内网的 ip 地址才会经过 ipsec 加密网关产生 ESP 的数据包。

4.1 VM添加网络

目前虚拟机上默认只有一个网卡,服务端和客户端都分别需要再添加一个网卡,但添加网卡之前需要在VM添加网络:(网络 -> 虚拟网络编辑器)

根据上面的网络拓扑添加了 142 网段的 vMent2 和 72 网段的 VMnet3 网络

4.2 虚拟机添加网卡

虚拟机上:右键 -> 设置

添加网络适配器

虚拟机选择网络

4.3 添加后使用 ifconfig 命令查看

添加完网卡之后可能没有ip地址,需要手动添加:

vim /etc/sysconfig/network-scripts/ifcfg-ens34

通过上面命令分别进入网卡文件后,根据拓扑中的ip地址完成配置

配置完成后重启网络服务

systemctl restart network

重启完后再通过命令 ifconfig 查看网卡是否有ip地址

配置ip地址参考:https://www.cnblogs.com/yhongji/p/9336247.html


4.4.1 配置 service 端的 nat 转发

# 配置源地址142网段,目标地址220网段的地址转换,从ens33网卡出。
iptables  -t nat  -A POSTROUTING  -s 192.168.142.0/24 -d 192.168.220.0/24 -o ens33 -j  MASQUERADE
# 配置源地址220网段,目标地址142网段的地址转换,从ens34网卡出。
iptables  -t nat  -A POSTROUTING  -s 192.168.220.0/24 -d 192.168.142.0/24 -o ens34 -j  MASQUERADE
永久保存:iptables-save > /etc/sysconfig/iptables

4.4.2 配置 client 端的 nat 转发

# 配置源地址72网段,目标地址220网段的地址转换,从ens33网卡出。
iptables  -t nat  -A POSTROUTING  -s 192.168.72.0/24 -d 192.168.220.0/24 -o ens33 -j  MASQUERADE
# 配置源地址220网段,目标地址72网段的地址转换,从ens34网卡出。
iptables  -t nat  -A POSTROUTING  -s 192.168.220.0/24 -d 192.168.72.0/24 -o ens34 -j  MASQUERADE
永久保存:iptables-save > /etc/sysconfig/iptables

参考:https://blog.csdn.net/lemontree1945/article/details/80598242?utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1.no_search_link&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1.no_search_link


4.5 内网互 ping

配置完之后就可以 ping 内网看网路是否通畅了,(如果先用 service 端 ping client 端的内网,可能不通,那就先用 client 端 ping service 端的内网。反过来也一样,具体什么问题我也不清楚)

效果:

5、 scp模拟大流量场景

ping 包的流量太小,所以使用 scp (security copy)命令传输文件来模拟大流量场景

创建一个有大量数据的TXT,然后使用以下命令,从一段发送到另一端的内网

scp  [本地文件地址] {目的ip}:[对端存储地址]
scp /test.txt 192.168.142.131:/

6、修改配置文件去掉加密算法

参考:https://blog.csdn.net/sinat_20184565/article/details/102923916

效果:

strongswan 搭建 IPSec 实验环境相关推荐

  1. IPSEC实验环境搭建

    实验名称: 第三章 IP Sec VPN(一) VPN基本配置 实验要求的环境: 实验环境: 要求描述: 需要的软件工具.软件安装包:小凡 实验目的: 1)掌握IKE阶段1和阶段2的协商过程 2)在c ...

  2. Dynamips与VMware配合搭建网络实验环境

    之前我们已经利用Dynamips成功模拟了Cisco 3640路由器,并使用其VPC功能简单模拟了几台接入该路由器16×××换机模块的终端.但VPC模拟的终端与实际机器还是有很大差别,因此打算结合VM ...

  3. 搭建 OpenStack 实验环境 - 每天5分钟玩转 OpenStack(16)

    2019独角兽企业重金招聘Python工程师标准>>> 在学习 OpenStack 各服务之前,让我们先搭建起一个实验环境. 毋庸置疑,一个看得到摸得着而且允许我们随便折腾的 Ope ...

  4. centos redis make 报错_ubuntu 18.04 搭建 redis 实验环境

    本文只介绍在 Ubuntu 上搭建 redis 环境. 1. 安装构建工具 && sudo apt install make gcc python-dev 2. 下载 redis 源码 ...

  5. rhel7搭建可用实验环境

    在虚拟机中首次安装好系统,光盘自动挂载 服务器上是没有光盘的,会自动弹出 安装完成后: 卸载安装光盘 [root@localhost ~]#umount /dev/sr0 卸载后,光盘就没有了,跟真实 ...

  6. CentOS 6.3下Strongswan搭建IPSec ***(ipsec.conf配置文件有讲解)

    http://www.centoscn.com/p_w_picpath-text/config/2015/0813/5994.html http://wangzan18.blog.51cto.com/ ...

  7. 如何使用VirtualBox与GNS3搭建思科设备实验环境

    在做网络实验的时候发现其实Virual Box 跟GNS3搭配来用的话还是挺方便的,所以在这里发表一下环境的配置跟大家分享,如果发现有问题的也请各位看官不吝指教. 拓扑图: 因为分享的是怎么能让GNS ...

  8. 网络实验环境搭建--1.工具及搭建思路

    如果有很好的真机实验环境,那也不需要使用模拟器,但对于绝大多数人来说,真机实验环境太奢侈了,可望而不可求.用自己的电脑搭建实验平台就很有必要. 工欲善其事,必先利其器! 工具软件: VMware 虚拟 ...

  9. CCSA学习笔记 第二节 搭建实验环境

    搭建CCSA实验环境 一.个人电脑的要求 1.CPU支持虚拟化 2.win10注意关闭更新 3.内存大于等于16G 二.关于EVE的资源分配 1.内存大于等于8G 2.CPU分配2个,必须激活虚拟化( ...

最新文章

  1. 【Sql Server】数据库的3大服务
  2. Webpack 资源管理
  3. 按照左右半区的方式重新组合单链表
  4. C++五子棋(二)——游戏界面与棋子渲染
  5. brackets如何自动生成html,Brackets编辑器怎样自动格式化HTML代..._网络编辑_帮考网...
  6. jQuery对Table一个字段排序
  7. J2EE与.NET技术架构的比较
  8. Java方法中的参数太多,第3部分:构建器模式
  9. HDU6089 恐怖分子(变形线段树)
  10. 程序模拟键盘鼠标操作
  11. fl2440hello world模块驱动编写
  12. 使用SSMS将excel导入到sqlserver
  13. OpenJDK8 u282发布一个月了,龙芯还没有更新跟进
  14. iphone修改app名称_ios软件如何改名字 苹果手机怎么修改软件的图标名称呢
  15. 直播/点播系统快速搭建指南
  16. Unity随机创造敌人
  17. 【IC验证】Questasim使用指导
  18. 前端网站连接MySQL数据库
  19. C#生成COM组件,Delphi调用
  20. mysql数据设置有效期_zabbix管理六之数据有效期设置

热门文章

  1. Dialog DA14531 DSPS 快速、重复的断连设备导致的死机不广播问题解决办法
  2. Failed to connect to /xxx.xxx.xxx:50010 for block, add to deadNodes and continue
  3. 聊聊获取屏幕高度这件事
  4. spss与python和sql区别_数据分析中的Excel、R、Python、SPSS、SAS和SQL
  5. 三年级计算机操作试卷答案,三年级信息技术期末考试试题
  6. 办公大楼3D指纹门禁系统解决方案
  7. 使用国内源秒安装docker-compose
  8. k8s加入集群之获取token和sha256
  9. 华为云CDN助力火绒安全软件流畅下载体验
  10. 小米mix2安兔兔html5跑分,小米MIX 2S跑分多少?高通骁龙845安兔兔跑分实测