VPN相关技术
这些技术不是VPN专用的,但在搭建VPN时需要用到。
主要内容:
AAA认证:AAA认证在用户登录设备时使用,可提供用户身份的认证、授权、记账等服务。
IPSec:用于数据的加密传输,保护数据传输过程中的安全。
AAA认证
为授权用户提供用户名、密码,在用户登录设备时使用。
AAA认证的使用很广泛,包括远程登录认证、WPA认证、VPN登录认证等应用。本部分以“远程登录”为例介绍AAA认证的配置。
AAA认证的两种配置方式:
配置在交换机、路由器上。
用Radius服务器或Tacacs服务器实现认证。
远程登录
远程登录是管理员维护和管理设备的常用技术。它可以让管理员对运行中的网络设备进行访问和维护。
管理员在计算机上使用 telnet 设备IP地址 命令登录设备,就可以对设备进行查看和配置了。
远程登录的条件:设备已经有IP地址;配置了特权密码;开启了登录线路。
如果没有配置认证,登录时只需使用密码。如果配置了认证,登录时需使用用户名和密码,如果需要还可为用户设置权限。
设备的初始配置
新设备在接入网络之前可使用控制台配置初始参数。
配置各接口IP地址。
配置设备间的路由。
配置特权密码:该密码在从用户模式进入特权模式时使用。
如果用 enable password 设置密码,则密码在配置文件中用明文呈现,安全性低;用 enable secret 设置密码则显示为密文,安全性高。
在设备上配置AAA认证
AAA认证可直接配置在三层交换机和路由器上,一般用于用户较少的场合,比如为设备配置管理员账户。
开启远程登录线路
交换机的线路号是0~15,路由器的线路号是0~4,它们用于控制同时登录设备的人数。
配置完成后,在客户机用“telnet 设备IP地址”登录设备。
在特权模式下用“show running-config”可查看配置文件,用“show user”可查看登录的用户。
查看配置
使用Radius服务器实现AAA认证
AAA认证也可由Radius服务器提供,可对用户进行集中管理,多用于管理多个设备或用户数量很多的场合,还可提供授权、记账等服务。
因Switch3560交换机不支持Radius服务器,本例只配置路由器的登录认证。
配置Radius服务器

Client Name:服务名,自定义。
Client IP:认证的设备地址。此处为路由器的IP地址。
Secret:公钥。设备中也需配置相同值。
Username、Password:用户名、密码。用户登录设备时使用。
配置路由器
配置特权密码、开启远程登录线路的配置方法与上例相同。
配置完成后,在客户机用“telnet 设备IP地址”登录设备。
查看配置
使用Tacacs+服务器实现AAA认证
Tacacs+服务器也可提供AAA认证,它的用法与Radius服务器十分相似。
Switch3560交换机支持Tacacs+服务器认证,本例也可在三层交换机上配置。
IPSec
IPSec是互联网安全协议的简称,用于对链路上传输的数据流提供安全防护。
在链路两端都需配置IPSec,设置的参数要求一致。
协商:两端的设备通过协商确定加密算法。
策略:确定要保护的流、封装方式等。
封装:对流中的IP数据报进行加密,再封装一个新的IP报头,地址是链路两端的地址。
传输:数据到达对端后对数据进行来源验证,并检验数据的完整性,如果通过验证就取出里面的IP数据报,解密后进入后续传输链路。
说明:IPSec只对链路上指定的流进行保护,该链路上传输的其它流不受保护。
IPSec的组成
IPSec不是单一的协议,它是由AH、ESP、IKE组成的协议套件。
AH协议:协议报头。提供数据源验证、数据完整性校验、防报文重放等功能。
ESP协议:安全载荷。对报文进行加密和验证。
IKE协议:提供加密算法,为AH和ESP提供参数。
关键参数
验证算法:产生信息摘要,用于数据完整性验证、加密密码、电子签名等。
md5:信息摘要算法。可产生128位的散列值,目前已有破解方法。
sha:安全散列算法。有多个算法标准,安全性较高。
加密算法:用于对数据加密。常用算法包括 des、3des、aes等。
密钥(key):加密/解密时需要使用密钥,只要密钥不泄漏通常数据无法解密。
IPSec使用预共享密钥的方式,要求把密钥设置在两端设备上,不让它在网络中传输,保护了密钥的安全。
需要的时候还可设置自动定期更换的密钥,它的安全性更高。
保护的流:指定需保护的流。通常用访问控制列表来设置。
IPSec的配置
IPSec的配置内容比较复杂,可把它分成两个阶段进行配置。
第1阶段:isakmp协商。协商使用的加密算法、验证算法、共享密钥等。
各参数都有多个取值,可通过“?”查看。
“公钥”是自定义的单词,两端的设备须使用相同的公钥。
“对端地址”是链路对端接口的IP地址。
第2阶段:配置IPSec参数。设置保护策略、工作模式、指定保护的数据流等。
“策略名”、“地图名”是自定义的单词。
“100”是访问控制列表的表号,“源地址条件”、“目的地址条件”指定需要保护的流的地址格式。
在接口上应用IPSec
链路两端的设备都需要配置IPSec,它们使用的公钥、加密方式、策略必须相同。
两端设备都配置完成后,用ping命令验证连通情况,用以下命令可查看IPSec是否正常:
Router# show crypto isakmp sa
Router# show crypto ipsec sa
在模拟环境中可通过抓包观察在链路中IP数据报的变化。
IPSec配置举例
假设R1和R2间的传输链路需要保护,配置IPSec可以让该链路上的IP数据报加密:
主要参数:
保护的链路:链路两端地址。本例为 200.1.2.1 和 200.1.2.2。
保护的流:本例为 200.1.1.0 和 200.1.3.0 之间的数据流。
公钥:用于双方设备的认证和数据的加密。本例设置为 BSY。
验证算法:取值有md5和sha。本例使用 md5。
加密算法:取值有3des、aes、des等。本例使用 3des。
组号:取值有1、2、5。本例使用 5。
策略:指定AH协议和ESP协议使用的加密算法和验证算法,取一组对应值即可。本例使用 esp-3des esp-sha-hmac。
链路两边的设备除相应的地址值不同外,其它都相同。
配置完成后两边可以正常通信,可以用抓包检测IPSec是否起作用。
查看配置
思考题
在上图的R2路由器上增加一个网络:
抓包检测PC2访问服务器时能否受到IPSec的保护?
如果不能,问题出在哪?如何修改?