【思科】IPsec VPN 实验配置(动态地址接入)

发布时间:2024年01月17日

在这里插入图片描述

注意

因为本篇文章,就是IPsec的实验配置的话,它们两端的IP地址是固定
那么就用第一阶段的主模式(Main Mode)
和第二阶段的快速模式(Quick Mode)就好啦
因为对端是动态地址接入,就是它的地址不固定,这个时候就需要用到动态安全策略啦

为什么要用动态安全策略?
因为,对端就是R3,可以是通过PPPoE拨号来获取到IP地址,这个时候的话,它是有一个租期的,那到了时间,R3的公网地址就会改变,而我R1的话,是可以按照动态安全策略来进行动态调整,就不会像地址固定那样的被动

还有,对于R1来说,对端R3的IP地址并不知道,这个时候就不能从R1这端主动发起建立IPsec VPN隧道的请求,得让R3来进行请求。

而且,R1的话,它的远端对等体IP地址就是 0.0.0.0 ,这样子只需要我的预共享密钥一致,就能够匹配成功,这样子也可以实现动态调整。 并且,R1这边是不用去设置ACL的,等到它建立起IPsec VPN隧道的时候,在IPsec SA的信息中,就携带着需要保护的流量,可以往下翻翻看啦

实验需求

R1为企业总部网关,R3为企业分部网关,分部与总部通过公网建立通信。分部子网为202.101.23.0/24,总部子网为202.101.12.0/24。

企业希望对分部子网与总部子网之间相互访问的流量进行安全保护。分部与总部通过公网建立通信,可以在分部网关与总部网关之间建立一个IPSec隧道来实施安全保护。
在这里插入图片描述

配置思路

  1. 基础配置,实现全网互通(命名 + IP地址 + 静态路由)保证两端路由可达

  2. 第一阶段 IKE SA
    ① 设置IKE的策略,里面包含开启预共享密钥的认证、加密算法、DH组等内容
    ② 配置预共享密钥和远端对等体地址
    对于R1的远端对等体地址,我们要设置为 0.0.0.0

  3. 第二阶段 IPsec SA
    R1:(固定地址)
    因为不知道R3的IP地址,就不用去配置ACL和对等体IP地址
    ① 转换集
    ② 创建动态安全策略dynamic-map,调用转换集
    ③ 配置安全策略组map,封装动态的安全策略,并在接口上调用
    R3:(动态地址接入)
    和固定地址的一样,因为已知对端R1的IP地址
    ① 转换集
    ② ACL : 匹配保护的流量,即定义需要IPSec保护的数据流
    ③ 配置安全策略组map,并引用ACL、IPSec转换集和对等体IP地址,确定对何种数据流采取何种保护方法

  4. 在接口上应用安全策略组map,使接口具有IPSec的保护功能

IPsec VPN 本质:阶段一保护阶段二 阶段二保护数据

配置命令

拓扑

在这里插入图片描述

R1

基础配置

配置R1的基础配置,再用默认路由实现公网可达

R1(config)#int e0/0
R1(config-if)#no shutdown 
R1(config-if)#ip address 202.101.12.1 255.255.255.0
R1(config-if)#ex

R1(config)#int e0/1
R1(config-if)#no shutdown 
R1(config-if)#ip address 192.168.10.254 255.255.255.0
R1(config-if)#ex

R1(config)#ip route 0.0.0.0 0.0.0.0 202.101.12.2        ##配置默认路由指向ISP运营商,实现公网可达

R1(config)#int e0/0
R1(config-if)#crypto map mymap
R1(config-if)#ex

配置第一阶段 IKE SA

协商出IKE SA ,对第二阶段IPsecSA的协商过程做保护

## 创建IKE的策略,优先级为10
R1(config)#crypto isakmp policy 10 
R1(config-isakmp)#encryption 3des                  ## 用3des加密
R1(config-isakmp)#authentication pre-share         ## 身份认证用预共享密钥
R1(config-isakmp)#hash md5                         ## 配置完整性校验方式为 md5
R1(config-isakmp)#group 5                          ## 设置 DH 组 5
R1(config-isakmp)#ex

## 配置与共享密钥为 520,对方的密钥也要是一致才能匹配成功,才能协商IKE SA
## 因为对端R3 是动态地址接入,并不知道对端IP地址,就用0.0.0.0 来指定
R1(config)#crypto isakmp key 520 address 0.0.0.0  

配置第二阶段 IPsec SA

在阶段1建立的IKE SA的保护下完成IPSec SA的协商

## 创建转换集 myset(名字) 
## 封装协议(esp-md5完整性校验 3des 加密 )
R1(config)#crypto ipsec transform-set myset esp-3des esp-sha256-hmac   
R1(cfg-crypto-trans)#mode tunnel          ## 传输方式用隧道传输
R1(cfg-crypto-trans)#exit 

## 创建一个动态安全策略dymap,引用IPsec转换集
R1(config)#crypto dynamic-map dymap 10
R1(config-crypto-map)#set transform-set myset
R1(config-crypto-map)#ex

## 因为动态的安全策略不能直接在接口上调用
## 我们就用常用的安全策略来封装这个动态策略dymap,然后再接口上调用
R1(config)#crypto map mymap 10 ipsec-isakmp dynamic dymap 

## 在出接口上调用mymap
R1(config)#int e0/0
R1(config-if)#crypto map mymap               ##进入接口,调用其安全策略mymap
R1(config-if)#ex

ISP_R2

基础配置

ISP_R2(config)#int e0/0
ISP_R2(config-if)#no shutdown
ISP_R2(config-if)#ip address 202.101.12.2 255.255.255.0
ISP_R2(config-if)#ex

ISP_R2(config)#int e0/1
ISP_R2(config-if)#no shutdown 
ISP_R2(config-if)#ip address 202.101.23.2 255.255.255.0
ISP_R2(config-if)#ex

R3

基础配置

配置R3的基础配置,再用默认路由实现公网可达

R3(config)#int e0/0
R3(config-if)#no shut
R3(config-if)#ip address 202.101.23.3 255.255.255.0
R3(config-if)#ex

R3(config)#int e0/1
R3(config-if)#no shut
R3(config-if)#ip address 192.168.20.254 255.255.255.0
R3(config-if)#ex

R3(config)#ip route 0.0.0.0 0.0.0.0 202.101.23.2        ##配置默认路由指向ISP运营商,实现公网可达

配置第一阶段 IKE SA

协商出IKE SA ,对第二阶段IPsecSA的协商过程做保护

## 创建IKE的策略,优先级为10
R3(config)#crypto isakmp policy 10                 ## 用策略来存放IKE的配置
R3(config-isakmp)#encryption 3des                  ## 用3des加密
R3(config-isakmp)#authentication pre-share         ## 身份认证用预共享密钥
R3(config-isakmp)#hash md5                         ## 配置完整性校验方式为 md5
R3(config-isakmp)#group 5                          ## 设置 DH 组 5
R3(config-isakmp)#ex

## 配置预共享密钥为 520,对方的密钥也要是一致才能匹配成功,才能协商IKE SA
R3(config)#crypto isakmp key 520 address 202.101.12.1    

配置第二阶段 IPsec SA

在阶段1建立的IKE SA的保护下完成IPSec SA的协商

## 创建转换集 myset(名字) 
## 封装协议(esp-md5完整性校验 3des 加密 )
R1(config)#crypto ipsec transform-set myset esp-3des esp-sha256-hmac   
R1(cfg-crypto-trans)#mode tunnel          ## 传输方式用隧道传输
R1(cfg-crypto-trans)#exit 

## 协商感兴趣流量,也就是需要保护的流量
R3(config)#access-list 100 permit ip 192.168.20.0 0.0.0.255 192.168.10.0 0.0.0.255      

## 将配置的内容都引用在安全策略mymap里面 ,使用ike自动协商
R3(config)#crypto map mymap 10 ipsec-isakmp          
R3(config-crypto-map)#match address 100         ## 匹配ACL 100
R3(config-crypto-map)#set peer 202.101.12.1     ## 设置对端对等体地址
R3(config-crypto-map)#set transform-set myset   ## 绑定转换集 myset
R3(config-crypto-map)#ex

## 在出接口上调用
R3(config)#int e0/0
R3(config-if)#crypto map mymap               ##进入接口,调用其安全策略mymap
R3(config-if)#ex

PC

因为我是在EVE中来操作思科模拟器,所以我就用路由器来模拟PC电脑,就需要关闭路由功能

PC1

PC1(config)#no ip routing                            ## 关闭路由功能
PC1(config)#ip default-gateway 192.168.10.254        ## 配置网关

PC1(config)#int e0/0
PC1(config-if)#no shutdown                 
PC1(config-if)#ip address 192.168.10.1 255.255.255.0  
PC1(config-if)#ex

PC2

PC2(config)#no ip routing                            ## 关闭路由功能
PC2(config)#ip default-gateway 192.168.20.254        ## 配置网关

PC2(config)#int e0/0
PC2(config-if)#no shutdown
PC2(config-if)#ip address 192.168.20.1 255.255.255.0
PC2(config-if)#ex

检查

因为R3是动态地址分配,这个时候R1是不清楚R3的具体IP地址的,所以PC1 是不能拿来触发IPsec VPN隧道的,如下图所示,PC1 ping 不通PC2的 IP地址

那这个时候,我们就要用R3主动去Ping R1,因为R3是知道R1的准确的IP地址,所以,必须得要用动态获取地址的一端主动发起通信过程,才能成功坚持IPsec VPN

在这里插入图片描述

建立成功

里面主模式交换六个报文,成功协商IKE SA
而快速模式的三个报文,就成功的协商IPsec SA
这两个出来就成功建立了 IPsec VPN,对流量实施了加密啦~
在这里插入图片描述

查看命令

① 查看IKE SA的基本信息

R1#show crypto isakmp sa在这里插入图片描述

② 查看IPsec SA的基本信息

R1# show crypto ipsec sa

从图中我们就可以知道:
远端的IP地址: 202.101.23.3

需要保护的流量(ACL):
本地:192.168.10.0/24 → 远端: 192.168.20.0/24

在这里插入图片描述

清除IKE / IPsec SA命令

为什么要清楚掉IKE / IPsec呢?
因为,这个IPsec VPN它是按照第一次配置的代码来执行的,当我们想改一下传输模式或者加密方式等等,就需要先清除掉之前的SA信息,就是IPsec SA和IKE SA,这样子才能去完成修改,切记哦

清除 IKE SA的命令:

R1#clear crypto isakmp
在这里插入图片描述
清除 IPsec VPN的命令:

R1#clear crypto sa
在这里插入图片描述

配置文档

R1

hostname R1

int e0/0
no shut
ip address 202.101.12.1 255.255.255.0
ex

int e0/1
no shut
ip address 192.168.10.254 255.255.255.0
ex

ip route 0.0.0.0 0.0.0.0 202.101.12.2        

crypto isakmp policy 10 
encryption 3des 
authentication pre-share 
hash md5 
group 5
ex

crypto isakmp key 520 address 202.101.23.3  

crypto ipsec transform-set myset esp-3des esp-sha256-hmac 
mode tunnel 
ex

crypto dynamic-map dymap 10
set transform-set myset
ex

crypto map mymap 10 ipsec-isakmp dynamic dymap 

int e0/0
crypto map mymap
ex

R3

hostname R3

int e0/0
no shutdown
ip address 202.101.23.3 255.255.255.0
ex

int e0/1
no shutdown
ip address 192.168.20.254 255.255.255.0
ex

ip route 0.0.0.0 0.0.0.0 202.101.23.2        

crypto isakmp policy 10 
encryption 3des 
authentication pre-share 
hash md5 
group 5
ex

crypto isakmp key 520 address 202.101.12.1  

crypto ipsec transform-set myset esp-3des esp-sha256-hmac 
mode tunnel 
exit 

access-list 100 permit ip 192.168.20.0 0.0.0.255 192.168.10.0 0.0.0.255     

crypto map mymap 10 ipsec-isakmp
match address 100
set peer 202.101.12.1
set transform-set myset
ex

int e0/0
crypto map mymap
ex

文章来源:https://blog.csdn.net/2301_77161465/article/details/135657514
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。