论文部分内容阅读
部署零信任软件定义周边(SDP)架构并不是要完全取代虚拟专用网络(VPN)技术和防火墙。总的来说,标记内部和外部的防火墙分界点不会很快消失。VPN集中器在可预见的未来也将占据一席之地。
无论在哪个技术时代,颠覆和替代都是一种非常激进的部署方式。由于SDP是全新的技术,因此在选择合适的供应商时应当谨慎处理。SDP的采用应该是一个缓慢的迁移过程,而不应试图通过颠覆和替换一蹴而就。
正如我在Network Insight网站上所写的那样,虽然SDP是一种颠覆性技术,但是在与众多的SDP供应商展开过讨论后,我发现当前的SDP格局倾向于基于特定的用例和项目,而不是立足于一种必须要在全球部署的技术。首先,用户应当能够为某些细分的用户群体部署SDP。
传统的老式VPN和新的SDP架构很可能会并存一段时间。因此,如果可能的话,用户应该选择支持双模VPN和SDP架构且能够在单一窗格内进行控制的解决方案。
各种SDP架构具有不同的特点。不过,让架构具有可用性非常重要,这样客户无需进行太多修改即可轻松使用,包括打开新的防火墙端口。在这种情况下,还出现了云优先的SDP解决方案。在这种解决方案中,供应商的私有云可被用于控制网络资源访问。
有些供应商会提供SDP组件,以便用户能够在云端和内部数据中心进行部署。不过,有些基础设施提供商会提供自己的SDP组件,用户必须要运行他们的组件才行。
内容分发网络(CDN)也会提供一些SDP解决方案。这些方案会要求用户使用其网络分发服务。在这篇文章中,我们将对由供应商提供组件让用户自行部署或是通过与专业服务团队部署的SDP架构展开讨论。在我们提到的供应商中,部分供应商在密切关注着云安全联盟(CSA)SDP架构指南,不过有些供应商则没有。
常见的SDP架构由SDP控制器、客户端和网关组件组成。自助部署应该提供一个选项。这个选项既要允许基于SDP和周边的VPN功能以并行方式工作,同时又要能够执行零信任原则。用户方面应该要确保新的SDP组件可以轻松与已部署的现有平台和供应商集成在一起。
对于集中式身份验证和授权,控制器组件会跟踪用户、设备和应用程序。控制器将充当集中式策略执行引擎,以管理所有用户、设备和应用程序的控制与数据平面。
控制平面提供了诸如粒度分割等功能,用户可以获得非常具体的、甚至可根据每个应用程序、每个用户或每台设备的微分段。接入网络的所有事物都将拥有一个策略以管理它们能够去哪里、能够看到什么和做什么。
控制器能够跟踪与触发认证过程的实体通信。通过这种方式,控制器可以确定哪些主机可以彼此通信。控制器还可将信息转发给外部服务,如认证、地理位置和/或身份服务,以对请求主机可以访问内容的决定进行确认。
控制器的要旨是它们可以支持哪些类型的集成点。SDP控制器应具有连接和支持授权服务的能力,例如PKI、设备指纹、地理位置、SAML、OpenID、OAuth、LDAP、Kerberos和多因素身份验证。
控制器对策略进行了集中汇总,并在SDP客户端和SDP网关之间形成了一个接口。这不仅可以实现分类,还可以将策略推送到更靠近请求客户端的网关。因此,其最大的好处是能够看到谁在网络上以及他们可以去哪里。正如之前关于SDP的一篇文章中所讨论的那样,可见性目前是企业网络中的一个重要短板。
我们有一个“黑暗”网络,最终用户是无法查看内部资源的IP或DNS条目的(可以防止DDoS攻击)。不过,基于集中控制器设置的认证和授权以及推送到网关的信息就相当于给管理员打开了一盏灯。
网关可以是物理设备或虚拟机(VM),可以放置在云端,通过公有云访问也可以部署在本地。
理想情况下,网关可以设置在靠近请求资源的位置上。地理位置集成点在这里是非常有用的,因为出于安全原因只有某些位置可以访问信息,或者是只有某些位置能够通过重定向到逻辑上更接近的服务来增强用户体验。
用户同时拥有连接多个网关的多个隧道是很常见的事情。因为它们不是静态路径或一对一关系,更多的是用户与应用程序的关系。应用程序可以存在于任何地方,为了提供对受保护资产的访问,隧道是动态并且短暂的。可以说,网关是一种中间件设备。
当用户通过身份验证并被授权给控制器时,网关上会有额外的检查。例如,使用SAML(安全声明标记语言)对用户进行身份验证,然后将信息传递给基于SaaS的产品。
每个网关都有策略和配置,这使得网关能够执行端点验证,从而确保端点在被授予网络访问权限之前完成强制状态评估。
本质上,所有关于用户、设备安全状态的设备信息以及地理位置信息都是从控制器中提取出来的,并通过安全控制平面发送到网关。
信任是一种双向的信赖关系,即两个交流的实体在相同背景下做应该做的事情。因此,信任应该建立在离端点最近的地方,可以在端点上使用代理或无代理客户端来执行。客户端应当可跨不同的操作系统工作,这样用户就不必亲自管理任何东西。
通过基于浏览器的解决方案,用户可使用Web浏览器访问受保护的应用程序。虽然它们不会提供全范围的TCP和UDP端口,但是用户可以通过HTML5做许多工作,其中许多都是原生的。
让我们总结一下处理流程。客户端首先向控制器发出请求。然后,控制器响应请求并返回客户端有权访问的资源列表。最后,控制器再根据已设置的策略进行确认。 一旦控制器完成所有确认和地理定位,以确保它们将到达正确的网关,控制器便会通过控制平面将策略信息转发到选定的网关。随后,网关将与端点上的客户端(代理或无代理)建立联系。
客户端会识别需要运行的策略以及需要连接的网关。这时客户端将知道提供所请求服务的正确网关。随后,会有一个针对该客户端的额外身份验证程序被启动。身份验证会根据身份、设备、设备配置和其他背景信息展开。
这些信息将通过控制平面发送给控制器。控制器会检查客户端是否满足所有身份验证要求,并匹配适合访问资源的安全状态。
一旦过程完成,客户端将建立一条到网关的安全连接,同时数据平面也将被建立。随后,客户端将通过数据平面直接与网关通信,流量将不会流经集中式控制器。
SDP架构非常多,但是它们中的大多数都有着相似的理念和阶段。
SDP架构是以用户为中心的。这意味着它们在允许任何访问之前会对用户和设备进行验证。访问策略是基于用户属性创建的。这与传统的网络系统迥然不同,因为传统的网络系统只是单纯基于IP地址,不会考虑用户及其设备的细节。
评估背景信息是SDP的一个关键方面。任何与IP相关的东西都不值得信赖,因为我们没有一个有效的东西可以强制对其执行安全策略。我们需要评估的不仅仅是IP地址。
对于设备和用户评估,我们需要更深入地了解并超越IP,不仅仅是将其用于网络定位,而且还要将其作为信任之锚。理想情况下,一个可行的SDP解决方案必须分析用户、角色、设备、位置、时间、网络、应用程序以及端点安全状态。
此外,通过利用目录组成员资格、IAM分配的属性和用户角色等元素,组织机构可以定义和控制对网络资源的访问。业务、安全和合规团队还可以采取对他们有意义的方式来执行这些访问控制。
从本质上讲,破解难题的第一步是对每个用户和连接进行身份验证和授权。为此,我们需要执行以下几个阶段。
首先,SDP供应商需要验证用户。这可以通过安全声明标记语言(SAML)或多因素身份验证通过SSO(单点登录)来实现。用户的验证取决于用户试图访问的内容。网络资源可以在云端上,例如基于SaaS的应用程序,还可以在企业本地网络上,这些因素决定了验证方法。
利用广泛的多因素身份验证和授权选项可以确保客户端及其访问的资源在事务期间得到持续验证。客户端的定期检查可确保策略被持续执行。它们还可以防止用户在连接打开时执行其他不被允许的操作。
其次,为了在端点层面上进行验证,我們需要验证设备的安全状态。认证和授权对于设备和用户同样重要。连接前和连接后都应当进行验证,以确保设备与相应的用户是有效的。如果用户有恶意行为,那么拥有经过验证的设备是没有意义的。
从主机检查和位置感知的角度来看,我们需要确保设备是否是从一个异常或危险的位置访问网络的?确定这一点有助于防止恶意软件、被root的设备、越狱设备连接到网络上。解决这些问题后,我们可以通过配置的策略选择进行隔离、允许或拒绝。
在端点上,SDP供应商应该能够做一些检查工作,例如注册表设置、恶意软件、防病毒设置、防火墙、硬盘(HD)加密等。一些供应商甚至可以更为细致地检查并寻找特定的微软补丁。
在这里,我们可以使用基于以上背景的策略,将这些策略应用于设备、连接和位置。如果策略是基于背景制订的,那么我们需要尽可能多地收集信息以验证整体态势。
在第三阶段,我们需要保护数据。在这个阶段,供应商应当在每个应用程序隧道中采取必要措施以确保事务是安全的,并且在会话期间对数据进行加密。
本文作者Matt Conran拥有超过19年的网络行业从业经验,曾经服务于多个初创企业和政府机构。此外,他还作为高级架构师参与了全球某大型服务提供商和数据中心网络的建设工作。
原文网址
https://www.networkworld.com/article/3404477/software-defined-perimeter-sdp-the-deployment.html
无论在哪个技术时代,颠覆和替代都是一种非常激进的部署方式。由于SDP是全新的技术,因此在选择合适的供应商时应当谨慎处理。SDP的采用应该是一个缓慢的迁移过程,而不应试图通过颠覆和替换一蹴而就。
正如我在Network Insight网站上所写的那样,虽然SDP是一种颠覆性技术,但是在与众多的SDP供应商展开过讨论后,我发现当前的SDP格局倾向于基于特定的用例和项目,而不是立足于一种必须要在全球部署的技术。首先,用户应当能够为某些细分的用户群体部署SDP。
传统的老式VPN和新的SDP架构很可能会并存一段时间。因此,如果可能的话,用户应该选择支持双模VPN和SDP架构且能够在单一窗格内进行控制的解决方案。
SDP架构的类型
各种SDP架构具有不同的特点。不过,让架构具有可用性非常重要,这样客户无需进行太多修改即可轻松使用,包括打开新的防火墙端口。在这种情况下,还出现了云优先的SDP解决方案。在这种解决方案中,供应商的私有云可被用于控制网络资源访问。
有些供应商会提供SDP组件,以便用户能够在云端和内部数据中心进行部署。不过,有些基础设施提供商会提供自己的SDP组件,用户必须要运行他们的组件才行。
内容分发网络(CDN)也会提供一些SDP解决方案。这些方案会要求用户使用其网络分发服务。在这篇文章中,我们将对由供应商提供组件让用户自行部署或是通过与专业服务团队部署的SDP架构展开讨论。在我们提到的供应商中,部分供应商在密切关注着云安全联盟(CSA)SDP架构指南,不过有些供应商则没有。
常见的SDP架构由SDP控制器、客户端和网关组件组成。自助部署应该提供一个选项。这个选项既要允许基于SDP和周边的VPN功能以并行方式工作,同时又要能够执行零信任原则。用户方面应该要确保新的SDP组件可以轻松与已部署的现有平台和供应商集成在一起。
控制器——集中式策略执行引擎
对于集中式身份验证和授权,控制器组件会跟踪用户、设备和应用程序。控制器将充当集中式策略执行引擎,以管理所有用户、设备和应用程序的控制与数据平面。
控制平面提供了诸如粒度分割等功能,用户可以获得非常具体的、甚至可根据每个应用程序、每个用户或每台设备的微分段。接入网络的所有事物都将拥有一个策略以管理它们能够去哪里、能够看到什么和做什么。
控制器能够跟踪与触发认证过程的实体通信。通过这种方式,控制器可以确定哪些主机可以彼此通信。控制器还可将信息转发给外部服务,如认证、地理位置和/或身份服务,以对请求主机可以访问内容的决定进行确认。
控制器的要旨是它们可以支持哪些类型的集成点。SDP控制器应具有连接和支持授权服务的能力,例如PKI、设备指纹、地理位置、SAML、OpenID、OAuth、LDAP、Kerberos和多因素身份验证。
控制器对策略进行了集中汇总,并在SDP客户端和SDP网关之间形成了一个接口。这不仅可以实现分类,还可以将策略推送到更靠近请求客户端的网关。因此,其最大的好处是能够看到谁在网络上以及他们可以去哪里。正如之前关于SDP的一篇文章中所讨论的那样,可见性目前是企业网络中的一个重要短板。
我们有一个“黑暗”网络,最终用户是无法查看内部资源的IP或DNS条目的(可以防止DDoS攻击)。不过,基于集中控制器设置的认证和授权以及推送到网关的信息就相当于给管理员打开了一盏灯。
网关的作用
网关可以是物理设备或虚拟机(VM),可以放置在云端,通过公有云访问也可以部署在本地。
理想情况下,网关可以设置在靠近请求资源的位置上。地理位置集成点在这里是非常有用的,因为出于安全原因只有某些位置可以访问信息,或者是只有某些位置能够通过重定向到逻辑上更接近的服务来增强用户体验。
用户同时拥有连接多个网关的多个隧道是很常见的事情。因为它们不是静态路径或一对一关系,更多的是用户与应用程序的关系。应用程序可以存在于任何地方,为了提供对受保护资产的访问,隧道是动态并且短暂的。可以说,网关是一种中间件设备。
当用户通过身份验证并被授权给控制器时,网关上会有额外的检查。例如,使用SAML(安全声明标记语言)对用户进行身份验证,然后将信息传递给基于SaaS的产品。
每个网关都有策略和配置,这使得网关能够执行端点验证,从而确保端点在被授予网络访问权限之前完成强制状态评估。
本质上,所有关于用户、设备安全状态的设备信息以及地理位置信息都是从控制器中提取出来的,并通过安全控制平面发送到网关。
代理的作用
信任是一种双向的信赖关系,即两个交流的实体在相同背景下做应该做的事情。因此,信任应该建立在离端点最近的地方,可以在端点上使用代理或无代理客户端来执行。客户端应当可跨不同的操作系统工作,这样用户就不必亲自管理任何东西。
通过基于浏览器的解决方案,用户可使用Web浏览器访问受保护的应用程序。虽然它们不会提供全范围的TCP和UDP端口,但是用户可以通过HTML5做许多工作,其中许多都是原生的。
SDP處理的典型流程
让我们总结一下处理流程。客户端首先向控制器发出请求。然后,控制器响应请求并返回客户端有权访问的资源列表。最后,控制器再根据已设置的策略进行确认。 一旦控制器完成所有确认和地理定位,以确保它们将到达正确的网关,控制器便会通过控制平面将策略信息转发到选定的网关。随后,网关将与端点上的客户端(代理或无代理)建立联系。
客户端会识别需要运行的策略以及需要连接的网关。这时客户端将知道提供所请求服务的正确网关。随后,会有一个针对该客户端的额外身份验证程序被启动。身份验证会根据身份、设备、设备配置和其他背景信息展开。
这些信息将通过控制平面发送给控制器。控制器会检查客户端是否满足所有身份验证要求,并匹配适合访问资源的安全状态。
一旦过程完成,客户端将建立一条到网关的安全连接,同时数据平面也将被建立。随后,客户端将通过数据平面直接与网关通信,流量将不会流经集中式控制器。
所有SDP架构中的常见阶段
SDP架构非常多,但是它们中的大多数都有着相似的理念和阶段。
SDP架构是以用户为中心的。这意味着它们在允许任何访问之前会对用户和设备进行验证。访问策略是基于用户属性创建的。这与传统的网络系统迥然不同,因为传统的网络系统只是单纯基于IP地址,不会考虑用户及其设备的细节。
评估背景信息是SDP的一个关键方面。任何与IP相关的东西都不值得信赖,因为我们没有一个有效的东西可以强制对其执行安全策略。我们需要评估的不仅仅是IP地址。
对于设备和用户评估,我们需要更深入地了解并超越IP,不仅仅是将其用于网络定位,而且还要将其作为信任之锚。理想情况下,一个可行的SDP解决方案必须分析用户、角色、设备、位置、时间、网络、应用程序以及端点安全状态。
此外,通过利用目录组成员资格、IAM分配的属性和用户角色等元素,组织机构可以定义和控制对网络资源的访问。业务、安全和合规团队还可以采取对他们有意义的方式来执行这些访问控制。
从本质上讲,破解难题的第一步是对每个用户和连接进行身份验证和授权。为此,我们需要执行以下几个阶段。
验证用户状态
首先,SDP供应商需要验证用户。这可以通过安全声明标记语言(SAML)或多因素身份验证通过SSO(单点登录)来实现。用户的验证取决于用户试图访问的内容。网络资源可以在云端上,例如基于SaaS的应用程序,还可以在企业本地网络上,这些因素决定了验证方法。
利用广泛的多因素身份验证和授权选项可以确保客户端及其访问的资源在事务期间得到持续验证。客户端的定期检查可确保策略被持续执行。它们还可以防止用户在连接打开时执行其他不被允许的操作。
验证设备状态
其次,为了在端点层面上进行验证,我們需要验证设备的安全状态。认证和授权对于设备和用户同样重要。连接前和连接后都应当进行验证,以确保设备与相应的用户是有效的。如果用户有恶意行为,那么拥有经过验证的设备是没有意义的。
从主机检查和位置感知的角度来看,我们需要确保设备是否是从一个异常或危险的位置访问网络的?确定这一点有助于防止恶意软件、被root的设备、越狱设备连接到网络上。解决这些问题后,我们可以通过配置的策略选择进行隔离、允许或拒绝。
在端点上,SDP供应商应该能够做一些检查工作,例如注册表设置、恶意软件、防病毒设置、防火墙、硬盘(HD)加密等。一些供应商甚至可以更为细致地检查并寻找特定的微软补丁。
在这里,我们可以使用基于以上背景的策略,将这些策略应用于设备、连接和位置。如果策略是基于背景制订的,那么我们需要尽可能多地收集信息以验证整体态势。
保护数据
在第三阶段,我们需要保护数据。在这个阶段,供应商应当在每个应用程序隧道中采取必要措施以确保事务是安全的,并且在会话期间对数据进行加密。
本文作者Matt Conran拥有超过19年的网络行业从业经验,曾经服务于多个初创企业和政府机构。此外,他还作为高级架构师参与了全球某大型服务提供商和数据中心网络的建设工作。
原文网址
https://www.networkworld.com/article/3404477/software-defined-perimeter-sdp-the-deployment.html