跳到主要内容

13. 安全考虑

13. 安全考虑 (Security Considerations)

13.1. 数据平面 (Data Plane)

"data plane" 中的安全, 是指防止以下可能性:

  • 来自 VPN 内部的 packets 以不符合该 VPN policies 的方式到达 VPN 外部的 site.

  • 来自 VPN 外部的 packets 以不符合该 VPN policies 的方式进入该 VPN 的某个 site.

在以下条件下:

  1. backbone router 不会在某条特定 data link 上接受 labeled packets, 除非已知该 data link 只连接 trusted systems, 或者已知这些 packets 会在检查 IP header 或 label stack 中更低层 labels 之前离开 backbone, 并且

  2. 不从 untrusted 或 unreliable routing peers 接受 labeled VPN-IPv4 routes,

  3. control plane 未遭受成功攻击,

则此架构提供的 data plane security 实际上与 Frame Relay 或 ATM backbones 为 VPNs 提供的安全性相同. 如果 SP 控制下的设备配置正确, 未经授权的数据不会进入或离开 VPN.

上述条件 1 可以更精确地表述为: 除非满足以下两个条件之一, 否则应丢弃从某个特定 neighbor 收到的 labeled packet:

  • 该 packet 的 top label 具有 receiving system 已分发给该 neighbor 的 label value, 或者

  • 该 packet 的 top label 具有 receiving system 已分发给该 neighbor 之后某个 system 的 label value (即, 已知从被分发该 label 的 system 到 receiving system 的路径可能经过该 neighbor).

上述条件 2 在 inter-provider VPNs (见 Section 10) 的情况下最为重要. 对于按照 Section 10 的方案 b) 构造的 inter-provider VPNs, 条件 2 很容易检查. (使用 Section 10 的方案 (c) 时的安全问题有待进一步研究.)

值得注意的是, 与尝试使用某种形式的 IP tunneling 来替代 MPLS outer label 相比, 使用 MPLS 可以更简单地提供 data plane security. 配置 border routers 拒绝接受不满足上述第一个条件的 labeled packet 是很简单的. 但如果某个 IP packet 是 IP tunneled packet, 且其 destination address 是 PE router 的地址, 要配置 router 拒绝接受该 IP packet 就困难得多; 当然, 这并非不可能, 但会带来管理和性能方面的影响.

MPLS-in-IP 和 MPLS-in-GRE 隧道在 [MPLS-in-IP-GRE] 中规定. 如果希望使用这类隧道承载 VPN 数据包, 则必须充分理解该文档 Section 8 中描述的安全考虑. 任何允许按照该文档描述对 VPN 数据包进行隧道封装的 BGP/MPLS IP VPN 实现, 必须包含一个可按该文档所述方式使用的 IPsec 实现. 如果隧道未由 IPsec 保护, 则该文档 Section 8.2 中描述的边界路由器处 IP 地址过滤技术, 是唯一能确保某个数据包在特定出口 PE 处离开隧道时确实由正确隧道头节点放入隧道的手段 (即, 确保该数据包没有伪造源地址). 由于边界路由器通常只过滤源地址, 除非出口 PE 能检查它收到的任何隧道封装数据包的 IP 源地址, 并将其与有效隧道头地址的 IP 地址列表比较, 否则数据包过滤可能无效. 任何允许在不使用 IPsec 的情况下使用 MPLS-in-IP 和/或 MPLS-in-GRE 隧道封装的实现, 必须允许出口 PE 以这种方式验证其收到的任何隧道封装数据包的 IP 源地址.

在多个 CE routers 通过 LAN interface 连接到 PE router 的情况下, 为确保适当安全性, 必须满足以下条件之一:

  1. LAN 上的所有 CE routers 都属于同一个 VPN, 或者

  2. 可信且安全的 LAN switch 将 LAN 划分为多个 VLANs, 每个 VLAN 只包含单个 VPN 的 systems; 在这种情况下, switch 会在将任何 packet 转发给 PE router 之前, 为其附加适当的 VLAN tag.

此架构不提供 cryptographic privacy, Frame Relay 或 ATM VPNs 也不提供. 如果需要, 这些架构都兼容在 CE-CE basis 上使用 cryptography.

在 PE-PE basis 上使用 cryptography 有待进一步研究.

13.2. 控制平面 (Control Plane)

上一节的 data plane security 依赖于 control plane 的安全性. 为确保安全, BGP 和 LDP connections 都不应与 untrusted peers 建立. 这两个协议都应使用 TCP/IP MD5 authentication option [TCP-MD5]. SP 网络内部的 routing protocol 也应以类似方式加以保护.

13.3. P 和 PE 设备的安全性 (Security of P and PE Devices)

如果这些设备的 physical security 被破坏, data plane security 也可能受到破坏.

应采取常规措施, 确保来自 public Internet 的 IP traffic 不能被用于修改这些设备的配置, 或对这些设备发起 Denial of Service attacks.