教程篇(7.0) 06. 零信任网络访问ZTNA ❀ FortiClient EMS ❀ Fortinet 网络安全专家 NSE 5

Posted 飞塔老梅子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了教程篇(7.0) 06. 零信任网络访问ZTNA ❀ FortiClient EMS ❀ Fortinet 网络安全专家 NSE 5相关的知识,希望对你有一定的参考价值。

  在本课中,你将了解零信任网络访问(ZTNA)。

  通过展示ZTNA的能力,你将能够了解ZTNA的关键概念以及如何配置ZTNA。你还将学习在FortiGate和FortiClient EMS如何排除和调试ZTNA问题。

  通过展示了解ZTNA的好处和基本配置的能力,你将能够在你的环境中实现ZTNA。

  ZTNA是一种访问控制方法,它使用客户端设备标识、身份验证和零信任标记来提供基于角色的应用程序访问。ZTNA使管理员能够灵活地管理fabric上的本地用户和off-fabric上的远程用户的网络访问。ZTNA只有在设备验证、验证用户身份、授权用户、然后使用零信任标记执行基于上下文的姿势检查后才授予对应用程序的访问权。

  传统上,用户和设备对企业资源的on-fabric访问和off-fabric VPN访问有不同的规则集。对于分布式的工作人员,以及跨越公司网络、数据中心和云的访问,管理规则可能会很复杂。当企业需要使用多个VPN来访问各种资源时,用户体验也会受到影响。

  ZTNA有两种模式:

  ● Full ZTNA允许用户通过SSL加密的访问代理安全访问资源。这通过消除VPN的使用简化了远程访问。

  ● IP/MAC过滤使用ZTNA标记提供额外的识别因素,并通过安全姿态检查实现基于角色的零信任访问。

  上图演示了ZTNA遥测、标签和策略执行。你可以在FortiClient EMS中配置ZTNA标签的条件和策略。FortiClient EMS通过Security Fabric集成与FortiGate共享标签信息。FortiClient通过ZTNA遥测技术,与FortiClient EMS直接通信,持续共享设备状态信息。然后,FortiGate可以使用ZTNA标签,通过ZTNA访问对传入的流量实施访问控制规则。

  要在GUI上启用ZTNA,必须启用FortiGate系统>可见功能,然后启用零信任网络访问。你还必须在FortiGate系统>可见功能上启用显式代理功能。

  在FortiGate上配置ZTNA需要进行如下配置:

  ● FortiClient EMS在安全fabric中增加了fabric连接器。FortiGate与EMS服务器保持持续的连接,以同步终端设备信息,并自动同步ZTNA标签。你可以创建组并添加标签,以便在ZTNA规则和防火墙策略中使用。

  ● ZTNA服务器定义了接入代理VIP和客户端连接的真实服务器。防火墙策略匹配并将客户端请求重定向到接入代理VIP。你也可以启用身份验证。

  ● ZTNA规则是一种用于强制访问控制的代理策略。你可以定义ZTNA标记或标记组来强制零信任基于角色的访问。你可以配置安全配置文件来保护该流量。

  ● 防火墙策略匹配并将客户端请求重定向到接入代理VIP。可以定义源接口,也可以定义可以访问VIP的地址。缺省情况下,目的地址为任意接口。在ZTNA规则处对流量进行UTM处理。

  你也可以配置对接入代理进行认证。ZTNA支持基本的HTTP和SAML方法。

  FortiClient需要与FortiClient EMS建立连接。你可以在ZERO TRUST TELEMETRY菜单中的FortiClient控制台上验证连接状态,或在FortiClient EMS上单击Endpoints > All Endpoints页。

  为保证与FortiClient远程终端的连接,需要允许通过企业防火墙访问FortiClient EMS的8013端口。在FortiGate上,你可以创建VIP和入站策略,允许从internet访问TCP端口8013。

  在FortiGate上单击“Security Fabric > Fabric Connectors”,可以配置本地部署的FortiClient EMS连接器。应用FortiClient EMS设置后,FortiGate必须接受FortiClient EMS服务器证书。但是,在配置到FortiClient EMS服务器的新连接时,证书可能不受信任。要解决这个问题,你必须手动导出证书并在FortiGate上安装。SDN连接默认使用的FortiClient EMS证书是由首次安装FortiClient EMS时保存在Windows服务器上的CA证书签名的。此证书存储在服务器上的“受信任的根证书颁发机构”文件夹中。关于在FortiGate上导出和安装证书的更多信息,请参考Fortios-7.0.1管理指南。

  接下来,你必须在FortiClient EMS上对FortiGate进行授权。登录FortiClient EMS后,会弹出一个窗口,提示你对FortiGate进行授权。如果你没有登录,您可以单击“管理>设备”,选择FortiGate设备,并对其进行授权。注意,FortiClient EMS连接器状态显示为down,直到你在FortiClient EMS上授权FortiGate为止。

  FortiGate在连接到FortiClient EMS后自动同步ZTNA标签。

  你可以为Windows、macOS、Linux、iOS和android终端创建、编辑和删除零信任标记规则。当对FortiClient EMS和FortiClient使用零信任标记规则时,会发生以下情况:

  ● FortiClient EMS通过遥测通信向终端发送零信任标记规则。

  ● FortiClient根据提供的规则对终端进行检查,并将结果发送给FortiClient EMS。

  ● FortiClient EMS接收FortiClient发送的结果。

  ● FortiClient EMS使用为每个规则配置的标记动态地将终端分组在一起。单击“零信任标记>零信任标记监视器”可以查看动态端点组。

  注意,当终端网络发生变化或用户登录和注销事件发生时,即使没有标记变化,FortiClient也会向FortiClient EMS触发XFFCK-TAG消息。在FortiClient EMS收到标记后,它会立即处理它们,并在REST API响应后的5秒内更新FortiOS标记。对于其他标签的变更,forclient会定期将变更信息发送至FortiClient EMS。

  你可以单击“添加”在“零信任标记规则”页面上添加新规则。规则集需要不同操作系统的名称、标记和规则类型。选择的操作系统类型会影响可用的规则类型和相关选项。你可以在规则集中配置多个规则类型。

  默认情况下,终端必须满足所有已配置的规则才能符合规则集。你可能希望将标记应用于满足部分(而不是全部)配置规则的端点。在这种情况下,你可以修改规则集逻辑。在上图的示例中,管理员希望对满足以下条件之一的端点应用相同的标记:

  ● 运行Windows 10

  ● 运行Windows 7操作系统,已安装杀毒软件

  使用默认规则集逻辑,如果终端运行的是Windows 7或10,并且安装并运行杀毒软件,那么它将符合规则集的条件。要修改规则集逻辑,请单击Edit logic为每个规则设置数值。输入(1和2)或3,表示同时满足反病毒规则和Windows 7规则(规则1和规则2)或仅满足Windows 10规则(规则3)的端点满足规则集。单击“默认逻辑”,可恢复默认逻辑。

  你可以使用and和or来定义规则逻辑。定义规则逻辑时不能使用not。你还可以使用括号对规则进行分组,如上图所示。

  你可以将零信任标记规则集导入和导出为JSON文件。你还可以通过上传规则签名,将零信任标记规则作为FortiGuard爆发警报的预定义规则。

  JSON文件应该包含一个警报对象数组,每个对象都有一个标记名称和一组签名。每个签名应具有以下属性:

  ● 系统(Windows、MacOS、Linux、iOS、Android)

  ● 类型(文件、注册表、进程)

  ● 内容

  如果导入成功,FortiClient EMS将显示一条导入成功的FortiGuard爆发警报签名消息。如果文件格式不正确,FortiClient EMS显示Invalid JSON错误。

  Manage Tags窗口显示所有配置的标记,以及将标记应用到满足规则的端点的规则。你可以删除没有附加任何规则的标记。在上图显示的示例中,你可以删除Server 2012规则,因为它没有附加任何规则。

  你可以在零信任标记监视器部分中查看所有动态端点组。FortiClient EMS会根据每个规则配置的标签创建动态终端组。

  终端必须满足所有配置条件才能满足规则。你也可以使用NOT操作符。注意,并不是所有的规则类型都支持not操作符。详细信息请参考FortiOS 7.1管理手册。

  ZTNA标注规则有不同的规则类型,随你选择的操作系统而变化。上图展示了Windows操作系统可用的零信任标记规则类型。每个规则类型都提供可供选择的选项。例如选择“AD组”,则需要从域服务器上可用的AD组中选择需要的AD组。要使用此选项,必须在“终端”下配置域。对于所有规则类型,可以配置多个条件。

  终端必须满足所有配置条件才能满足规则。你也可以使用NOT。注意,并不是所有的规则类型都支持not选项。关于所有可用的规则类型和操作系统的详细信息,请参阅fortios -7.0-管理手册。

  答案:B

  答案:B

  现在你已经了解了ZTNA及其基本配置要求。接下来,你将了解FortiClient、FortiClient EMS和FortiGate之间的设备身份和信任。

  通过展示设备标识和信任方面的能力,你将能够理解设备角色以及基于SSL证书的身份验证是如何工作的。

  设备标识和信任是ZTNA不可或缺的。通过客户端证书建立设备标识,FortiClient、FortiClient EMS和FortiGate设备之间建立信任关系。在ZTNA中,设备扮演着特定的角色。

  FortiClient在注册时向FortiClient EMS提供如下信息:

  ● 设备信息(网络详细信息、操作系统、型号等)

  ● 已登录用户信息

  ● 安全态势(on-fabric和Off-fabric、杀毒软件、漏洞状态等)

  FortiClient在首次连接代理时,也会向CA (EMS ZTNA certificate Authority)申请并获取客户端设备证书。客户端使用这个证书向FortiGate标识自己。

  FortiClient EMS使用FortiClient的UID、证书序列号、EMS序列号签发并签名客户端证书。此时,FortiClient EMS会与FortiGate同步证书。FortiClient EMS还与FortiGate共享其EMS ZTNA CA证书,以便FortiGate使用该证书对客户端进行认证。FortiClient EMS使用零信任标记规则,基于它在每个终端上拥有的信息来标记端点。FortiClient EMS也与FortiGate共享标签。

  FortiGate与FortiClient EMS保持持续的连接,同步终端设备的信息,如FortiClient的UID、客户端证书SN、FortiClient EMS SN、网络详细信息(IP和MAC地址)等。当设备信息发生变化时,例如客户端从on-fabric到off-fabric,或者客户端安全姿态发生变化时,ForitClient EMS会先更新设备信息,然后再更新FortiGate。

  FortiClient EMS默认生成一个default_ZTNARootCA证书,ZTNA CA使用该证书对来自FortiClient终端的csr进行签名。单击刷新按钮将撤销和更新根CA,通过为每个客户端生成新证书,强制更新到FortiGate和FortiClient终端。FortiClient EMS还支持对单个客户端证书的管理。当证书私钥显示出被破坏的迹象时,还可以撤销端点使用的证书。单击“Endpoint > All Endpoint”,选中客户端,单击“Action > Revoke client Certificate”。

  请不要将FortiClient EMS的CA证书(ZTNA)与SSL证书混淆。服务端证书是FortiClient EMS使用的服务端证书,用于通过HTTPS协议访问FortiClient EMS服务器,并实现与FortiClient EMS服务器的fabric连接。

  在Windows操作系统下,FortiClient会自动将证书安装到证书存储中。存储库中的证书信息,如证书的UID、SN等,需要与FortiClient EMS和FortiGate上的信息相匹配。要定位其他操作系统上的证书,请参考供应商的文档。

  可以通过CLI命令diagnostic endpoint record list a在FortiGate上验证是否存在匹配的endpoint记录,以及客户端UID、客户端证书SN、EMS证书SN等信息。如果任何信息丢失或不完整,客户端证书身份验证可能会失败,因为FortiClient无法定位相应的终端条目。

  上图显示客户端证书信息同步到FortiGate。

  终端在注册FortiClient EMS时获取客户端证书。FortiClient自动提交CSR请求,由FortiClient EMS签名并返回客户端证书。此证书存储在操作系统证书存储中,以供后续连接使用。FortiGate和FortiClient EMS之间同步endpoint信息。当终端在FortiClient EMS上断开连接或注销时,该终端的证书将从证书存储中移除,并在FortiClient EMS上被撤销。终端重新连接FortiClient EMS时,重新获取证书。

  缺省情况下,在访问代理上启用客户端证书身份验证,因此当FortiGate接收到HTTPS请求时,FortiGate WAD进程挑战客户端以其证书来识别自己。的FortiGate会基于特定的可能性做出决定。

  如果客户端响应正确的证书,客户端UID和证书SN可以从:

  ● 如果客户端UID和证书SN与FortiGate上的记录相匹配,则允许客户端继续进行ZTNA代理规则处理。

  ● 如果客户端UID和证书SN与FortiGate上的记录不匹配,将阻止客户端进行ZTNA代理规则的进一步处理。

  如果客户端取消并返回一个空的客户端证书,当你可以empty-cert-action接受时,允许客户端继续进行ZTNA代理规则处理。如果empty-cert-action to block, FortiGate将阻止客户端进一步进行ZTNA代理规则处理。

  答案:A

  答案:B

  现在你已经了解了设备身份、FortiClient、FortiClient EMS和FortiGate之间的信任以及基于证书的身份验证。接下来,你将了解不同的ZTNA配置设置。

  通过展示理解ZTNA配置设置的能力,你将能够实现你的环境所需的ZTNA配置。

  FortiGate HTTPS访问代理作为HTTP服务器的反向代理。当客户端连接到由受保护的服务器托管的网页时,地址解析为FortiGate访问代理VIP(192.186.2.86:8443),如上图所示。FortiGate代理连接并采取步骤验证设备。它会在浏览器上提示用户提供端点证书,并根据从FortiClient EMS同步的ZTNA端点记录进行验证。

  这个例子展示了基于ZTNA标签允许或拒绝流量的访问控制。当FortiClient终端被标记为低风险时,FortiGate允许流量通过,当终端被标记为恶意文件检测时,FortiGate拒绝流量通过。此设置假设已经成功连接了FortiGate EMS fabric连接器,并且配置了标记规则“Malicious-File-Detected”(你在前一节中已经了解到这一点)。

  ZTNA也支持IPv6,你可以配置以下IPv6场景:

  ● IPv6客户端——IPv6访问代理——IPv6服务器

  ● IPv6客户端——IPv6访问代理——IPv4服务器

  ● IPv4客户端——IPv4访问代理——IPv6服务器 

  当你可以将FortiClient EMS作为fabric连接器,并将ZTNA标签与FortiGate同步后,你必须创建ZTNA服务器或访问代理。接入代理VIP是客户端通过HTTPS连接到的FortiGate ZTNA网关。服务和服务器映射关系定义了HTTPS请求的虚拟主机匹配规则和实服务器映射关系。

  上图中的示例展示了访问代理VIP和实服务器IP。IP地址100.64.1.250和端口9443是客户端连接的访问代理VIP,该请求将客户端重定向到端口443上的实服务器IP地址10.0.1.250。在“服务/服务器映射”窗口中,你可以选择“任意主机”,任何解析为访问代理VIP的请求都会映射给实服务器。例如,如果两者www.examplel1.com和www.example2.com解析为VIP,然后两个请求都映射到真实服务器。指定选项允许你配置请求必须匹配的主机的名称或IP地址。例如,如果你输入www.example2.com作为主机,然后只请求到www.example2.com匹配。可以通过子字符串、通配符或正则表达式进行匹配。例如,如果将虚拟主机指定为www.example2.com,路径子字符串是map1,如上图所示,然后是www.example2/map1匹配。

  Servers表用于配置实服务器的IP地址、端口号和状态。你可以配置多个服务器和服务器映射。

  ZTNA规则是一种用于强制访问控制的代理策略。你可以定义ZTNA标记或标记组来强制零信任基于角色的访问。要创建规则,请输入规则名称,并添加允许或阻止访问的IP地址和ZTNA标记或标记组。你还选择ZTNA服务器作为目标。你还可以应用安全配置文件来保护此通信。

  这上图展示了两个规则作为例子。一个被配置为允许标记为RemoteEndpoints的端点,另一个被配置为阻止标记为Malicious-File-Detected的端点。

  防火墙策略匹配并将客户端请求重定向到接入代理VIP。可以定义VIP可以访问的源接口和地址。缺省情况下,目的端为任意接口,因此配置了全量ZTNA策略后,策略列表按照顺序排列。上图的示例被配置为允许port1上所有IP地址的所有服务作为进入接口,并将ZTNAwebserver作为目的地。

  注意,流量的UTM处理发生在ZTNA规则处。

  访问代理支持添加认证功能,需要在FortiGate CLI下配置认证方案和认证规则。你可以使用身份验证方案和身份验证规则对基于代理的策略进行身份验证,类似于为显式和透明代理配置身份验证。

  认证方案定义了应用的认证方式。ZTNA支持基本的HTTP和SAML方法。每个方法都有额外的设置来定义数据源。例如,对于基本的HTTP认证,用户数据库可以引用LDAP服务器、RADIUS服务器、本地数据库或其他支持的对用户进行认证的认证服务器。

  身份验证规则定义了需要身份验证的代理源和目标,以及应用哪种身份验证方案。ZTNA支持active认证方式。主动身份验证方法引用一种方案,其中主动提示用户进行身份验证,就像基本身份验证一样。在身份验证规则触发该方法对用户进行身份验证后,成功的身份验证将返回用户所属的组。

  在ZTNA规则和代理策略中,可以定义一个用户或用户组作为允许的源。代理策略只允许匹配该用户或组的用户通过。上图展示了ZTNA规则的例子,在FortiGate中添加认证方案和认证规则后,用户组ZTNAaccess_group被加入到认证配置中。

  你还可以应用SAML身份验证方法对客户机进行身份验证。FortiGate充当SAML SP, SAML验证器充当IdP。除了使用客户端证书验证用户和设备的身份之外,还根据用户证书授权用户在授予对受保护资源的访问权之前建立一个信任上下文。具体配置方法请参见《FortiOS 7.0.1管理指南》。

  在上图展示的示例中,配置了一个TCP转发访问代理(TFAP)来演示一个HTTPS反向代理,它将TCP流量转发到指定的资源。接入代理通过HTTPS对客户端和FortiGate之间的TCP流量进行隧道传输,并将TCP流量转发给受保护的资源。在授予对受保护源的访问权之前,它会验证用户身份、设备身份和信任上下文。

  RDP访问配置为Winserver, SSH访问FortiAnalyzer。上图中显示的拓扑使用的IP地址为10.0.3.11,对外访问代理VIP使用的端口为8443。

  你还可以为TCP转发访问代理添加身份验证和安全姿态检查,这是你在本课早些时候学习的。

  上图显示的拓扑使用的IP地址为10.0.3.11,对外访问代理VIP使用的端口为8443。目前,FortiOS 7.0.0不完全支持在GUI上完成的TCP转发访问代理配置。因此,必须在CLI下配置接入代理。创建访问代理VIP后,你可以在GUI上查看它,但不能在GUI上对其进行更改。

  本演示如何通过CLI配置访问代理VIP和访问代理服务器的映射关系。RDP、SSH端口和实服务器IP地址已经映射。映射端口将映射限制为指定的端口或端口范围。如果未指定映射端口,则匹配任何端口。映射的地址必须是地址对象。因此,你可以使用已经存在的FortiAnalyzer和Winserver地址。配置代理VIP前必须先创建地址对象。

  接下来,为访问控制配置ZTNA规则,并为完全ZTNA功能配置防火墙策略。上图展示了示例拓扑的ZTNA规则和防火墙策略。

  用户在连接前必须在FortiClient上创建ZTNA规则。目前,ZTNA连接规则配置FortiClient EMS在7.0.0中不可用。必须在FortiClient上手动配置才能连接。

  注意,目标主机是服务器的真实内部IP地址和端口。RDP和SSH连接通过网关安全代理。

  你也可以配置不加密的ZTNA TCP转发接入代理。连接仍然以TLS握手开始。客户端使用HTTP 101响应来切换协议,并移除HTTPS栈。客户端和服务器之间的进一步端到端通信被封装在指定的TCP端口中,但不被访问代理加密。这通过减少加密已经安全的底层协议(如RDP、SSH或FTPS)的开销来提高性能。对于不安全的端到端协议,用户仍应启用加密选项。在实际应用程序中,应该对Telnet等不安全协议使用加密选项。

  当你在FortiGate上启用ZTNA时,防火墙策略提供了两个选项:

  ● 完全ZTNA

  ● IP/MAC过滤

  ZTNA IP/MAC过滤模式增强了终端物理位置在企业网络中的安全性,而全ZTNA模式专注于远程用户的访问。ZTNA IP/MAC过滤模式使用ZTNA标签来控制fabric上的设备与内部web服务器或internet之间的访问。这种方式不需要使用访问代理,只使用ZTNA标签进行访问控制。

  上图的防火墙策略示例使用现有的恶意文件检测标签来控制访问。当FortiClient端点被标记为“恶意文件检测”时,流量被拒绝访问internet。

  通过配置ZTNA和SSH接入代理,可以提供到服务器的无缝SSH连接。

  使用SSH接入代理代替TCP转发接入代理的优点包括:

  ● 通过用户身份和设备身份检查建立设备信任上下文

  ● 通过SSH相关配置文件对流量应用SSH深度检测

  ● 执行服务器的可选SSH主机密钥验证

  ● 使用一次性用户认证方式对ZTNA SSH接入代理连接和SSH进行认证服务器连接

  要充当SSH服务器的反向代理,FortiGate必须执行SSH主机密钥验证来验证SSH服务器的身份。FortiGate通过将SSH服务器的公钥存储在其SSH主机密钥配置中来实现这一点。当端点连接到SSH服务器时,如果公钥与服务器使用的公钥相匹配,那么连接就建立了。如果没有匹配,则连接失败。

  SSH访问代理允许在客户机和访问代理之间进行用户身份验证,同时使用相同的用户凭据对SSH服务器进行身份验证。上图的步骤解释了它是如何工作的。

  答案:A

  答案:B

  现在你已经了解了不同的ZTNA配置设置。接下来,你将比较ZTNA与SSL和IPsec VPN。

  通过展示你理解ZTNA远程访问演变的能力,你将能够从VPN迁移到ZTNA HTTPS访问代理。

  SSL VPN和ZTNA接入与IPsec VPN有什么不同?

  SSL和TLS通常用于对internet上的电子商务和网上银行(HTTP)进行封装和保护。SSL vpn和ZTNA使用类似的技术,也支持非http协议封装。SSL在网络堆栈中位于比IP更高的位置,因此,SSL VPN报头通常需要更多的位(更多的带宽)。相比之下,IPsec使用了一些不同的方法来提供机密性和完整性。IPSec使用的主要协议是ESP,它对IPSec隧道内的UDP、RDP、HTTP或其他协议进行封装和加密。

  IPSec也是一种行业标准协议,可以与多个供应商合作,并支持对等设备和网关——而不仅仅是像SSL VPN或ZTNA那样只使用FortiGate的用户客户端。

  客户端软件也不同。在SSL VPN或ZTNA中,你的web浏览器可能是你唯一需要的客户端软件。你可以通过FortiGate SSL VPN的portal (HTTPS形式的web界面)登录。你也可以选择安装FortiClient或将FortiGate配置为SSL VPN客户端。如果使用IPsec VPN,则需要安装专用的客户端软件或使用本地网关(如桌面型FortiGate)连接远端网关。你可能还需要在VPN对等体之间配置防火墙,以允许IPsec协议。

  登录后,SSL VPN将你的计算机连接到你的私有网络。不需要用户配置设置,并且防火墙通常配置为允许传出HTTP,因此技术支持呼叫不太可能。简单使得ZTNA和SSL VPN非常适合非技术用户,或者从公共计算机(如公共图书馆和互联网咖啡店)连接的用户。ZTNA更进一步,使管理员更容易执行设备合规性检查和配置。ZTNA还为访问控制提供了额外的身份验证机制,无需终端用户进行任何交互。

  通常情况下,当隧道需要持续连通,且需要与多种设备互操作时,首选IPsec VPN;而当人们出差,需要与办公室连接时,首选SSL VPN。

  你可以使用ZTNA替代基于VPN的远程办公解决方案。上图的示例显示,你可以通过HTTPS访问代理将使用SSL VPN隧道或web门户模式访问ZTNA的远程办公配置迁移到ZTNA,并继续使用相同的认证服务器和组对远程用户进行认证。

  此外,通过与FortiClient EMS集成,你还可以确保FortiGate使用客户端证书进行设备识别,并在允许远程用户进入网站之前检查安全态势。这为谁可以使用基于角色的访问控制访问web资源提供了细粒度的控制。它还让用户只使用浏览器就可以透明地访问网站。你甚至可以为fabric上的设备配置ZTNA IP/MAC过滤模式,以便当用户在网络上时提供类似的访问控制。

  答案:A

  答案:A

  现在你可以通过ZTNA了解远程工作人员远程访问的演变,接下来,你将学习如何排除和调试ZTNA配置问题。

  通过展示排除和调试ZTNA问题的能力,你将能够在FortiGate和FortiClient EMS之间解决ZTNA问题。

  上图的表格显示了调试CLI命令,你可以使用这些命令在FortiGate上排除ZTNA故障。

  上图是CLI命令表的延续。

  请注意,WAD守护进程处理代理相关的处理,而FortiClient NAC守护进程(fcnacd)处理FortiGate到FortiClient EMS之间的连接。

  在上图中,diagnose endpoing fctems test-connectivity命令显示FortiGate和FortiClient EMS之间的连接是成功的。execute fctems verify命令显示FortiGate验证服务器证书,diagnose test application fcnacd 2转储FortiClient EMS连通性信息。

  如果fcnacd没有上报正确的状态信息,可以通过CLI命令执行实时调试。

  # diagnose debug application fcnacd -1

  # diagnose debug enable

  在上图中,diagnose endpoint record list <IP address>命令显示了网络、注册、客户端证书和设备信息。它还显示了相对于FortiGate的漏洞状态和位置。此命令不带IP过滤器,显示连接到FortiClient EMS并与FortiGate同步的所有终端记录。

  使用diagnose endpoint wad-comm find-by uid或ip-vdom pair命令用于查询包含ZTNA标签的端点信息。上图的CLI输出显示,特定端点有3个ZTNA标签,分别名为ZT_OS_WIN、all_registered_clients和Medium。

  diagnose endpoing wad dev query-by uid或ipv4命令从FortiGate WAD守护进程提供终端点信息。WAD守护进程处理与代理(访问代理)相关的处理,你在前面已经了解了这一点。

  diagnose firewall dynamic list命令用来查看从EMS学习到的所有动态ZTNA IP地址和MAC地址。

  使用上图显示的diagnose test application fcnacd 7或8命令检查终端ZTNA和路由缓存。上图的WAD命令用于通过实时调试对WAD进行故障排除,以了解代理如何处理客户端请求。

  请注意,你应该总是在使用调试后通过运行diagnose debug reset命令重置它们。

  UTM日志增加ZTNA日志子类型,与ZTNA相关的流量增加流量日志ID。在子类型中有6个事件生成日志:

  1. 收到空的客户端证书

  2. 收到无法验证的客户端证书

  3. API网关无法匹配

  4. 实服务器不通

  5. ZTNA规则(代理策略)无法匹配

  6. SNI虚拟主机不匹配HTTP主机报头

  当策略中允许的流量开启日志记录功能时,与ZTNA相关的流量将产生日志记录。上图展示了FortiGate连接到ZTNA访问代理时生成的UTM和流量日志。客户端没有向FortiGate发送客户端证书进行验证。FortiGate禁止并阻止空证书。

  上图展示了FortiGate连接到ZTNA访问代理时生成的UTM和流量日志。客户端向FortiGate发送客户端证书,证书验证失败。

  上图展示了FortiGate连接到ZTNA访问代理时生成的UTM和流量日志。客户端试图连接到一个不匹配任何虚拟主机的API网关,或者无法到达实服务器。

  上图展示了当FortiGate连接到ZTNA访问代理但无法匹配ZTNA规则(代理策略)时产生的UTM和流量日志。例如,分配给终端的ZTNA标签不匹配ZTNA规则。

  上图显示了当FortiGate连接到ZTNA访问代理,并且HTTPS SNI虚拟主机与HTTP主机头不匹配时生成的UTM和流量日志。服务器名称指示(SNI)或主机名必须与URL请求中的主机头字段匹配。

  答案:B

  答案:A

  恭喜你!你已经完成了这一课。现在,你将回顾你在本课中涉及的目标。

  通过掌握本课涉及的目标,你了解了ZTNA关键概念和如何配置不同的配置设置。你还了解了远程工作人员远程访问的发展,以及如何排除和调试ZTNA问题。


以上是关于教程篇(7.0) 06. 零信任网络访问ZTNA ❀ FortiClient EMS ❀ Fortinet 网络安全专家 NSE 5的主要内容,如果未能解决你的问题,请参考以下文章

教程篇(7.0) 06. 零信任网络访问ZTNA ❀ FortiClient EMS ❀ Fortinet 网络安全专家 NSE 5

网络安全 — 零信任网络访问(ZTNA)

Check Point:企业部署零信任网络(ZTNA)的核心要素

高级篇 / ZTNA(7.0) ❀ 06. 域用户自动安装 FortiClient (下) ❀ FortiGate 防火墙

高级篇 / ZTNA(7.0) ❀ 06. 域用户自动安装 FortiClient (下) ❀ FortiGate 防火墙

高级篇 / ZTNA(7.0) ❀ 06. 域用户自动安装 FortiClient (下) ❀ FortiGate 防火墙