作者: reistlin
来源: http://www.reistlin.com/blog/15
更新时间: 2010.06
版权声明: 原创文章.转载请保留作者信息和原文完整.谢绝任何方式的摘要

rsa.pngjuniper.png

使用Juniper NetScreen防火墙/VPN网关, 结合RSA SecurID双因素认证(电子令牌), 通过L2TP VPN, 支持Windows客户端拨号连接配置手册.

1, Juniper NetScreen定义RSA为L2TP拨号认证服务器

1, 主认证服务器IP: 10.0.0.1 (RSA Primary Server)
2, 辅认证服务器IP: 10.0.0.2 (RSA Replica Server)
3, 认证服务器只能指定2台(主/辅), 这与Radius服务器一样
4, 配置账户类型为L2TP, 兼容Windows客户端拨号连接
5, 设置超时时间, 因为使用外部认证方式, 考虑到网络交互, 延迟等, 时间稍微长一点, 60秒是合适的
6, 设置认证服务器端口, 默认为1646, 这里是使用Juniper NetScreen默认支持的RSA Agent模式

set auth-server "Local" id 0
set auth-server "Local" server-name "Local"
set auth-server "SecurID" id 1
set auth-server "SecurID" server-name "10.0.0.1"
set auth-server "SecurID" backup1 "10.0.0.2"
set auth-server "SecurID" account-type l2tp 
set auth-server "SecurID" timeout 60
set auth-server "SecurID" type securid
set auth-server "SecurID" securid timeout 10
set auth default auth server "Local"
set auth radius accounting port 1646

2, Juniper NetScreen定义L2TP用户IP Pool地址池

1, IP Pool用于L2TP用户拨号成功后分配一个IP地址
2, 配置10.0.0.128/25子网作为地址池, 名字为"IPSec_Pool"

set ippool "IPSec_Pool" 10.0.0.129 10.0.0.254

3, Juniper NetScreen定义L2TP配置信息, 认证方式, 指定地址池

1, 指定L2TP用户拨号成功后分配的DNS服务器: 202.96.128.68, 202.96.128.166
2, 指定L2TP用户拨号成功后从地址池"IPSec_Pool"中分配IP
3, 指定L2TP VPN网络接口为"Redundant1", 并且"Keepalive"时间为60秒
4, 指定L2TP用户通过上述配置的"SecurID"认证服务器来进行认证 (默认是Local本地认证)
5, 注意! 因为RSA SecurID认证服务器只支持PAP, 所以必须指定认证类型: "set l2tp default ppp-auth pap", 否则会导致认证无法通过, 更多详细信息请参考Juniper官方知识库.

set l2tp default dns1 202.96.128.68
set l2tp default dns2 202.96.128.166
set l2tp default ippool "IPSec_Pool"
set l2tp default ppp-auth pap
set l2tp "IPSec_Tunnel" id 1 outgoing-interface redundant1 keepalive 60
set l2tp "IPSec_Tunnel" remote-setting ippool "IPSec_Pool" dns1 202.96.128.68 dns2 202.96.128.166
set l2tp "IPSec_Tunnel" auth server "SecurID"

4, Juniper NetScreen配置VPN访问策略

1, 新建一条防火墙策略, ID为1723, 因为PPTP的协议端口是TCP 1723, 个人习惯, 方便记忆而已
2, 来源Untrust区域的Any IP地址, 访问目标Trust区域的Any IP地址, 调用上面已经配置好的"IPSec_Tunnel"策略
3, 同时, 需要允许L2TP拨号用户, 在拨号成功后, 能够访问公网. 定义一个Trust对象, 地址范围为"IPSec_Pool"中定义的"10.0.0.128/25", 允许访问Any目标
4, 配置完成

set policy id 1723 from "Untrust" to "Trust"  "Dial-Up VPN" "Any" "ANY" tunnel l2tp "IPSec_Tunnel" log 
set policy id 1723
exit

set policy id 1 from "Trust" to "Untrust"  "10.0.0.128/25" "Any" "ANY" permit log 
set policy id 1
exit

标签: rsa, juniper