|
工作原理:一边服务器的网络子网为192.168.1.0/24路由器为100.10.15.1另一边的服务器为192.168.10.0/24路由器为200.20.25.1.执行下列步骤:5 o+ a5 f7 \6 D! [6 h5 A4 n: w
1. 确定一个预先共享的密钥(保密密码)(以下例子保密密码假设为noIP4u)' T# R; I [& q7 d: z
2. 为SA协商过程配置IKE.
: v* J9 l" W3 G7 x8 w- B& @8 O1 y* `2 ^
3. 配置IPSec.; X# g4 O4 j n3 J* f9 o, N! X4 a# f
[; o) L4 C0 a- _: t4 _
配置IKE:
: ^$ J$ v1 G$ |. m. a Shelby(config)#crypto isakmp policy 1
' o1 [- \, ~, z$ n- k6 }
. ?5 s; g) n3 z6 i, f v1 H6 c 注释:policy 1表示策略1,假如想多配几个VPN,可以写成policy 2、policy3┅
7 F1 _ ^+ w' @5 p0 c0 j% t4 S
0 |. k, C6 ^: F Shelby(config-isakmp)#group 1
/ J' c1 d: k* ~7 W. g* x- c8 ], s' v6 t2 P) K
注释:除非购买高端路由器,或是VPN通信比较少,否则最好使用group 1长度的密钥,group命令有两个参数值:1和2.参数值1表示密钥使用768位密钥,参数值2表示密钥使用1024位密钥,显然后一种密钥安全性高,但消耗更多的CPU时间。
$ h7 \6 c" W! j5 x: u Shelby(config-isakmp)#authentication pre-share6 ~2 J' e# R9 _( X1 t7 Z
* V% H- m6 c. Y3 U& c! c7 K8 H0 y
注释:告诉路由器要使用预先共享的密码。, n- E+ o, g8 e2 `9 D$ I( I
Shelby(config-isakmp)#lifetime 3600
" s. r2 G% A7 k7 ]) e, F9 M
# z7 @/ w$ H( F! W2 X+ A 注释:对生成新SA的周期进行调整。这个值以秒为单位,默认值为86400,也就是一天。值得注意的是两端的路由器都要设置相同的SA周期,否则VPN在正常初始化之后,将会在较短的一个SA周期到达中断。
1 b$ V1 y. c# |, ? Shelby(config)#crypto isakmp key noIP4u address 200.20.25.1
" v$ A$ U r" G+ ?3 D, J8 R) O q" d6 F; I! w
注释:返回到全局设置模式确定要使用的预先共享密钥和指归VPN另一端路由器IP地址,即目的路由器IP地址。相应地在另一端路由器配置也和以上命令类似,只不过把IP地址改成100.10.15.1.+ C5 q. \9 L% O" T: a) M* z8 {
/ K6 [5 \7 x- v, ]" S配置IPSec, _9 E/ C+ H* Q! p2 M( |
9 A0 G* b4 @' r/ n! C
Shelby(config)#access-list 130 permit ip 192.168.1.0 0.0.0.255 172.16.10.0 0.0.0.255
8 {% J5 T H5 K
2 g2 A8 I- j: p& l: | 注释:在这里使用的访问列表号不能与任何过滤访问列表相同,应该使用不同的访问列表号来标识VPN规则。
7 B' |( E' X; O/ {0 _ Shelby(config)#crypto ipsec transform-set vpn1 ah-md5-hmac esp-des esp-md5-hmac
. {6 i9 L( I; Z7 C/ A5 p9 w$ J7 y' J: F8 ?
注释:这里在两端路由器唯一不同的参数是vpn1,这是为这种选项组合所定义的名称。在两端的路由器上,这个名称可以相同,也可以不同。以上命令是定义所使用的IPSec参数。为了加强安全性,要启动验证报头。由于两个网络都使用私有地址空间,需要通过隧道传输数据,因此还要使用安全封装协议。最后,还要定义DES作为保密密码钥加密算法。6 y7 d& }- J* l) S o* {! ^) _/ s
Shelby(config)#crypto map shortsec 60 ipsec-isakmp/ H% a* `: L$ R7 s
" c# s }3 \) ^! f 注释:以上命令为定义生成新保密密钥的周期。如果攻击者破解了保密密钥,他就能够解使用同一个密钥的所有通信。基于这个原因,我们要设置一个较短的密钥更新周期。比如,每分钟生成一个新密钥。这个命令在VPN两端的路由器上必须匹配。参数shortsec是我们给这个配置定义的名称,稍后可以将它与路由器的外部接口建立关联。
0 z" d5 A6 U' K2 U5 V Shelby(config-crypto-map)#set peer 200.20.25.1
+ J) m! I2 [2 i- a
( \/ X2 J7 T+ l# U- F, _$ [( z0 ~ 注释:这是标识对方路由器的合法IP地址。在远程路由器上也要输入类似命令,只是对方路由器地址应该是100.10.15.1.
4 [% |$ {1 {# ~4 ^& u" b$ C" t8 V& z9 e( w3 s6 k$ T
Shelby(config-crypto-map)#set transform-set vpn1" Z2 k! y/ X9 x; Z2 G
" |# S' e) Q" B1 B$ Y x4 j Shelby(config-crypto-map)#match address 130
3 E. G* o; m0 o8 |* P! T; w" }/ A+ q* S' W* X# p7 Y6 m1 K
注释:这两个命令分别标识用于这个连接的传输设置和访问列表。) @' r( ]5 \! J. _! Q1 E ^
Shelby(config)#interface s0
\' [% i' H' N E; g3 }# B" Y8 h% p( Q) @0 }# y
Shelby(config-if)#crypto map shortsec" W+ S: ^% y( r) s
, a6 V8 I4 d/ v A 注释:将刚才定义的密码图应用到路由器的外部接口。; d! H4 s' n. D( a/ L
现在剩下的部分是测试这个VPN的连接,并且确保通信是按照预期规划进行的。
6 M1 c8 I# Y8 p9 ]5 f 最后一步是不要忘记保存运行配置,否则所作的功劳白费了。
7 {% o& b- B; R/ n5 y 附:参照网络安全范围,VPN硬件设备应放置以下四个地点:1 D% h% e2 Q* q' ~4 |7 m. X- t
● 贒MZ的防火墙之外
, X! N; A% a. w7 | R ● 连接到防火墙的第三个网卡(服务网络)
+ x2 F0 X' j+ J9 W! K9 \& J ● 在防火墙保护的范围之内4 i* d, b9 C/ b( V% @; d
● 与防火墙集成8 G/ n4 x3 e# I: Y6 A2 E, m
, a* q) K1 Q7 N2 t* V! U本文摘自中国IT论坛6 L( F! t7 K3 S ?' b( S" D' X
: u- A* {8 @$ q! i4 n
|
|