逻辑系统中的 VPN
VPN 是通过互联网从设备到网络的加密连接。加密连接有助于确保敏感数据的安全传输。VPN 可防止未经授权的访问窃取流量,并允许用户远程开展工作。有关更多信息,请参阅以下主题:
了解逻辑系统中基于路由的 VPN 隧道
VPN 连接可以保护通过 WAN 在逻辑系统和远程站点之间传输的流量。使用基于路由的 VPN,您可以在逻辑系统中配置一个或多个安全策略,以调节通过单个 IP 安全性 (IPsec) 隧道的流量。对于每个 IPsec 隧道,都有一组 IKE 和 IPsec 安全关联 (SA),主管理员必须在根级别配置这些关联。
在网关配置下配置的外部接口只能是根逻辑系统的一部分。
逻辑系统中仅支持基于路由的 VPN。不支持基于策略的 VPN。
除了为每个 VPN 配置 IKE 和 IPsec SA 外,主管理员还必须为用户逻辑系统分配安全隧道 (st0) 接口。一个 st0 接口只能分配给单个用户逻辑系统。但是,可以为多个用户逻辑系统分配自己的 st0 接口。
st0 单元 0 接口不应分配给逻辑系统,因为无法为此接口设置 SA。
用户逻辑系统管理员可以配置分配给用户逻辑系统的 st0 接口的 IP 地址和其他属性。用户逻辑系统管理员无法删除分配给其用户逻辑系统的 st0 接口。
对于基于路由的 VPN,安全策略指的是目标地址,而非特定的 VPN 隧道。若要将用户逻辑系统中的明文流量发送至 VPN 隧道进行封装,用户逻辑系统管理员必须进行以下配置:
允许流量流向指定目标的安全性策略。
到目标的静态路由,其中 st0 接口作为下一跃点。
当 Junos OS 在用户逻辑系统中查找路由以查找用于将流量发送到目标地址的接口时,它将通过 st0 接口查找静态路由。只要允许安全策略作,流量就会路由到 VPN 隧道。
逻辑系统中不支持流量选择器。
主逻辑系统和用户逻辑系统可以共享基于路由的 VPN 隧道。分配给用户逻辑系统的 st0 接口也可以由主逻辑系统使用。对于主逻辑系统,主管理员配置一个安全策略,允许流量到远程目标,以及到远程目标的静态路由,并将 st0 接口作为下一跃点。
VPN 监控由主逻辑系统中的主管理员配置。对于 VPN 监控源接口,主管理员必须指定 st0 接口;无法为用户逻辑系统指定物理接口。
也可以看看
示例:为 VPN 隧道配置 IKE 和 IPsec SA(仅限主管理员)
主管理员负责将 st0 接口分配给用户逻辑系统,并在根级别为每个 VPN 隧道配置 IKE 和 IPsec SA。此示例说明了如何将 st0 接口分配给用户逻辑系统以及配置 IKE 和 IPsec SA 参数。
要求
开始之前:
-
以主管理员身份登录到主逻辑系统。请参阅“了解主逻辑系统和主管理员角色”。
概述
在此示例中,您为 ls-product-design 用户逻辑系统配置 VPN 隧道。此示例配置了 表 1 中所述的 VPN 隧道参数。
| 功能 |
姓名 |
配置参数 |
|---|---|---|
| 隧道接口 |
st0 单元 1 |
分配给 ls-product-design 逻辑系统 |
| IKE 提议 |
IKE-phase1-提议 |
|
| IKE 策略 |
|
|
| IKE 网关 |
IKE-GW |
|
| IPsec 提议 |
ipsec-phase2-提议 |
|
| IPsec 策略 |
vpn-policy1 |
|
| VPN |
IKE-VPN |
|
| VPN 监控 |
对于 ike-vpn VPN:
|
配置
过程
CLI 快速配置
要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改详细信息,以便与网络配置匹配,将命令复制并粘贴到层次结构级别的 [edit] CLI 中,然后从配置模式进入。commit
set logical-systems ls-product-design interfaces st0 unit 1 set security ike proposal ike-phase1-proposal authentication-method pre-shared-keys set security ike proposal ike-phase1-proposal dh-group group2 set security ike proposal ike-phase1-proposal authentication-algorithm sha1 set security ike proposal ike-phase1-proposal encryption-algorithm aes-128-cbc set security ike policy ike-phase1-policy mode main set security ike policy ike-phase1-policy proposals ike-phase1-proposal set security ike policy ike-phase1-policy pre-shared-key ascii-text "$ABC123" set security ike gateway ike-gw ike-policy ike-phase1-policy set security ike gateway ike-gw address 2.2.2.2 set security ike gateway ike-gw external-interface ge-0/0/3.0 set security ipsec proposal ipsec-phase2-proposal protocol esp set security ipsec proposal ipsec-phase2-proposal authentication-algorithm hmac-sha1-96 set security ipsec proposal ipsec-phase2-proposal encryption-algorithm aes-128-cbc set security ipsec policy vpn-policy1 perfect-forward-secrecy keys group2 set security ipsec policy vpn-policy1 proposals ipsec-phase2-proposal set security ipsec vpn ike-vpn bind-interface st0.1 set security ipsec vpn ike-vpn vpn-monitor source-interface st0.1 set security ipsec vpn ike-vpn vpn-monitor destination-ip 4.0.0.1 set security ipsec vpn ike-vpn ike gateway ike-gw set security ipsec vpn ike-vpn ike ipsec-policy vpn-policy1
分步程序
下面的示例要求您在各个配置层级中进行导航。有关作说明,请参阅《Junos OS CLI 用户指南》中的在 配置模式下使用CLI编辑器 。
要将 VPN 隧道接口分配给用户逻辑系统并配置 IKE 和 IPsec SA,请执行以下作:
-
以主管理员身份登录到主逻辑系统并进入配置模式。
[edit] admin@host> configure admin@host#
-
分配 VPN 隧道接口。
[edit logical-systems ls-product-design] admin@host# set interfaces st0 unit 1
-
配置 IKE 提议。
[edit security ike] admin@host# set proposal ike-phase1-proposal authentication-method pre-shared-keys admin@host# set proposal ike-phase1-proposal dh-group group2 admin@host# set proposal ike-phase1-proposal authentication-algorithm sha1 admin@host# set proposal ike-phase1-proposal encryption-algorithm aes-128-cbc
-
配置 IKE 策略。
[edit security ike] admin@host# set policy ike-phase1-policy mode main admin@host# set policy ike-phase1-policy proposals ike-phase1-proposal admin@host# set policy ike-phase1-policy pre-shared-key ascii-text 395psksecr3t
-
配置 IKE 网关。
[edit security ike] admin@host# set gateway ike-gw external-interface ge-0/0/3.0 admin@host# set gateway ike-gw ike-policy ike-phase1-policy admin@host# set gateway ike-gw address 2.2.2.2
-
配置 IPsec 提议。
[edit security ipsec] admin@host# set proposal ipsec-phase2-proposal protocol esp admin@host# set proposal ipsec-phase2-proposal authentication-algorithm hmac-sha1-96 admin@host# set proposal ipsec-phase2-proposal encryption-algorithm aes-128-cbc
-
配置 IPsec 策略。
[edit security ipsec] admin@host# set policy vpn-policy1 proposals ipsec-phase2-proposal admin@host# set policy vpn-policy1 perfect-forward-secrecy keys group2
-
配置 VPN。
[edit security ipsec] admin@host# set vpn ike-vpn bind-interface st0.1 admin@host# set vpn ike-vpn ike gateway ike-gw admin@host# set vpn ike-vpn ike ipsec-policy vpn-policy1
-
配置 VPN 监控。
[edit security ipsec] admin@host# set vpn ike-vpn vpn-monitor source-interface st0.1 admin@host# set vpn ike-vpn vpn-monitor destination-ip 4.0.0.1
结果
在配置模式下,输入 show interfaces、 show security ike和 show security ipsec 命令以确认您的配置。如果输出未显示预期的配置,请重复此示例中的说明以更正配置。
[edit]
admin@host# show interfaces
st0 {
unit 1;
}
[edit]
admin@host# show security ike
proposal ike-phase1-proposal {
authentication-method pre-shared-keys;
dh-group group2;
authentication-algorithm sha1;
encryption-algorithm aes-128-cbc;
}
policy ike-phase1-policy {
mode main;
proposals ike-phase1-proposal;
pre-shared-key ascii-text "$ABC123"; ## SECRET-DATA
}
gateway ike-gw {
ike-policy ike-phase1-policy;
address 2.2.2.2;
external-interface ge-0/0/3.0;
}
[edit]
admin@host# show security ipsec
proposal ipsec-phase2-proposal {
protocol esp;
authentication-algorithm hmac-sha1-96;
encryption-algorithm aes-128-cbc;
}
policy vpn-policy1 {
perfect-forward-secrecy {
keys group2;
}
proposals ipsec-phase2-proposal;
}
vpn ike-vpn {
bind-interface st0.1;
vpn-monitor {
source-interface st0.1;
destination-ip 4.0.0.1;
}
ike {
gateway ike-gw;
ipsec-policy vpn-policy1;
}
}
如果完成设备配置,请从配置模式进入。commit
验证
要确认配置工作正常,请执行以下任务:
验证逻辑系统上的 IKE
目的
验证逻辑系统上是否支持 IKE。
行动
在作模式下,输入命令 show security ike sa detail 。
user@host> show security ike sa detail
IKE peer 2.2.2.2, Index 7796166, Gateway Name: GW1
Role: Initiator, State: UP
Initiator cookie: a1a6b1516bc43d54, Responder cookie: f0846e4239c817f8
Exchange type: Aggressive, Authentication method: Pre-shared-keys
Local: 3.3.3.2:500, Remote: 2.2.2.2:500
Lifetime: Expires in 3585 seconds
Reauth Lifetime: Disabled
IKE Fragmentation: Disabled, Size: 0
Remote Access Client Info: Unknown Client
Peer ike-id: 2.2.2.2
AAA assigned IP: 0.0.0.0
Algorithms:
Authentication : hmac-sha256-128
Encryption : aes256-cbc
Pseudo random function: hmac-sha256
Diffie-Hellman group : DH-group-14
Traffic statistics:
Input bytes : 1056
Output bytes : 1311
Input packets: 2
Output packets: 4
Input fragmentated packets: 0
Output fragmentated packets: 0
IPSec security associations: 1 created, 0 deleted
Phase 2 negotiations in progress: 1
Negotiation type: Quick mode, Role: Initiator, Message ID: 0
Local: 3.3.3.2:500, Remote: 2.2.2.2:500
Local identity: r0r2_store1@juniper.net
Remote identity: 2.2.2.2
Flags: IKE SA is created
意义
输出显示有关 IKE 详细信息的摘要信息。
验证逻辑系统上的 IPsec
目的
验证逻辑系统上是否支持 IPsec SA。
行动
在作模式下,输入命令 show security ipsec sa detail 。
user@host> show security ipsec sa detail
ID: 67109793 Virtual-system: root, VPN Name: VPN1
Local Gateway: 3.3.3.2, Remote Gateway: 2.2.2.2
Traffic Selector Name: VPN1_TS1
Local Identity: ipv4(51.0.1.0-51.0.1.255)
Remote Identity: ipv4(41.0.1.0-41.0.1.255)
Version: IKEv1
DF-bit: clear, Copy-Outer-DSCP Disabled, Bind-interface: st0.1
Port: 500, Nego#: 0, Fail#: 0, Def-Del#: 0 Flag: 0x2c608b29
Tunnel events:
Wed Aug 16 2017 23:50:07 -0700: IPSec SA negotiation successfully completed (1 times)
Wed Aug 16 2017 23:50:07 -0700: IKE SA negotiation successfully completed (1 times)
Wed Aug 16 2017 23:49:46 -0700: Negotiation failed with error code AUTHENTICATION_FAILED received from peer (2 times)
Wed Aug 16 2017 23:49:30 -0700: Tunnel is ready. Waiting for trigger event or peer to trigger negotiation (1 times)
Direction: inbound, SPI: e651d79e, AUX-SPI: 0, VPN Monitoring: -
Hard lifetime: Expires in 2552 seconds
Lifesize Remaining: Unlimited
Soft lifetime: Expires in 1988 seconds
Mode: Tunnel(0 0), Type: dynamic, State: installed
Protocol: ESP, Authentication: hmac-sha256-128, Encryption: aes-cbc (256 bits)
Anti-replay service: counter-based enabled, Replay window size: 64
Direction: outbound, SPI: 8ac9ce8, AUX-SPI: 0, VPN Monitoring: -
Hard lifetime: Expires in 2552 seconds
Lifesize Remaining: Unlimited
Soft lifetime: Expires in 1988 seconds
Mode: Tunnel(0 0), Type: dynamic, State: installed
Protocol: ESP, Authentication: hmac-sha256-128, Encryption: aes-cbc (256 bits)
Anti-replay service: counter-based enabled, Replay window size: 64
意义
输出显示有关 IPsec 详细信息的摘要信息。
示例:在用户逻辑系统中配置基于路由的 VPN 隧道
此示例说明如何在用户逻辑系统中配置基于路由的 VPN 隧道。
要求
开始之前:
以逻辑系统管理员身份登录到用户逻辑系统。请参阅 用户逻辑系统配置概述。
确保已将 st0 接口分配给用户逻辑系统,并且主管理员在根级别配置了 IKE 和 IPsec SA。请参阅示例:为 VPN 隧道配置 IKE 和 IPsec SA(仅限主管理员)。
概述
在此示例中,您将配置 ls-product-design 用户逻辑系统,如示例所示: 创建用户逻辑系统、其管理员、其用户和互连逻辑系统。
您可以配置 表 2 中所述的基于路由的 VPN 参数。
功能 |
姓名 |
配置参数 |
|---|---|---|
隧道接口 |
st0 单元 1 |
|
静态路由 |
|
|
安全性策略 |
通过 VPN |
允许以量:
|
配置
过程
CLI 快速配置
要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改详细信息,以便与网络配置匹配,将命令复制并粘贴到层次结构级别的 [edit] CLI 中,然后从配置模式进入。commit
set interfaces st0 unit 1 family inet address 10.11.11.150/24 set routing-options static route 192.168.168.0/24 next-hop st0.1 set security policies from-zone ls-product-design-trust to-zone ls-product-design-untrust policy through-vpn match source-address any set security policies from-zone ls-product-design-trust to-zone ls-product-design-untrust policy through-vpn match destination-address 192.168.168.0/24 set security policies from-zone ls-product-design-trust to-zone ls-product-design-untrust policy through-vpn match application any set security policies from-zone ls-product-design-trust to-zone ls-product-design-untrust policy through-vpn then permit
分步程序
下面的示例要求您在各个配置层级中进行导航。有关作说明,请参阅《Junos OS CLI 用户指南》中的在 配置模式下使用CLI编辑器 。
要在用户逻辑系统中配置基于路由的 VPN 隧道,请执行以下作:
以逻辑系统管理员身份登录到用户逻辑系统,进入配置模式。
[edit] lsdesignadmin1@host:ls-product-design>configure lsdesignadmin1@host:ls-product-design#
配置 VPN 隧道接口。
[edit interfaces] lsdesignadmin1@host:ls-product-design# set st0 unit 1 family inet address 10.11.11.150/24
创建到远程目标的静态路由。
[edit routing-options] lsdesignadmin1@host:ls-product-design# set static route 192.168.168.0/24 next-hop st0.1
配置安全策略以允许流量到远程目标。
[edit security policies from-zone ls-product-design-trust to-zone ls-product-design-untrust] lsdesignadmin1@host:ls-product-design# set policy through-vpn match source-address any lsdesignadmin1@host:ls-product-design# set policy through-vpn match destination-address 192.168.168.0/24 lsdesignadmin1@host:ls-product-design# set policy through-vpn match application any lsdesignadmin1@host:ls-product-design# set policy through-vpn then permit
结果
在配置模式下,输入 show interfaces st0、 show routing-options和 show security policies 命令以确认您的配置。如果输出未显示预期的配置,请重复此示例中的说明以更正配置。
[edit]
lsdesignadmin1@host:ls-product-design# show interfaces st0
unit 1 {
family inet {
address 10.11.11.150/24;
}
}
lsdesignadmin1@host:ls-product-design# show routing-options
static {
route 192.168.168.0/24 next-hop st0.1;
}
[edit]
lsdesignadmin1@host:ls-product-design# show security policies
from-zone ls-product-design-trust to-zone ls-product-design-untrust {
policy through-vpn {
match {
source-address any;
destination-address 192.168.168.0/24;
application any;
}
then {
permit;
}
}
...
}
如果完成设备配置,请从配置模式进入。commit
验证
确认配置工作正常。
开始验证流程之前,需要从用户逻辑系统中的主机向 192.168.168.0/24 网络中的主机发送流量。例如,从 ls-product-design 用户逻辑系统中 12.1.1.0/24 子网中的主机发起对主机 192.168.168.10 的 ping。
验证 IKE 第 1 阶段状态
目的
验证 IKE 第 1 阶段状态。
行动
在作模式下,输入命令 show security ike security-associations 。从命令获取索引号后,请使用命令 show security ike security-associations index index_number detail 。
有关示例输出和含义,请参阅 示例:配置基于路由的 VPN 中的“验证”部分。
验证 IPsec 第 2 阶段状态
目的
验证 IPsec 第 2 阶段状态。
行动
在作模式下,输入命令 show security ipsec security-associations 。从命令获取索引号后,请使用命令 show security ipsec security-associations index index_number detail 。
有关示例输出和含义,请参阅 示例:配置基于路由的 VPN 中的“验证”部分。
