一、配置环境
说明:这里我们以R1为server,以R2为client,配置IP地址、路由
二、server端配置
1.定义AAA(AAA表示认证、授权、审计,一般涉及到用户名密码的都要起3A)
1.认证
aaa new-model //开启AAA认证
aaa authentication login ezvpn local //使用本地数据库进行登录认证,login是认证方法(表示通过登陆我这里来认证),ezvpn是数据库名,local表示在本地数据库查找用户名密码(这里因为做实验要用local),也可以单独设置一个AAA服务器来存放用户名和密码
username tech password tech123 //设置本地用户名和密码,用来给client做验证,注意等下client端设置VPN连接名是要跟这里一致
2.授权
aaa authorization network ezvpn local
//使用本地数据库进行网络授权,network是授权方法(network表示从别处过来的流量穿越我这台路由器去访问我路由器后面的流量;上面的login表示登陆这台路由器的流量),ezvpn是数据库名,local表示在本地数据库查找授权策略(授权策略就是给客户端推送的参数,这个在1.5阶段会配置)
3.审计
暂无配置
2.野蛮模式第一阶段配置
crypto isakmp enable
crypto isakmp policy 10
group 2 //注意这里要配置为组2,因为client端如果使用软件来登陆server端,那么那个软件是固定为group2的
authentication pre-share //认证用预共享密钥方式,但密钥会在第1.5阶段才配置
encryption 3des
hash sha
lifetime 86400
exit
crypto ipsec transform-set ccie esp-aes esp-sha-hmac
mode tunnel
exit
access-list 100 permit ip host 1.1.1.1 any
ip local pool p1 192.168.2.1 192.168.2.100 //定义推送给EzVPN用户的私网地址池
3.野蛮模式第1.5阶段配置
crypto isakmp client configuration group ccie //定义EzVPN用户组,当客户端匹配了这个用户组后,就会把下面的配置推送给客户端,跟上面配置的授权策略相作用(client端配置的用户组和预共享密钥要跟这里的一致)当然也可以定义多个组,匹配哪个组就给你推送哪个组的策略
key cisco123 //配置预共享密钥
pool p1 //要推送的地址池
acl 100 //调用acl
dns 8.8.8.8 //推送DNS
........ //还可以推送域名、DNS等等,具体的打问号自己看吧
crypto dynamic-map ccsp 10 //由于EzVPN用户都是远程连接,所有没有固定的地址,只能书写动态映射表
set transform-set ccie //设置转换集
reverse-route //注入反向路由,配置此命令后,EzVPN Server上会自动生成一条去往客户端的静态路由,保证内网网段的可通行
crypto map ccie 10 ipsec-isakmp dynamic ccsp //动态map不能直接绑定到接口,这里设一个静态map来关联动态map,再将静态map绑定到接口,ccie是静态map名
crypto map ccie client authentication list ezvpn //静态映射表调用AAA认证
crypto map ccie isakmp authorization list ezvpn //静态映射表调用AAA授权
crypto map ccie client configuration address respond //选择用什么方式来推送IP地址,如果是respond则是当客户端请求时才推送,如果是initiate则直接推送给客户端
int f0/0
crypto map ccie //把加密图关联到接口
三、client端配置
crypto ipsec client ezvpn tech //新建VPN连接,tech是连接名(类似于新建宽带连接)
group ccie key cisco123 //定义属于哪个EzVPN用户组和这个组的预共享密钥
mode client //设置模式(client、network、network plus)
peer 10.1.1.1 //设置对等体(即对端设备的地址)
connect manual //设置如何连接,有三种连接:①acl(通过acl匹配则发起连接) ②auto(自动发起连接) ③manual(手动发起连接)
int lo0
crypto ipsec client ezvpn tech inside //tech是VPN连接名,inside表示在这个接口下的网段的流量作为VPN流量
int f0/0
crypto ipsec client ezvpn tech outside //从这个接口出去的流量作为VPN流量
end
四、连接
连接方式一:通过配置连接
注意:以下操作都在客户端进行
crypto ipsec client ezvpn tech //客户端手动方式拨号到服务端,tech是EzVPN名,注意是在特权模式执行这条命令
crypto ipsec client ezvpn xauth //拨号完成后进行用户名密码验证(用户名密码输入上面配置的username和password)
这时我们可以show ip int brief查看服务端是否给我们推送IP地址
连接方式二:通过软件连接
通过Cisco VPN Client这个软件来连接,具体的连接请尝试自己查资料吧
五、查看
show crypto isakmp sa
show crypto ipsec sa
show crypto ipsec client ezvpn
R2#show crypto ipsec client ezvpn //查看服务端EzVPN配置
Easy VPN Remote Phase: 6
Tunnel name : tech //EzVPN名(即拨号器名)
Inside interface list: Loopback0
Outside interface: FastEthernet0/0
Current State: IPSEC_ACTIVE
Last Event: MTU_CHANGED
Address: 192.168.2.1 (applied on Loopback10000) //服务端给客户端推送的地址
Mask: 255.255.255.255 //推送的掩码
DNS Primary: 8.8.8.8 //推送的DNS
Save Password: Disallowed //服务端没有设置让客户端保存密码
Split Tunnel List: 1 //隧道分割列表,即赋予VPN客户端可以访问下面网络的权限
Address : 1.1.1.1
Mask : 255.255.255.255
Protocol : 0x0
Source Port: 0
Dest Port : 0
Current EzVPN Peer: 10.1.1.1