资源公钥基础设施(Resource Public Key Infrastructure,简称RPKI),也称资源认证(Resource Certification),中文全称“互联网码号资源公钥基础设施”,是一项旨在使互联网路由基础设施更安全的公開金鑰基礎建設(PKI)框架。
RPKI为将互联网码号资源信息(如自治系统号码和IP地址)连接到一个提供了一种方式。它的证书结构反映了互联网码号资源的分发方式,即资源最初由IANA分配到区域互联网注册管理机构(RIR),区域机构再将其分配给(LIR),最后由本地机构将资源分配给其客户。资源的合法持有人可以使用RPKI来控制互联网路由协议的运行,以防止和其他攻击。尤其是RPKI可通过BGPSEC保护边界网关协议(BGP),以及以安全邻居发现协议(SEND)作为IPv6的邻居发现协议。
RPKI架构被记录于RFC 6480。RPKI规范记录于一系列RFC:RFC 6481、RFC 6482、RFC 6483、RFC 6484、RFC 6485、RFC 6486、RFC 6487、RFC 6488、RFC 6489、RFC 6490、RFC 6491、RFC 6492和RFC 6493。SEND记录于RFC 6494和RFC 6495。这些RFC由IETF的[https://datatracker.ietf.org/wg/sidr/charter/ SIDE工作组] 的制作,并是基于RFC 4593记录的一份威胁分析。这些标准涵盖了BGP源验证,而路径验证(BGPSEC)则还在进展中。前缀源验证目前已有数个实现。
资源证书和子对象
RPKI使用X.509 PKI证书(RFC 5280) 附有IP地址和AS标识符扩展(RFC 3779)的。它允许区域互联网注册管理机构的成员即(LIR)获取一个资源证书,列出其持有的互联网码号资源。这为其持有提供了有效证据,但应注意该证书不包含身份信息。通过使用资源证书,本地机构可以为其对所持有前缀执行路由宣告一事创建密码学证明。这些证明被称为(ROA)。
路由源授权
路由源授权状态表示着自治系统(AS)是否已被授权作为特定IP前缀的源头。此外,它可以确定AS已被授权宣告的最大前缀长度。
最大前缀长度
最大前缀长度是一个可选字段。当它未定义时,AS仅被授权宣告明确指定的前缀,任何更具体的前缀宣告被视为无效。这是以宣告更具体前缀来强制实施聚合并防止劫持的一种方式。
当它存在时,这指定了AS已被授权宣告具体IP前缀的长度。例如,如果IP地址前缀为10.0/16,最大长度为22,则该AS被授权宣告10.0/16下的任何前缀,只要没有超出/22的范围。因此本例中,该AS被授权宣告10.0/16、10.0.128/20或10.0.252/22,但不含10.0.255.0/24。
RPKI路由宣告核验
当为特定源AS和前缀创建一个ROA时,它将对一个或多个路由宣告的RPKI有效性产生影响。它们可以是:
- 有效
** 路由宣告覆盖至少一个ROA
- 无效
** 该前缀从未经授权的AS发布。意即:
*** 另一个AS有这个前缀的ROA,但没有ROA授权这个AS。或者,
*** 这可能是一次劫持企图
** 该宣告超过ROA中设置的与前缀和AS匹配的最大长度
- 未知
** 此次宣告的前缀未被现有的ROA覆盖(或仅部分覆盖)
注意,无效的BGP更新也可能是由于配置不正确的ROA所造成。
管理
已有[http://trac.rpki.net/ 开源工具]可用于运行证书颁发机构和管理资源证书以及子对象(例如ROA)。此外,区域机构在其成员门户有托管的RPKI平台。本地机构可以选择依赖于一个托管的系统,或运行自己的软件。
发布
该系统不使用单个存储库发布点来发布RPKI对象,而是由由多个存储库发布点组成。每个存储库发布点与一个或多个RPKI证书发布点相关联。在实践中,这意味着运行一个证书颁发机构时,本地机构可以选择自己发布所有加密资料,也可以依赖第三方发布。当本地机构选择使用由区域机构提供的托管系统时,原则上发布将在区域机构的存储库中完成。
验证
相关各方运行本地的RPKI验证工具,它们指向不同的RPKI信任锚,并使用rsync收集用于发布各存储库的所有加密对象。这将创建一个本地验证的缓存,用于进行BGP路由决策。
路由决策
在ROA验证后,该证明可以与BGP路由一同协助网络运营商的决策过程。这可以手动完成,但已验证前缀的原始数据也可以使用[http://datatracker.ietf.org/doc/rfc6810/ RPKI to Router Protocol (RFC 6810)] 发送到支持的路由器。思科系统在[http://www.ripe.net/lir-services/resource-management/certification/router-configuration#Cisco 众多平台] 提供了获取RPKI数据集的原生支持,并在[http://www.cisco.com/c/en/us/td/docs/ios-xml/ios/iproute_bgp/command/irg-cr-book/bgp-m1.html#wp3677719851 路由器配置] 中使用。瞻博网络在运行12.2或更新版本的[http://www.juniper.net/techpubs/en_US/junos12.2/topics/topic-map/bgp-origin-as-validation.html 所有平台] 上提供支持。通过[http://www-x.antd.nist.gov/bgpsrx/ BGP Secure Routing Extensions (BGP-SRx)] 或基于RTRlib的一个[https://github.com/rtrlib/quagga-rtrlib RFC完全兼容RPKI实现] 获得此功能。[http://rpki.realmv6.org/ RTRlib] 提供了一个RTR协议和前缀源验证的开源C实现。该库对于路由软件的开发人员有用,但也适用于网络运营商。开发人员可以将RTRlib集成到BGP守护程序中,以实现将其扩展到RPKI。网络运营商也可以使用RTRlib开发监控工具(例如,检查缓存的正常运行或评估其性能)。
RFC 6494更新了邻居发现协议(ND)的安全机制(即安全邻居发现协议,SEND)的证书验证方法,以便在IPv6中使用RPKI。它使用修改的RFC 6487 RPKI证书配置定义了SEND证书配置,其中包含一个RFC 3779 IP地址委派扩展。
参考资料
外部链接
; 中文:
- [http://www.sohu.com/a/149546981_352856 CNNIC成功举办2017中国IP地址分配联盟高峰会议] ,CNNIC
- [http://www.ptsn.net.cn/cgi-bin/search.cgi?q=RPKI 通标网站内检索:RPKI]
; 英文:
- [https://web.archive.org/web/20140324124241/http://isoc.org/wp/ietfjournal/?p=2438 IETF Journal - Securing BGP and SIDR]
- [http://rpki.net/ An open source implementation of the complete set of RPKI protocols and tools]
- [http://rpki.realmv6.org/ RTRlib - Open source RPKI-Router Client C Library]
- [https://github.com/rtrlib/quagga-rtrlib Quagga RPKI implementation]
- [http://www-x.antd.nist.gov/bgpsrx/ BGP-SrX - Quagga router implementation of RPKI-based Origin and Path validation.]
- [http://rpki-monitor.antd.nist.gov/ RPKI-Monitor - Global and regional monitoring and analysis of RPKI deployment and use.]
- [http://certification-stats.ripe.net/ RPKI Deployment statistics for all RIRs]
- [https://web.archive.org/web/20120425232106/http://www.labs.lacnic.net/~rpki/rpki-heatmaps/latest/global-roa-heatmap.png Global ROA deployment heatmap]
- [https://web.archive.org/web/20140910195326/http://www.eurotransit.cz/ EuroTransit Czech Republic]
- [http://bgpmon.net/blog/?p=414 BGPMON - Validating BGP announcement with RPKI]
- [http://www.apnic.net/services/services-apnic-provides/resource-certification/RPKI An APNIC primer on RPKI]
- [http://ripe.net/certification/ RIPE NCC Resource Certification (RPKI) information]
- [http://lacnic.net/en/rpki/ LACNIC RPKI Information]
- [https://web.archive.org/web/20120515221110/https://www.arin.net/resources/rpki.html ARIN RPKI Information]
- [http://www.nro.net/news/nro-declaration-on-rpki NRO statement on RPKI]
- [http://www.ietf.org/mail-archive/web/ietf-announce/current/msg07028.html Internet Architecture Board statement on RPKI]
- [https://web.archive.org/web/20110810202155/http://blog.internetgovernance.org/blog/_archives/2010/9/7/4624281.html Building a new governance hierarchy: RPKI and the future of Internet routing and addressing]
- [https://web.archive.org/web/20120206105421/http://www.ir.bbn.com/sbgp/IEEE-JSAC-April2000/IEEE-JSAC-S-BGP.html Secure Border Gateway Protocol (Secure-BGP)]
- RPKI Router Implementation Report
评论 (0)