以前写过SSG连接的例子
现在SSG快没了,替代品SRX
原理上因为SRX就是SSG的替代型号,很多地方原理是一样的,所以就不在累述了。
这里只说明SRX的配置,作为固定IP方出现
在JUNOS Software Release [12.1R7.9]版本下通过测试。
st0 {
unit 2 {
description "To RemoteVPN";
family inet;
family inet6;
}
} //建立虚拟接口
security {
ike {
proposal pre-g2-aes128-sha1 {
authentication-method pre-shared-keys;
dh-group group2;
authentication-algorithm sha1;
encryption-algorithm aes-128-cbc;
lifetime-seconds 28800;
} //起了个集合的名字pre-g2-aes128-sha1,使用共享秘钥authentication-method pre-shared-keys,DH组用了group2,认证效验是sha1,加密效验是aes-128-cbc,生存时间是28800秒
policy RemoteIKE {
mode aggressive;
proposals pre-g2-aes128-sha1;
pre-shared-key ascii-text "$9$w9gZDiH.QF6GDO1EhKvgoaUHmz36p0I"; ## SECRET-DATA
} //建立和远程连接的加密策略,使用aggressive模式,这是关键,一般两个固定IP使用的是main模式,调用上面建立的pre-g2-aes128-sha1的ike集合,pre-shared-key就是秘钥,当然是加过密的。
gateway RemoteGW {
ike-policy RemoteIKE;
dynamic hostname shenxu.dyndns.org;
external-interface ge-0/0/0;
version v1-only;
} 因为使用的是接口模式,所以建立ike网关,调用已经建立的加密策略RemoteIKE,dynamic hostname shenxu.dyndns.org是用来确认对端的身份的,可以用hostname,也可以用email地址,只要两端一致就可以,版本用的1,现在有2版了,还没搞懂
} //这个大的组合是定义了ike协商的标准
ipsec {
proposal esp-3des-sha1 {
protocol esp;
authentication-algorithm hmac-sha1-96;
encryption-algorithm 3des-cbc;
lifetime-seconds 3600;
} //定义ipsec采用的加密方式,协议使用esp,现在差不多站点都采用esp,认证效验和加密效验以及生存期的时间3600秒
policy g2-esp-3des-sha1 {
perfect-forward-secrecy {
keys group2;
} //用的pfs的group2,这个地方各个厂商有可能不好配合,以前思科和微软的就不行,现在不知道
proposals esp-3des-sha1;
} // 建立一个ipsec的加密策略
vpn RemoteVPN {
bind-interface st0.2;
vpn-monitor {
optimized;
}
ike {
gateway RemoteGW;
ipsec-policy g2-esp-3des-sha1;
}
establish-tunnels on-traffic;
}
} //建立vpn集合,既然是接口模式的vpn,必然要绑定接口bind-interface st0.2,要先建立一个虚拟接口st0.2,vpn-monitor 是监视vpn隧道死活的,如果死了接口就down了,这样就可以使用路由的切换,有时候也不太灵。ike是调用前面建立好的GW和安全策略,establish-tunnels on-traffic一定要是on-traffic,因为是一端发起的,是被动的,不能选immediately,两个固定IP可以用。
还需要访问的安全策略,没啥难度,在web界面就可以很容易的完成,这里不再累述。
zones {
security-zone RemoteVPN {
address-book {
address relay 172.26.136.224/28;
}
interfaces {
st0.2;
}
} //建立安全区,一个是定义这个zone的地址,另外就是绑定接口st0.2,其实我觉得这个顺序应该写在访问的安全策略前面,因为必须先有zone才能写访问的安全策略。这里我觉得比ssg要好,ssg绑定接口Unnumbered必须要连接到一个物理接口,如果做的不对很容易造成信息泄露,比如路由协议,我在一次偶然的抓包才发现的。SRX在做Unumbered的时候没有绑定到物理接口,只有到zone,这样安全性提高了,不过这样似乎就不是Unumbered了。