Juniper SRX 与 SSG 防火墙基于路由 VPN 实验用的是一台 Juniper SRX 100H 的小防火墙和一台 SSG 550 的防火 墙。 配置 SRX 之前,删除了所有的 SRX 的初厂设置。在配置模式下用 delete.可删除所有的配置。 1. 基本配置:(接口、IP、Zone 划分、路由) SRX 基本配置: 配置一个 security-zone UNTRUST 并把 fe-0/0/0.0 放入这个 zone.并且允许其他外网地址 ping 这个端口,允许 ping 只是单纯了为 测试。 root# edit security zones security-zone UNTRUST root# set interfaces fe-0/0/0.0 host-inbound-traffic system-services ping root# set security zones security-zone UNTRUST interfaces fe-0/0/0.0 host -inbound-traffic systemservices ike (这一个很重要,因为默认 SRX 在出接口上并没有放行 ike 的包,但是这次实验中,没有打上这条命令,VPN 也正常工作了。在 这里还请注意。) 配置 fe-0/0/0 unit 0 端口 IP,做出接口,连接外网。命令如下: 配置一个 security-zone TRUST 并把 fe-0/0/7.0 放入这个 zone.允许所有的 system-services。 root# edit security zones security-zone root# set interfaces fe-0/0/7.0 host-inbound-traffic system-services all 配置 fe-0/0/7 unit 0 端口 IP,做为内网接口。 新建一个 st0.0 接口,并设置 IP 为 10.11.11.10/30; 并将这个接 口划入一个新建的 Zone:VPN-ZONE-Site1. root# set interfaces st0 unit 0 family inet address 10.11.11.10/30 root# set security zones security-zone VPN-ZONESite1 interfaces st0.0 配置路由:配置一条默认路由和一条目地为对方的私网 IP、下一跳为对 方的 tunnel 口的 IP 的静态路由。 root# set routing-options static route 0.0.0.0/0 next-hop 222.XXX.XXX.XXX (默认路由) root# set routing-options static route 192.168.199.0/24 next-hop 10.11.11.11 (到 Site2 内网的路 由) 配置地址薄: root# set security zones security-zone TRUST address-book address SITE1-BOOK 172.20.200.0/24 root# set security zones security-zone VPN-ZONESite1 address-book address SITE2-BOOK 192.168.199.0/24 (可选配置)配置使 SRX 成为 DHCP Server,为内网客户端分发 IP。 root# edit system services dhcp pool 172.20.200.0/24(配置地址池名称,必须以子网形式命令) root# set address-range low 172.20.200.100 high 172.20.200.200 (IP 分发范围) root# set router 172.20.200.254 (分配的网关) root# set name-server 61.177.7.1 (DNS IP) 2. 配置 IKE 第一阶段,分三步,第一步是配置 IKE proposal;第二阶 段是 IKE policy;第三步是 IKE gateway。 第一步: root# edit security ike proposal IKE-PHASE1-PROPOSAL (IKE-PHASE1-PROSOAL 为自定义的名称) root# set authentication-method pre-shared-keys (认证方式采用预共享密钥方式) root# set authentication-algorithm sha1 (认证算法为 hash1) root# set dh-group group2 (DH 组 2) root# set encryption-algorithm 3des-cbc (加密算法 3des) 第二步: root# edit security ike policy IKE-PHASE1-POLICY (IKE-PHASE1-POLICY 为自定义 policy 名称) root# set pre-shared-key ascii-text 123456789 (预共 享密钥 123456789,两端必须一致) root# set proposals IKE-PHASE1-PROPOSAL (引用第一步的 Proposal) root# set mode main (配置为主模式 main,另外还有一个被动 模式 aggressive,被动模式只有当你的 VPN 设备出接口为一个私有 IP 的时候需要再进行一次 nat 的时候才配置为此模式,比如远程拔号 VPN,) 第三步配置 IKE Gateway root# edit security ike gateway IKE-PHASE1-GATEWAY (定义 ike gateway 名称 IKE-PHASE1-GATEWAY) root# set ike-policy IKE-PHASE1-POLICY (引用上面第二 步的 IKE POLICY) root# set address 116.xxx.xxx.xxx (对端的即 Site2 出接 口的 IP) root# set external-interface fe-0/0/0.0 (绑定到外网接 口 fe-0/0/0.0) (可选配置 DPD) 整个 IKE 第一阶段配置如下: 3. 配置 IKE 第二阶段,也是分三步配置;第一步配置 IPSEC PROPOSAL,第二步配置 IPSEC POLICY,第三步配置 IPSEC VPN。 第一步: root# edit security ipsec proposal IPSEC-PHASE2PROPOSAL (定义名称 IPSEC-PHASE2-PROPOSAL) root# set encryption-algorithm 3des-cbc root# set authentication-algorithm hmac-sha1-96 root# set protocol esp (协议只有 AH 和 ESP,ESP 用的最 多,AH 基本不用,AH 不能用于第一阶段的被动模式 aggressive) 第二步配置 IPSEC POLICY: root# edit security ipsec policy IPSEC-PHASE2-POLICY (定义名称 IPSEC-PHASE2-POLICY) root# set proposals IPSEC-PHASE2-PROPOSAL (引用第二 阶段的第一步 proposal) root# set perfect-forward-secrecy keys group2 (完美 向前转发组 2) root# set ike proxy-identity local 172.20.200.0/24 root# set ike proxy-identity remote 192.168.199.0/24 root# set ike proxy-identity service any (如果对端是非 JUNIPER 产品,则要加入这三条命令,VPN 才能通起 来,第一个是本地的 IP 段,第二个是对端 IP 段) 第三步配置 IPSEC VPN root# edit security ipsec vpn IPSEC-PHASE2-VPN (定 义名称 IPSEC-PHASE2-VPN) root# set ike gateway IKE-PHASE1-GATEWAY (引用第一阶 段的 IKE GATEWAY) root# set ike ipsec-policy IPSEC-PHASE2-POLICY (引 用第二阶段的 IPSEC-POLICY) root# set bind-interface st0.0 (绑定到 tunnel 接口) 全部第二阶段配置如下: 4. 配置策略(双向的): 先配置 from-zone TRUST to-zone VPN-ZONE-Site1 root# edit security policies from-zone TRUST to-zone VPN-ZONE-Site1 root# set policy VPN-Site1-Site2 match sourceaddress SITE1-BOOK root# set policy VPN-Site1-Site2 match destinationaddress SITE2-BOOK root# set policy VPN-Site1-Site2 match application any root# set policy VPN-Site1-Site2 then permit 配置 from-zone VPN-ZONE-Site1 to-zone TRUST root# edit security policies from-zone VPN-ZONESite1 to-zone TRUST root# edit policy VPN-Site2-Site1 root# set match source-address SITE2-BOOK root# set match destination-address SITE1-BOOK root# set match application any root# set then permit 全部策略配置如下: 至此,SRX 上的配置已完成。 Site2 的 SSG 防火墙配置如下: 1. 新建一个 ZONE,定义名称为:VPN-ZONE,如下图 2. 新建 Tunnel.1 端口 3. 配置路由,设置到达 Site1 内网网段的路由的下一跳出口为 Tunnel.1。 4. 配置地址薄,新增一个地址薄属于 VPN-ZONE,即 Site1 的内网地址 段,如下: 新增一个本地端的地址薄,属于 trust zone,如下图 5. 配置 VPN 第一阶段,如下图 6. 配置第二阶段 7. 配置策略。要做两条,一条 from trust to VPN-ZONE,一条 from VPN-ZONE to trust 第一条 from trust to VPN-ZONE 第二条 from VPN-ZONE to trust 策略配置完成如下: 以上 Site2 的 SSG 防火墙配置完成 测试: 在 Site2 的一台主机上 ping Site1 防火墙的内网的一台主机 IP 172.20.200.100 是 OK 的 在 Site1 的防火墙上 ping Site2 防火墙的内网的一台主机 192.168.199.240 也是 OK 的,说明两边的 VPN 已经工作。 在 SRX 上查看第一阶段 phase1 的 ike SA root> show security ike security-associations (这条命令列出 了所有在活动的 phase1 SA) root> show security ike security-associations detail (这条 命令查看所有活动 SA 的详细信息) 看到 SA 的 State 是 UP, 验证第二阶段 phase2 状态 命令: root> show security ipsec security-associations root> show security ipsec statistics (查看加解状态)