|
工作原理:一边服务器的网络子网为192.168.1.0/24路由器为100.10.15.1另一边的服务器为192.168.10.0/24路由器为200.20.25.1.执行下列步骤:: a% m: {% i5 z
1. 确定一个预先共享的密钥(保密密码)(以下例子保密密码假设为noIP4u)
3 C4 z: i: _& f5 k# d7 x7 ^ 2. 为SA协商过程配置IKE.$ e9 I0 k8 z" ~6 U
, ^+ s6 d2 T; L; \' c4 c
3. 配置IPSec.4 u+ r, p6 ^6 w W' B# K
/ W: w4 R: [6 ]' ]* n 配置IKE:$ R0 O( b- t: p" Q1 Q
Shelby(config)#crypto isakmp policy 1
+ s1 x9 h) ]" A) f
0 M p/ m) A* q' I5 b' ^, U- u4 F 注释:policy 1表示策略1,假如想多配几个VPN,可以写成policy 2、policy3┅& p" c9 E* b" o
1 t( i( R; o' v5 D5 K( S/ z Shelby(config-isakmp)#group 1
' Q F" B* }4 T1 U* c) i$ @+ [3 ]; D7 d: h* I ^8 B! k
注释:除非购买高端路由器,或是VPN通信比较少,否则最好使用group 1长度的密钥,group命令有两个参数值:1和2.参数值1表示密钥使用768位密钥,参数值2表示密钥使用1024位密钥,显然后一种密钥安全性高,但消耗更多的CPU时间。
5 \( C a, F% p Shelby(config-isakmp)#authentication pre-share
' k i6 @0 E7 `! t6 H9 G, F6 ^/ }% y' g7 E; F8 h
注释:告诉路由器要使用预先共享的密码。+ v. D7 y# N- ^& J& z+ m% f
Shelby(config-isakmp)#lifetime 3600! I$ e; F5 x' r( I/ }+ c6 \
7 f2 m0 m* S( x/ m' i' H 注释:对生成新SA的周期进行调整。这个值以秒为单位,默认值为86400,也就是一天。值得注意的是两端的路由器都要设置相同的SA周期,否则VPN在正常初始化之后,将会在较短的一个SA周期到达中断。6 `% b# ?" C, _' K
Shelby(config)#crypto isakmp key noIP4u address 200.20.25.1. x# P8 A8 d5 ~
7 B5 y( T: g9 K3 y" Q
注释:返回到全局设置模式确定要使用的预先共享密钥和指归VPN另一端路由器IP地址,即目的路由器IP地址。相应地在另一端路由器配置也和以上命令类似,只不过把IP地址改成100.10.15.1.* h2 c" {2 o% h# L* }! O6 g
# R+ Q5 i. a+ [0 e7 W7 `
配置IPSec0 {% O3 h8 G( j6 V% I" p
* d, q% e0 y6 a; u4 ~
Shelby(config)#access-list 130 permit ip 192.168.1.0 0.0.0.255 172.16.10.0 0.0.0.255
5 Y" p2 ]+ y7 r7 U9 G3 M1 m+ l
" c; j, g' k% P5 h1 M- E, N 注释:在这里使用的访问列表号不能与任何过滤访问列表相同,应该使用不同的访问列表号来标识VPN规则。( D' T4 ?7 m7 h$ Z9 Y6 L2 {
Shelby(config)#crypto ipsec transform-set vpn1 ah-md5-hmac esp-des esp-md5-hmac* k7 C3 z& a8 ?7 ~4 o
Z; G6 X2 Q5 W1 | 注释:这里在两端路由器唯一不同的参数是vpn1,这是为这种选项组合所定义的名称。在两端的路由器上,这个名称可以相同,也可以不同。以上命令是定义所使用的IPSec参数。为了加强安全性,要启动验证报头。由于两个网络都使用私有地址空间,需要通过隧道传输数据,因此还要使用安全封装协议。最后,还要定义DES作为保密密码钥加密算法。
& n0 b: |. m- ? ^2 G6 D7 H Shelby(config)#crypto map shortsec 60 ipsec-isakmp
- B2 n4 [7 i/ W9 X( z q- n v* a* ^. E3 w- Y1 \$ h
注释:以上命令为定义生成新保密密钥的周期。如果攻击者破解了保密密钥,他就能够解使用同一个密钥的所有通信。基于这个原因,我们要设置一个较短的密钥更新周期。比如,每分钟生成一个新密钥。这个命令在VPN两端的路由器上必须匹配。参数shortsec是我们给这个配置定义的名称,稍后可以将它与路由器的外部接口建立关联。
' i i7 D* F% L Shelby(config-crypto-map)#set peer 200.20.25.1, T+ N0 {, A+ \/ L6 n# {3 B& m
5 S! s" i h" S' U& \4 ^5 C 注释:这是标识对方路由器的合法IP地址。在远程路由器上也要输入类似命令,只是对方路由器地址应该是100.10.15.1.# V9 J, h: g, S* K3 W8 i
9 g- H% z: c; \* @
Shelby(config-crypto-map)#set transform-set vpn1& Q' `+ C H1 Q) Z5 {
3 }) L- R* j9 d6 H Shelby(config-crypto-map)#match address 130# S$ G, `" E9 ]4 R) u1 s% y% @9 o6 u4 l
7 C% I+ b. o% x" G) }% D+ Q7 u, J) q 注释:这两个命令分别标识用于这个连接的传输设置和访问列表。
$ X |9 D! s) W3 ` Shelby(config)#interface s0
9 @8 d2 x+ W- R( w {! _" k% N! ~0 L+ x# k3 j8 U7 L4 o7 p
Shelby(config-if)#crypto map shortsec: A* A# j" d8 b$ G0 G
" r/ i( L1 w9 ?
注释:将刚才定义的密码图应用到路由器的外部接口。1 F6 t# r# `7 x, Q0 y0 o$ l. b0 N
现在剩下的部分是测试这个VPN的连接,并且确保通信是按照预期规划进行的。% j; x4 r# U5 {2 I! ^9 W
最后一步是不要忘记保存运行配置,否则所作的功劳白费了。# K) s* F! l' y3 j7 t0 s8 P9 `
附:参照网络安全范围,VPN硬件设备应放置以下四个地点:
1 a' h H' i& B6 y; E ● 贒MZ的防火墙之外: s- ~- O0 \7 C( z8 Q" y
● 连接到防火墙的第三个网卡(服务网络)
" M/ _" e+ Y# C \* a7 W3 Q9 c ● 在防火墙保护的范围之内
! V$ M* U' u2 d4 c ● 与防火墙集成
! o7 x) g+ ?5 q) ~( M) Y! p- S 2 T4 c& H* A+ d ^6 b) r+ w
本文摘自中国IT论坛
% e% |$ U! c% l, p0 H% ^0 k, q
3 v) N' v) u/ s. o( \; S, ? |
|