教程篇(7.4) 07. 安全配置文件 & 网络安全支持工程师 ❀ FORTINET认证解决方案专家

  在本课中,你将学习如何对一些安全配置文件功能进行故障排除。

 完成本课程后,你应该能够实现上图显示的目标。

  通过展示理解安全配置文件的能力,你将能够了解如何对FortiGuard和Web过滤问题进行故障排除。你还将学习如何修复证书警告问题,并监控IPS和反病毒事件。

 在本节中,你将了解FortiGuard和FortiGate如何沟通。你还将学习故障排除命令。

 你可以在FortiGate GUI上检查FortiGuard许可证的状态以及与FortiGuard的通信。你还可以检查每个FortiGuard服务的本地安装数据库的版本。

 要了解如何对FortiGuard问题进行故障排除,你必须了解FortiGuard通信的工作原理。FortiGate和FortiGuard之间用于web过滤和反垃圾邮件的通信与反病毒和IPS的通信不同。首先,你将了解FortiGuard web过滤和反垃圾邮件的工作原理:

  1. FortiGate联系DNS服务器以解析FortiGuard服务名称。

  2. FortiGate获取服务器的IP地址列表,它可以联系这些服务器来验证FortiGuard许可证。

  3. FortiGate联系其中一个服务器来检查许可证,并请求服务器列表以提交web过滤和反垃圾邮件评级查询。

  4. FortiGate获取服务器列表。

  5. FortiGate开始向列表中的服务器之一发送评级查询。

  6. 如果它联系的服务器在2秒内没有回复,FortiGate会联系列表中的下一台服务器。

  FortiGuard服务名称取决于FortiGate配置:

  ● service.fortiguard.net:FortiGate被配置为使用UDP并与全球服务器通信。

  ● securewf. fortiguard.net:FortiGate配置为使用HTTPS并与全球服务器通信。

  ● usservice. fortiguard.net:FortiGate被配置为使用UDP并与仅位于美国的服务器通信。

  ● ussecurewf.fortiguard.net:  FortiGate被配置为使用HTTPS并与仅位于美国的服务器通信。

 当FortiGate与FortiGuard服务器建立连接时,验证服务器作为正版FortiGuard服务器的真实性至关重要。因此,FortiGuard服务器提供了上图显示的安全步骤。

  FortiGuard服务器使用在线证书状态协议(OCSP)装订检查。这涉及将服务器证书的时间戳OCSP状态从OCSP服务器附加到TLS响应中。

  这个过程保证了FortiGate可以在TLS握手期间有效地验证FortiGuard服务器证书。

 现在,你将看看反病毒和IPS是如何工作的。FortiGuard通信如何用于反病毒和IPS取决于所使用的方法:提取连接或持久连接。请注意,持久连接方法仅适用于2U及以上的FortiGate型号,并在FortiGate GUl上显示为立即下载更新。

  提取方法的步骤是:

  1. FortiGate联系DNS服务器以解析域名update.fortiguard.net。

  2. FortiGate获取它可以联系的服务器IP地址列表。

  3. FortiGate定期连接到其中一台服务器,以检查挂起的更新。

  4. 如果有更新,FortiGate会下载它。

  提取方法中使用的前两个步骤也用于持久连接方法:FortiGate从DNS服务器获取IP地址列表,用于域名update.fortiguard.net。之后,FortiGate与FortiGuard形成HTTPS连接。一旦建立此连接,FortiGuard将使用此连接在每次有新更新时发送通知。然后,FortiGate继续与FortiGuard形成单独的安全连接来下载更新。

 上图显示的命令显示用于web过滤和反垃圾邮件查询的服务器列表。对于每个IP地址,该表显示:

  ● 往返延迟

  ● 服务器时区

  ● 最近查询和连续查询无应答的次数。

  ● 无应答的查询的历史总数——这些值在设备重新启动时重置。

 FortiGate使用以下方法选择发送评级的的服务器:

  ● FortiGate最初使用服务器时区和FortiGate系统时区之间的增量,乘以10。

   这是服务器的初始权重。为了降低使用远程服务器的可能性,权重不允许低于初始权重。

  ● 权重随着每个数据包的丢失而增加。

  ● 如果没有丢失数据包,权重会随着时间的推移而减少。

  ● FortiGate使用权重最低的服务器作为评级查询的服务器。如果两台或两台以上服务器的权重相同,FortiGate使用往返时间(RTT)最低的服务器。

 在许多情况下,ISP会导致与FortiGuard相关的问题。一些ISP阻止非DNS或端口53上包含大数据包的流量。在这些情况下,解决方案是将FortiGuard流量从端口53切换到端口8888。

  其他ISP(或上游防火墙)阻止到端口8888的流量。在这些情况下,解决方案是使用端口53。

  当启用任何广播时,默认情况下,协议是HTTPS,端口是443。

  在少数情况下,ISP会根据源端口阻止流量。将FortiGuard的源端口范围更改为上图显示的范围通常可以解决问题。

  diagnose debug rating命令的输出在一些服务器名称旁边显示标识:

  ● I = 最初联系的服务器以验证许可证并获取服务器列表(通常只有一台服务器有此标志)

  ● D = FortiGuard解析service.fortiguard.net时得到的IP地址(如果管理员没有覆盖FortiGuard配置中的FQDN或IP地址,通常有两个或三个服务器有此标志)

  ● S = FortiGate从FortiManager获得的IP地址

  ● Т = 服务器没有回复FortiGate查询

  ● F = 服务器宕机

 对于反病毒和IPS,FortiGate和FortiGuard之间的通信频率要低得多。在web过滤和反垃圾邮件的情况下,FortiGate每次需要对网站或电子邮件进行评分时都会联系FortiGuard(如果信息不在FortiGate缓存中)。

  在反病毒和IPS的拉取方法的情况下,默认情况下,FortiGate以根据FortiGate型号和有效订阅百分比计算的间隔联系FortiGuard。检查和下载任何新版本的反病毒或IPS数据库和引擎的更新间隔不到1小时。这是使用端口TCP 443完成的。 

  上图显示了如果FortiGate必须通过Web代理连接,你可以使用的命令。通常,通过网络代理连接的客户端不会联系DNS服务器来解析名称,因为是网络代理这样做。通过网络代理连接时,FortiGate可以在没有DNS解析的情况下访问FortiGuard。

  反病毒和IPS数据库都可以自动或手动更新。自动更新下载自上次更新以来更改的数据库部分。如果有新版本可用,手动更新会下载整个数据库。

  有时,你可以通过执行手动更新来修复FortiGuard问题,这迫使FortiGuard下载并重新安装整个数据库。例如,如果反病毒数据库已损坏,手动更新可能会解决问题。

  diagnose autoupdate status命令提供了FortiGate上FortiGuard配置的摘要。

  上图显示的命令列出了所有已安装的FortiGuard数据库和引擎。信息包括版本、合同到期日期、更新时间以及上次更新期间发生的事情。

 如果更新反病毒或IPS数据库时出现问题,或者在验证许可证时出现问题,你可以使用FortiGuard实时调试:

  diagnose debug application update -1

  diagnose debug enable

  启用调试后,你可以使用execute update-now命令强制手动更新。

  请记住,FortiGuard流量总是来自管理VDOM。因此,管理VDOM(默认为root)必须具有互联网接入。

  从管理VDOM正确访问DNS也很重要。FortiGate必须能够解析以下名称:

  ● update.fortiguard.net

  ● service.fortiguard.net

  此外,请记住,尽管更新所有服务器上的合同通常需要1到2小时,但在某些情况下,可能需要长达24小时。因此,如果你刚刚更改或续订了FortiGuard合同,并且你在FortiGate上没有看到更改,你可能需要再等一会儿,以便给FortiGuard时间同步所有服务器上的信息。

 在本节中,你将了解FortiGate如何处理数据包。

  在接下来的图片中,我们将分析FortiGate如何处理数据包,从到达到离开。

  这个过程有四个阶段:

  ● 进入

  ● 路由和防火墙策略

  ● 保护配置文件检查

  ● 离开

  在进入阶段:

  ● 数据包到达FortiGate。

  ● 你可以设置传入带宽的限制(带宽参数)。如果流量超过该限制,FortiGate会丢弃数据包。

  ● FortiGate检查DoS策略中的阈值。

  ● 下一步是反向路径转发和IP报头完整性检查。

  ● 如果流量在FortiGate终止(例如,管理、Web代理和DNS流量),则处理请求功能的特定守护进程会处理数据包。

  ● 如果流量没有在FortiGate终止,它将进入第二阶段,即路由和防火墙策略。

  在路由和防火墙策略阶段:

  ● FortiGate(如果需要)应用目标NAT。如果没有通往目的地的路由,FortiGate会丢弃数据包。

  ● 同样,如果防火墙策略拒绝该数据包,那么FortiGate也不允许它。

  ● 如果允许数据包,FortiGate会检查该策略是否需要身份验证。

  ● 最后,FortiGate继续识别流量,然后由任何所需的会话助手进行检查。

 在保护配置文件检查阶段:

  ● FortiGate执行统一威胁管理(UTM)检查。

  ● 如果流量被加密并使用完整SSL检查,FortiGate将继续解密流量。

  ● 接下来,FortiGate按以下顺序应用检查配置文件:IPS、应用程序控制、VolP、DLP、反垃圾邮件、web过滤和反病毒。

  在离开阶段:

  ● FortiGate应用流量整形和源NAT。

  ● 最后,如果数据包必须通过IPsec VPN路由,FortiGate会在它离开之前对其进行加密。

  在本节中,你将学习web过滤的故障排除命令。

  与其他UTM功能类似,web过滤的最佳故障排除工具之一是FortiGate日志。FortiGate可以在每次网站被阻止时生成日志。日志列出了URL、类别、已采取的操作等。

  另一个可用于对web过滤进行故障排除的工具是web过滤器实时调试。你可以使用上图显示的命令。

  上图显示了当要分类的URL不在FortiGuard缓存中时,实时调试输出的示例。输出显示URL、类别、源、目标IP地址和服务。

  要列出FortiGuard web过滤缓存的内容,请使用diagnose webfilter fortiguard cache dump命令。对于每个URL,输出按域名和IP地址列出其评级。域名评级是从左到右的第一个数字的前两位数字,它是十六进制表示的类别ID。IP地址的评级是第二个数字的前两位数字——它也是十六进制表示的类别ID。

  get webfilter categories命令列出所有类别及其各自的ID号。在此列表中,ID以十进制表示。因此,如果你想在缓存中找到URL的类别名称,请使用第一个命令列出缓存,然后将ID号从十六进制转换为十进制。然后,使用第二个命令找到该ID号的类别名称。

  www.fortiguard.com网站包括web过滤服务。此服务旨在帮助你识别URL的类别和评级。

  使用FortiGuard Web过滤服务提供的信息,你可以深入了解URL的内容和声誉。

  此服务有助于分析web过滤配置文件中基于类别的过滤器是否按预期允许或阻止特定URL。

 以下是一些对web过滤进行故障排除的提示:

  ● 首先了解细节:

    ● 哪些网址存在问题?

    ● 是随机的吗?

    ● 所有用户都会这样吗?

  ● 检查日志。

  ● 问题是由用户组配置不正确引起的吗?用户访问权限正确吗?

  ● 在重现问题的同时运行实时调试。

  其他提示:

  ● 检查web过滤是否在全局范围内被禁用。

  ● 如果用户遇到间歇性问题:

    ● 检查与FortiGuard的通信是否稳定(检查网络过滤统计信息)。

    ● 还要检查设备是否进入保护模式。

  在本节中,你将了解SSL检测模式以及如何处理证书警告。

  有两种SSL检查模式:SSL证书检查和完整SSL检查。当使用SSL证书检查时,FortiGate不会解密流量。它只检查服务器数字证书和服务器名称指示(SNI)字段,这些字段在加密之前是互换的。

  首先,FortiGate试图从SNI字段获取URL。SNI字段是一个TLS扩展,包含用户正在连接的完整URL。大多数现代浏览器都支持它。

  如果SNI字段不存在(因为Web客户端可能不支持它),FortiGate继续检查服务器数字证书。

  通过全整SSL检查,FortiGate解密(并重新加密)SSL流量。

  在正常情况下(如果没有完整SSL检查),无法检查加密流量,因为防火墙没有解密数据所需的密钥。

  为了进行完整SSL检查,FortiGate必须位于用户浏览器和网站之间的通信中间。当浏览器连接到网站时,网络服务器会发送其证书,其中包含其公钥。

  FortiGate拦截Web服务器证书并生成一个新的证书。新证书由安装在FortiGate上的证书颁发机构(CA)颁发,FortiGate不是一个众所周知的公共CA。FortiGate还生成一对新的公钥和私钥。

  当你启用SSL检查时,每次用户连接到HTTPS站点时,浏览器都会显示证书警告。这是因为浏览器收到的证书现在由FortiGate签名,FortiGate是浏览器不信任的CA。

  你可以通过以下两种方式之一修复此警告:

  ● 下载用于SSL代理检查的默认FortiGate证书,并将其安装在所有浏览器上。

  ● 从私有CA生成一个新的SSL代理证书。在所有浏览器上安装私有CA证书。

  这不是FortiGate的限制,而是数字证书设计工作方式的结果。

  为流量更换证书可能会导致问题。一些软件和服务器对允许使用的证书有特定的限制。

  HSTS和PKP是安全功能,旨在通过确保访问服务器资源时显示的任何证书都由特定的CA签名来检测中间人SSL攻击。

  如果浏览器检测到任何其他CA,它只是拒绝继续SSL握手,并阻止访问网站。

  这些问题的可用解决方案是有限的。一种选择是绕过该流量的SSL检查。另一种选择是改用SSL证书检查。

 在本节中,你将学习如何验证反病毒状态和检测。

  上图显示了反病毒检查的执行顺序。首先,设备执行病毒扫描,然后执行灰色软件扫描,最后进行机器学习检测。

  最新的FortiOS版本没有之前的启发式设置。相反,他们有一个机器学习检测设置,这是一个基于Al的恶意软件检测功能。

  对反病毒问题进行故障排除的最佳工具之一是FortiGate日志。这是FortiGate检测病毒时生成的日志样本。你可以查看文件名称、时间和病毒名称。

 如果FortiGate在工作站上检测到病毒,你应该怎么做?同样,第一步是获取具体信息。哪个反病毒软件检测到病毒?病毒叫什么名字?它是如何进入网络的?例如,如果病毒来自CD或U盘,受感染的文件不会通过FortiGate。

 测试FortiGate杀毒软件是否正确检查了用户流量。在用户工作站上,导航到eicar.org并尝试下载EICAR示例文件。

  如果你有病毒样本,请将其提交给FortiGuard,并检查它是否存在于任何FortiGate病毒数据库中。如果是,请检查它所在的反病毒数据库的名称。你的FortiGate安装了那个数据库吗?

  FortiGate有两个反病毒数据库:扩展和极端。扩展数据库是默认的。并非所有FortiGate型号都支持极端数据库。

 记住反病毒检查的限制:

  ● SSL流量需要SSL深度检查。 

  ● 存档文件,如zip文件,被检查到某些限制,例如嵌套存档,这对CPU有影响。

  ● 受密码保护的档案无法扫描。

  NGFW GUI下的安全配置文件 > 学习模式中包含Scanunit支持。

  学习模式通过使用扫描单元强大的文件检测来增强文件检测能力。

  学习模式的工作原理是允许所有流量,同时记录所有内容以收集安全信息。它使用收集的信息生成学习报告,这有助于更准确地检测恶意文件。

 在本节中,你将了解IPS故障排除。

  两种重要类型的守护进程处理与IPS相关的任务:

  ● ipsengine是处理所有检查和检测任务的主要守护进程类型。

  ● ipshelper处理操作,其结果可以由不同的ipsengine守护进程共享。ipshelper还监控影响IPS的配置更改,因此它也可以启动或生成ipsengine的其他实例。因此,即使你没有在FortiGate上配置IPS,看到ipshelper运行也是正常的。

  在某些FortiGate型号上,看到ipsengine守护进程的多个实例正在运行是正常的。

  当IPS套接字缓冲区没有足够的可用内存用于新数据包时,IPS会进入故障打开模式。当FortiGate处于保护模式时,IPS也会进入失败打开模式。在该状态下会发生什么取决于IPS配置。如果启用了fail-open设置,一些新数据包(取决于系统负载)可能会未经检查就通过。如果它被禁用,新数据包可能会被丢弃。

  IPS失败打开事件在崩溃日志中生成日志。日志指示新数据包是否被丢弃或通过。

  IPS失败打开进入和退出事件也会生成事件日志。

 频繁的IPS失败打开事件通常表明IPS无法跟上流量需求。因此,尝试识别模式。最近流量增加了吗?吞吐量需求增加了吗?

  调整和优化你的IPS配置:创建特定于所检查流量类型的IPS配置文件,并在不需要的策略上禁用IPS配置文件。

 在每个防火墙策略中可配置的协议选项设置可能会影响FortiGate的性能,因为IPS引擎需要识别未明确设置特定协议到端口映射的协议。

  当策略设置为基于代理的检查时,协议选项中的设置指示FortiGate将指定的目标端口定向到各自的代理进程,除非为启用的协议设置了Any。

  在这种情况下,FortiGate必须将流量发送到IPS引擎,由CPU处理,以便在将协议定向到代理进程之前识别协议。这很重要,因为它可能会影响基于代理和基于流的流量的IPS失败打开事件期间的流量处理方式。

  协议端口映射仅适用于基于代理的检查。基于流量的检查检查所有端口,无论协议端口映射配置如何。

 IPS进程的CPU使用率短暂激增可能是由防火墙策略或配置文件更改引起的。这些尖峰通常是正常的。当FortiGate有数百个策略和配置文件或许多VDOM时,可能会发生尖峰。IPS引擎持续的高CPU使用率是不正常的,你应该调查一下。

  新引入的功能使具有八个或更多vCPU的FortiGate虚拟机的配置能够使用完整的扩展数据库。纤薄扩展数据库是完整扩展数据库的更紧凑的变体,包含关键的活动IPS签名,并为优先考虑性能的客户量身定制。

  如果IPS导致了高CPU使用率问题,你可以使用diagnose test application ipsmonitor命令的选项5来隔离可能出现问题的位置。选项5启用IPS旁路模式。

  在此模式下,IPS仍在运行,但它没有检查流量。如果之后CPU使用率下降,这通常表明被检查的流量对于该特定的FortiGate型号来说太高了。

  如果你在启用IPS旁路模式后CPU使用率仍然很高,这通常表明IPS引擎存在问题,您必须向Fortinet Support报告。

  如果启用了IPS旁路模式,请在故障排除后使用选项5关闭IPS旁路模式。

  另一个需要记住的建议是,如果你需要重新启动IPS,请不要使用 diagnosesys kill 命令。相反,请使用选项99,如上图所示。这保证了所有与IPS相关的进程都将正确重新启动。

  如果IPS正在生成误报,请首先确定哪个签名正在生成它们。你可以使用IP豁免作为解决方案。此外,你可以向FortiGuard团队提供嗅探器样本和匹配日志,以进行进一步调查。

 假阴性更难发现和排除故障。检查以下内容:

  ● 流量命中了正确的策略或IPS配置文件(如有必要,请使用嗅探器和调试流)。

  ● CPU和内存使用正常。

  ● IPS引擎没有崩溃。

  ● IPS配置正确。

  同样,在你验证了所有这些因素后,您可以收集嗅探器样本,并与应用程序流量的详细信息一起,向Fortinet IPS团队提供所有信息以供调查。

  上图显示了你在本课中涵盖的目标。

  通过掌握本课中涵盖的目标,你学会了如何对安全配置文件的一些功能进行故障排除。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值