本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
AWS Client VPN 授权规则
授权规则充当授予网络访问权限的防火墙规则。通过添加授权规则,您可以向特定客户端授予对指定网络的访问权限。对于要授予访问权限的每个网络,您都应该设置一个授权规则。您可以使用控制台和向客户端VPN终端节点添加授权规则 AWS CLI。
注意
客户端在评估授权规则时VPN使用最长的前缀匹配。有关更多详细信息,请参阅 Amazon VPC 用户指南中的疑难解答主题故障排除 AWS Client VPN:Active Directory 群组的授权规则未按预期运行和路由优先级。
可供了解授权规则的关键点
以下几点解释了授权规则的一些行为:
-
要允许访问目标网络,必须显式添加授权规则。原定设置行为是拒绝访问。
-
您无法添加授权规则以限制 对目标网络的访问。
-
作为特殊情况处理。
0.0.0.0/0
CIDR无论创建授权规则的顺序如何,它都是最后处理的。 -
0.0.0.0/0
CIDR可以将其视为 “任何目的地” 或 “其他授权规则未定义的任何目的地”。 -
最长前缀匹配是优先的规则。
客户端VPN授权规则的示例场景
本节介绍授权规则的工作原理 AWS Client VPN。它包括可供了解授权规则的关键点、示例架构以及对映射到示例架构的示例场景的讨论。
场景
下图显示了用于本节中的示例场景的示例架构。
规则描述 | 组 ID | 允许所有用户访问 | 目的地 CIDR |
---|---|---|---|
向工程组提供对本地网络的访问权限 |
S-xxxxx14 |
False |
172.16.0.0/24 |
为开发组提供开发访问权限 VPC |
S-xxxxx15 |
False |
10.0.0.0/16 |
为客户提供管理员群组访问权限 VPN VPC |
S-xxxxx16 |
False |
192.168.0.0/24 |
产生的行为
-
工程组只能访问
172.16.0.0/24
。 -
开发组只能访问
10.0.0.0/16
。 -
经理组只能访问
192.168.0.0/24
。 -
所有其他流量都由客户端VPN终端节点丢弃。
注意
在这种情况下,任何用户组都无法访问公共互联网。
规则描述 | 组 ID | 允许所有用户访问 | 目的地 CIDR |
---|---|---|---|
向工程组提供对本地网络的访问权限 |
S-xxxxx14 |
False |
172.16.0.0/24 |
为开发组提供开发访问权限 VPC |
S-xxxxx15 |
False |
10.0.0.0/16 |
向经理组提供对任何目标的访问权限 |
S-xxxxx16 |
False |
0.0.0.0/0 |
产生的行为
-
工程组只能访问
172.16.0.0/24
。 -
开发组只能访问
10.0.0.0/16
。 -
经理组可以访问公共互联网和
192.168.0.0/24
,但无法访问172.16.0.0/24
或10.0.0/16
。
注意
在这种情况下,因为没有规则引用 192.168.0.0/24
,所以访问该网络的权限也由 0.0.0.0/0
规则提供。
包含 0.0.0.0/0
的规则始终最后求值,而无论创建规则的顺序如何。因此,请记住,在 0.0.0.0/0
之前求值的规则在确定 0.0.0.0/0
授予对哪些网络的访问权限方面起着重要作用。
规则描述 | 组 ID | 允许所有用户访问 | 目的地 CIDR |
---|---|---|---|
向工程组提供对本地网络的访问权限 |
S-xxxxx14 |
False |
172.16.0.0/24 |
为开发组提供开发访问权限 VPC |
S-xxxxx15 |
False |
10.0.0.0/16 |
向经理组提供对任何目标的访问权限 |
S-xxxxx16 |
False |
0.0.0.0/0 |
为开发中的单个主机提供管理员组访问权限 VPC |
S-xxxxx16 |
False |
10.0.2.119/32 |
产生的行为
-
工程组只能访问
172.16.0.0/24
。 -
开发组可以访问
10.0.0.0/16
,但单个主机10.0.2.119/32
除外。 -
经理组可以访问公共 Internet 和开发中的单个主机 (
10.0.2.119/32
)VPC,但无法访问开发中的172.16.0.0/24
任何其余主机,也无法访问开发中的任何剩余主机VPC。192.168.0.0/24
注意
在这里,您可以看到具有较长 IP 前缀的规则如何优先于具有较短 IP 前缀的规则。如果您想让开发组有权访问 10.0.2.119/32
,则需要添加一条附加规则向开发团队授予对 10.0.2.119/32
的访问权限。
规则描述 | 组 ID | 允许所有用户访问 | 目的地 CIDR |
---|---|---|---|
向工程组提供对本地网络的访问权限 |
S-xxxxx14 |
False |
172.16.0.0/24 |
为开发组提供开发访问权限 VPC |
S-xxxxx15 |
False |
10.0.0.0/16 |
向经理组提供对任何目标的访问权限 |
S-xxxxx16 |
False |
0.0.0.0/0 |
为开发中的单个主机提供管理员组访问权限 VPC |
S-xxxxx16 |
False |
10.0.2.119/32 |
向工程组提供对本地网络中较小子网的访问权限 |
S-xxxxx14 |
False |
172.16.0.128/25 |
产生的行为
-
开发组可以访问
10.0.0.0/16
,但单个主机10.0.2.119/32
除外。 -
经理组可以访问公共互联网、
192.168.0.0/24
以及10.0.2.119/32
网络中的单个主机(10.0.0.0/16
),但无权访问172.16.0.0/24
或10.0.0.0/16
网络中的任何剩余主机。 -
工程组有权访问
172.16.0.0/24
,包括更具体的子网172.16.0.128/25
。
规则描述 | 组 ID | 允许所有用户访问 | 目的地 CIDR |
---|---|---|---|
向工程组提供对本地网络的访问权限 |
S-xxxxx14 |
False |
172.16.0.0/24 |
为开发组提供开发访问权限 VPC |
S-xxxxx15 |
False |
10.0.0.0/16 |
向经理组提供对任何目标的访问权限 |
S-xxxxx16 |
False |
0.0.0.0/0 |
为开发中的单个主机提供管理员组访问权限 VPC |
S-xxxxx16 |
False |
10.0.2.119/32 |
向工程组提供对本地网络中较小子网的访问权限 |
S-xxxxx14 |
False |
172.16.0.128/25 |
向工程组提供对任何目标的访问权限 |
S-xxxxx14 |
False |
0.0.0.0/0 |
产生的行为
-
开发组可以访问
10.0.0.0/16
,但单个主机10.0.2.119/32
除外。 -
经理组可以访问公共互联网、
192.168.0.0/24
以及10.0.2.119/32
网络中的单个主机(10.0.0.0/16
),但无权访问172.16.0.0/24
或10.0.0.0/16
网络中的任何剩余主机。 -
工程组可以访问公共互联网、
192.168.0.0/24
以及172.16.0.0/24
,包括更具体的子网172.16.0.128/25
。
注意
请注意,工程组和经理组现在都可以访问 192.168.0.0/24
。这是因为这两个组都有权访问 0.0.0.0/0
(任何目标)且 没有其他规则在引用 192.168.0.0/24
。
规则描述 | 组 ID | 允许所有用户访问 | 目的地 CIDR |
---|---|---|---|
向工程组提供对本地网络的访问权限 |
S-xxxxx14 |
False |
172.16.0.0/24 |
为开发组提供开发访问权限 VPC |
S-xxxxx15 |
False |
10.0.0.0/16 |
向经理组提供对任何目标的访问权限 |
S-xxxxx16 |
False |
0.0.0.0/0 |
为开发中的单个主机提供管理员组访问权限 VPC |
S-xxxxx16 |
False |
10.0.2.119/32 |
向工程组提供对本地网络中子网的访问权限 |
S-xxxxx14 |
False |
172.16.0.128/25 |
向工程组提供对任何目标的访问权限 |
S-xxxxx14 |
False |
0.0.0.0/0 |
为客户提供管理员群组访问权限 VPN VPC |
S-xxxxx16 |
False |
192.168.0.0/24 |
产生的行为
-
开发组可以访问
10.0.0.0/16
,但单个主机10.0.2.119/32
除外。 -
经理组可以访问公共互联网、
192.168.0.0/24
以及10.0.2.119/32
网络中的单个主机(10.0.0.0/16
),但无权访问172.16.0.0/24
或10.0.0.0/16
网络中的任何剩余主机。 -
工程组可以访问公共互联网、
172.16.0.0/24
以及172.16.0.128/25
。
注意
请注意,添加供经理组访问 192.168.0.0/24
的规则会导致开发组不再具有访问该目标网络的权限。
规则描述 | 组 ID | 允许所有用户访问 | 目的地 CIDR |
---|---|---|---|
向工程组提供对本地网络的访问权限 |
S-xxxxx14 |
False |
172.16.0.0/24 |
为开发组提供开发访问权限 VPC |
S-xxxxx15 |
False |
10.0.0.0/16 |
向经理组提供对任何目标的访问权限 |
S-xxxxx16 |
False |
0.0.0.0/0 |
为开发中的单个主机提供管理员组访问权限 VPC |
S-xxxxx16 |
False |
10.0.2.119/32 |
向工程组提供对本地网络中子网的访问权限 |
S-xxxxx14 |
False |
172.16.0.128/25 |
向工程组提供对所有网络的访问权限 |
S-xxxxx14 |
False |
0.0.0.0/0 |
为客户提供管理员群组访问权限 VPN VPC |
S-xxxxx16 |
False |
192.168.0.0/24 |
向所有组提供访问权限 |
不适用 |
True |
0.0.0.0/0 |
产生的行为
-
开发组可以访问
10.0.0.0/16
,但单个主机10.0.2.119/32
除外。 -
经理组可以访问公共互联网、
192.168.0.0/24
以及10.0.2.119/32
网络中的单个主机(10.0.0.0/16
),但无权访问172.16.0.0/24
或10.0.0.0/16
网络中的任何剩余主机。 -
工程组可以访问公共互联网、
172.16.0.0/24
以及172.16.0.128/25
。 -
任何其他用户组(例如“管理员组”)可以访问公共互联网,但不能访问在其他规则中定义的任何其他目标网络。