温故而知新!

IPSec VPN搭建测试记录(二)

Posted on By JesseXuan

前言

待续。。。

IPSec概述

待续。。。

IPSEC搭建

  • 测试环境描述
    1. IPSEC服务器系统CentOS7,libreswan软件
    2. VPN服务器198双网卡:wan–em1(192.168.22.198), lan–p1p1(192.168.0.186)
    3. VPN服务器196双网卡:wan–em1(192.168.22.196), lan–p1p1(192.168.110.70)
    4. 测试PC1:192.168.0.115, gw 192.168.0.186
    5. 测试PC2:192.168.110.30, gw 192.168.110.70
  • 测试实验网络拓扑

topo

  • 安装ipsec套件
    #在两个CentOS7服务器上安装ipsec软件libreswan
    # yum install -y libreswan
    
  • 配置开启数据转发
    # vim /etc/sysctl.conf
    #在此文件末尾加上net.ipv4.ip_forward=1,net.ipv4.conf.default.rp_filter=0
    #
    #关闭icmp重定向
    # sysctl -a | egrep "ipv4.*(accept|send)_redirects" | awk -F "=" '{print$1"= 0"}' >> /etc/sysctl.conf
    #
    # sysctl -p
    
  • 配置ipsec主文件/etc/ipsec.conf
    #两个服务器分别修改相应IP和网段
    #
    #
    

    ikev1

  • 配置ipsec密钥文件/etc/ipsec.secrets

    vim /etc/ipsec.secrets

    #include /etc/ipsec.d/*.secrets
    192.168.22.198  %any:   PSK "jesse"
    
  • 启动ipsec服务
    #在两个服务器上执行启动ipsec服务进程
    # systemctl start ipsec
    #
    #启动服务进程后验证ipsec
    # ipsec verify
    #
    #libreswan监听在UDP的500和4500两个端口,其中500是用来IKE密钥交换协商,4500的NAT-T是nat穿透的
    # netstat -anp | grep pluto
    #
    #接着手动创建连接
    # ipsec auto --up site196-to-site198
    #
    #手动关闭ipsec connect连接ipsec auto --down site196-to-site198
    #由于上述需要手动创建连接,可以将件/etc/ipsec.conf内的auto=add更改为auto=start则可启动ipsec时就可自动进行连接。
    

    upStatus1

测试结果

IKE v1

根据上述配置测试结果可以看出流程为ike v1模式。

pkcont

解码后呈现(关于wireshark如何解码ESP包可参考先前博文《IPSec ESP wireshark解包》)

pkdata

IKE v2

在/etc/ipsec.conf添加ikev2=insist强制启用ike v2模式。

ikev2

upStatus2

CentOS7与OPENWRT终端对接测试

  • 测试环境描述
    1. IPSEC服务器系统CentOS7,libreswan软件
    2. VPN服务器198双网卡:wan–em1(192.168.22.198), lan–p1p1(192.168.110.60)
    3. 业务服务器 192.168.110.70,gw 192.168.110.60
    4. 路由终端CPE:strongswan软件,wan–10.56.88.66, lan–192.168.150.1
    5. 测试PC1:192.168.150.186, gw 192.168.150.1
  • 测试实验网络拓扑

topo1

  • Server端配置

bcServerconf

  • 路由终端配置

bcCPEconf

  • 测试结果

bcCPEstate

参考链接

CentOS 6.3下基于Openswan IPSec VPN的实现https://blog.csdn.net/bytxl/article/details/50457568

保护虚拟私用网络(VPN)https://access.redhat.com/documentation/zh-cn/red_hat_enterprise_linux/7/html/security_guide/sec-securing_virtual_private_networks