13. 安全考量
13. 安全考量 (Security Considerations)
13.1. 数据平面 (Data Plane)
所谓"数据平面"(data plane)中的安全性,我们是指防范以下可能性:
-
来自某个 VPN 内部的报文(packet)前往该 VPN 之外的一个站点,且这种前往方式不符合该 VPN 的策略(policy)。
-
来自某个 VPN 外部的报文进入该 VPN 的某个站点,且这种进入方式不符合该 VPN 的策略。
在以下条件下:
-
一台骨干网路由器(backbone router)不会经由某条特定的数据链路(data link)接受一个带标签的报文,除非已知该数据链路只连接到可信(trusted)系统,或者除非已知此类报文在对 IP 头部(IP header)或栈中更底层的任何标签被检查之前就会离开骨干网;且
-
带标签的 VPN-IPv4 路由不会被从不可信或不可靠的路由对等体(routing peer)处接受;且
-
没有针对控制平面(control plane)发起任何成功的攻击(attack);
本架构所提供的数据平面安全性,实际上与帧中继或 ATM 骨干网为 VPN 提供的安全性相同。如果处于 SP 控制之下的设备被正确配置,那么数据将不会在未经授权的情况下进入或离开一个 VPN。
上述条件 1 可以更精确地表述。应当丢弃一个从某个特定邻居(neighbor)处收到的带标签报文,除非以下两个条件之一成立:
-
该报文的栈顶标签(top label)具有一个由接收系统分发给该邻居的标签值;或者
-
该报文的栈顶标签具有一个由接收系统分发给该邻居之外某个系统的标签值(即,当已知从该标签被分发到的系统到接收系统的路径可能经由该邻居时)。
上述条件 2 在跨提供商 VPN(见第 10 节)的情形下最为重要。对于按照第 10 节方案 b) 构建的跨提供商 VPN,条件 2 易于检查。(当使用第 10 节方案 c) 时的安全性问题留待进一步研究。)
值得注意,使用 MPLS 使得提供数据平面安全性比试图用某种形式的 IP 隧道替代 MPLS 外层标签时要简单得多。让边界路由器拒绝接受一个带标签的报文,除非上述第一个条件对它适用,这是一件简单的事。而要配置一台路由器去拒绝接受一个其目的地址是某台 PE 路由器地址的 IP 隧道报文,则相当困难;当然,这并非不可能做到,但它既有管理上的、也有性能上的影响。
MPLS-in-IP 与 MPLS-in-GRE 隧道在 [MPLS-in-IP-GRE] 中作了规定。如果希望使用此类隧道来承载 VPN 报文,就必须完全理解该文档第 8 节描述的安全考量。任何允许 VPN 报文按该文档所述方式被隧道化的 BGP/MPLS IP VPN 实现,都必须包含一个可按其中所述方式使用的 IPsec 实现。如果该隧道未被 IPsec 保护,那么在该文档第 8.2 节中描述的、在边界路由器处进行 IP 地址过滤的技术,就是确保一个在特定出向 PE 处离开隧道的报文确实是由正确的隧道头节点放入隧道的唯一手段(即,该报文不具有伪造的源地址(spoofed source address))。由于边界路由器通常只过滤源地址,除非出向 PE 能够检查它所收到的任何隧道化报文的 IP 源地址,并将其与一份有效的隧道头地址列表进行比较,否则报文过滤可能无效。任何允许在不用 IPsec 的情况下使用 MPLS-in-IP 和/或 MPLS-in-GRE 隧道的实现,都必须允许该出向 PE 以这种方式验证它所收到的任何隧道化报文的 IP 源地址。
在若干台 CE 路由器经由一个局域网(LAN)接口连接到一台 PE 路由器的情形下,为确保恰当的安全性,以下两个条件之一必须成立:
-
该局域网上的所有 CE 路由器都属于同一个 VPN;或者
-
一台受信任且安全的局域网交换机将该局域网划分为多个虚拟局域网(VLAN),每个 VLAN 只包含一个单一 VPN 的系统;在这种情况下,该交换机将在把任何报文转发给 PE 路由器之前,为其附上恰当的 VLAN 标签(tag)。
本架构不提供加密隐私(cryptographic privacy),帧中继或 ATM 的 VPN 也不提供。如果希望使用加密,所有这些架构都与在 CE 到 CE 基础上使用密码学(cryptography)相兼容。
在 PE 到 PE 基础上使用密码学留待进一步研究。
13.2. 控制平面 (Control Plane)
上一节的数据平面安全性依赖于控制平面的安全性。为确保安全性,既不应与不可信对等体建立 BGP 连接,也不应与其建立 LDP 连接。TCP/IP 的 MD5 认证选项 [TCP-MD5] 应当随这两种协议一起使用。SP 网络内部的路由协议也应当以类似方式加以保护。
13.3. P 与 PE 设备的安全性 (Security of P and PE Devices)
如果这些设备的物理安全性遭到破坏,数据平面安全性也可能随之被破坏。
应当采取通常的措施,确保来自公共互联网的 IP 流量不能被用来修改这些设备的配置,或对其发起拒绝服务(Denial of Service)攻击。