|
工作原理:一边服务器的网络子网为192.168.1.0/24路由器为100.10.15.1另一边的服务器为192.168.10.0/24路由器为200.20.25.1.执行下列步骤:. C' M; K- i( i1 y; ^# p: P' G
1. 确定一个预先共享的密钥(保密密码)(以下例子保密密码假设为noIP4u)
( X. C( K! r! ?2 ?+ n5 X) ` 2. 为SA协商过程配置IKE.) O, O4 {. H' i, j2 g
( ^% @0 K/ q+ H+ S 3. 配置IPSec.9 c; |& w, F% C" m6 X% f2 h
# e! _ \% m( M/ R, ?) i 配置IKE:4 k$ Z! N) U5 N
Shelby(config)#crypto isakmp policy 1
! G9 l9 E0 r, i, n* L6 p
3 E P+ x/ }" t# p4 s, r3 S* {" k 注释:policy 1表示策略1,假如想多配几个VPN,可以写成policy 2、policy3┅1 l) n" g3 y) f5 Y. V. Y' n
8 D8 ~ M: j, D7 ~* ]$ M$ A: S
Shelby(config-isakmp)#group 1( u$ X; B- _( v0 ?9 ?- z
1 a' `7 s+ R( \: d9 ? 注释:除非购买高端路由器,或是VPN通信比较少,否则最好使用group 1长度的密钥,group命令有两个参数值:1和2.参数值1表示密钥使用768位密钥,参数值2表示密钥使用1024位密钥,显然后一种密钥安全性高,但消耗更多的CPU时间。
* }3 d) K, D8 S8 Z2 X/ z Shelby(config-isakmp)#authentication pre-share5 T5 |: a7 F8 z- I6 p
- ?8 O9 q& \0 Z! n6 x 注释:告诉路由器要使用预先共享的密码。
& _6 Q0 }* C9 n1 S* V Shelby(config-isakmp)#lifetime 3600
1 O$ s9 _. k/ A, {' F1 e$ X% l* }- X1 i5 q
注释:对生成新SA的周期进行调整。这个值以秒为单位,默认值为86400,也就是一天。值得注意的是两端的路由器都要设置相同的SA周期,否则VPN在正常初始化之后,将会在较短的一个SA周期到达中断。+ f4 t% o/ @; G. m! w* G
Shelby(config)#crypto isakmp key noIP4u address 200.20.25.1
+ ?8 F! {8 T7 j5 M
% C2 C/ x0 h. j: e; [ 注释:返回到全局设置模式确定要使用的预先共享密钥和指归VPN另一端路由器IP地址,即目的路由器IP地址。相应地在另一端路由器配置也和以上命令类似,只不过把IP地址改成100.10.15.1.- ~; B) c" m2 c; @7 p
0 k8 _/ V& ]- m a9 g: u0 K配置IPSec3 ]. y+ O. g! f3 s8 m
4 E4 x! `! c( h8 z Shelby(config)#access-list 130 permit ip 192.168.1.0 0.0.0.255 172.16.10.0 0.0.0.255( l2 t/ k; K! a/ }
* h) d0 K: F; _+ r4 \
注释:在这里使用的访问列表号不能与任何过滤访问列表相同,应该使用不同的访问列表号来标识VPN规则。$ V/ q% o4 U3 S: H5 W
Shelby(config)#crypto ipsec transform-set vpn1 ah-md5-hmac esp-des esp-md5-hmac
) d, m3 e+ \0 y) d# i( K) [" C k. O. e: A9 _1 X. m0 x
注释:这里在两端路由器唯一不同的参数是vpn1,这是为这种选项组合所定义的名称。在两端的路由器上,这个名称可以相同,也可以不同。以上命令是定义所使用的IPSec参数。为了加强安全性,要启动验证报头。由于两个网络都使用私有地址空间,需要通过隧道传输数据,因此还要使用安全封装协议。最后,还要定义DES作为保密密码钥加密算法。
9 i! L n- c- N7 U7 w$ ^/ f5 M Shelby(config)#crypto map shortsec 60 ipsec-isakmp7 |; F' ^+ k0 M( X P4 W
1 a' d. u6 R, Y. V
注释:以上命令为定义生成新保密密钥的周期。如果攻击者破解了保密密钥,他就能够解使用同一个密钥的所有通信。基于这个原因,我们要设置一个较短的密钥更新周期。比如,每分钟生成一个新密钥。这个命令在VPN两端的路由器上必须匹配。参数shortsec是我们给这个配置定义的名称,稍后可以将它与路由器的外部接口建立关联。- i( s- _2 k) `" i" k! \1 U
Shelby(config-crypto-map)#set peer 200.20.25.1
7 e& A# k% K& C4 j# \ p4 z. f
( }+ m% `6 G" N: {, L 注释:这是标识对方路由器的合法IP地址。在远程路由器上也要输入类似命令,只是对方路由器地址应该是100.10.15.1.
# P- m3 b/ i( W) E9 L. y; ~, B' O" ^0 B' X. O( x
Shelby(config-crypto-map)#set transform-set vpn1
& Z, D* a1 r: U0 m+ ]
$ H9 k, c0 S' d' B i# E8 E Shelby(config-crypto-map)#match address 130- N* R6 T/ p6 M
$ r2 s4 T! ~0 q$ t z' P- F' x& U: Q
注释:这两个命令分别标识用于这个连接的传输设置和访问列表。
* n. O3 {/ z: L! O. r Shelby(config)#interface s0
5 d9 e+ E1 A2 j6 d3 z: p% X5 v% J7 |+ x5 \) K) w4 R% x- f
Shelby(config-if)#crypto map shortsec" u b* R2 B) f
. h8 L2 V& ~6 E! A: T 注释:将刚才定义的密码图应用到路由器的外部接口。8 Z* s% y9 L8 _! F2 x
现在剩下的部分是测试这个VPN的连接,并且确保通信是按照预期规划进行的。, c' R% q. k: _ {9 i9 T
最后一步是不要忘记保存运行配置,否则所作的功劳白费了。# o# f; V+ u7 B) W3 R5 H8 E, N
附:参照网络安全范围,VPN硬件设备应放置以下四个地点:: K8 {% U/ m2 P
● 贒MZ的防火墙之外
8 j$ X% ~$ o+ H3 L2 Q" k5 i. c ● 连接到防火墙的第三个网卡(服务网络) Q7 l, f* z9 R! `. J
● 在防火墙保护的范围之内
! @6 j8 x( Z7 `4 O/ \! b; p ● 与防火墙集成
* n+ E2 y1 ]$ n* |- f
3 ^, S3 ~$ [/ V本文摘自中国IT论坛
) P7 ?5 T1 `% | k
1 p) W7 i( h" `' _, K/ B |
|