监控和故障排除安全策略
监控提供有意义的数据的实时展示,代表网络上的接入活动状态。通过这种洞察,您可以轻松解释和影响操作条件。故障排除提供了上下文指导,帮助解决网络上的接入问题。然后,您可以解决用户关注的问题,及时提供解决方案。
了解安全告警
当因违反策略而丢弃数据包时,将触发告警。当数据包与拒绝或拒绝策略匹配时,将发生策略违规。当系统监控以下任一经过审计的事件时,将生成策略违规告警:
源网络标识符在指定时间内违反策略的次数
指定时间内目标网络标识符违反策略的次数
指定期限内应用程序违反策略的次数
指定期限内的策略规则或规则违规组
与这四个事件对应的告警有四种类型这些告警基于源 IP、目标 IP、应用程序和策略。
当数据包遇到拒绝或拒绝策略时,所有启用的告警类型的策略违规计数器都会增加。当任何计数器在指定时间内达到指定的阈值时,将生成告警。在指定时间段后,策略违规计数器将重置并重新用于启动另一个计数周期。
要查看告警信息,请运行 show security alarms
命令。系统重新启动时,违规计数和告警不会持续。重新启动后,违规计数将重置为零,并将告警从告警队列中清除。
采取适当措施后,即可清除告警。告警一直保留在队列中,直到您清除(或重新启动设备)。要清除告警,请 clear security alarms
运行命令。清除告警后,后续一系列流策略违规可能会导致引发新的告警。
另请参阅
示例:生成安全警报以响应策略违规
此示例说明如何配置设备以在发生策略违规时生成系统告警。默认情况下,发生策略违规时不会发出告警。
要求
配置此功能之前,不需要除设备初始化之外的特殊配置。
概述
在此示例中,您将配置在:
应用程序大小为 10240 单元。
源 IP 违规在 20 秒内超过 1000。
目标 IP 违规在 10 秒内超过 1000。
策略匹配违规超过 100,大小为 100 单元。
配置
程序
CLI 快速配置
要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改详细信息,以便与网络配置匹配,将命令复制并粘贴到层级的 [edit]
CLI 中,然后从配置模式进入 commit
。
set security alarms potential-violation policy application size 10240 set security alarms potential-violation policy source-ip threshold 1000 duration 20 set security alarms potential-violation policy destination-ip threshold 1000 duration 10 set security alarms potential-violation policy policy-match threshold 100 size 100
逐步过程
以下示例要求您在配置层次结构中的各个级别上导航。有关如何操作的说明,请参阅 CLI 用户指南中的在配置模式下使用 CLI 编辑器。
要配置策略违规警报:
启用安全告警。
[edit] user@host# edit security alarms
指定在发生应用程序违规时应发出告警。
[edit security alarms potential-violation policy] user@host# set application size 10240
指定在发生源 IP 违规时应发出告警。
[edit security alarms potential-violation policy] user@host# set source-ip threshold 1000 duration 20
指定在发生目标 IP 冲突时应发出告警。
[edit security alarms potential-violation policy] user@host# set destination-ip threshold 1000 duration 10
指定在发生策略匹配违规时应发出警报。
[edit security alarms potential-violation policy] user@host# set policy-match threshold 100 size 100
结果
在配置模式下,输入命令以确认 show security alarms
您的配置。如果输出未显示预期的配置,请重复此示例中的配置说明,以便进行更正。
policy { source-ip { threshold 1000; duration 20; } destination-ip { threshold 1000; duration 10; } application { size 10240; } policy-match { threshold 100; size 100; } }
完成设备配置后,请从配置模式进入 commit
。
验证
要确认配置工作正常,请在操作模式下输入 show security alarms
命令。
匹配安全策略
命令 show security match-policies
允许您使用匹配标准排除流量问题:源端口、目标端口、源 IP 地址、目标 IP 地址和协议。例如,如果由于未配置适当的策略或匹配标准不正确而未通过流量,则 show security match-policies
可以通过命令脱机工作并确定问题的实际存在位置。它使用搜索引擎来识别问题,从而使您能够为流量使用适当的匹配策略。
选项 result-count
可指定要显示多少个策略。列表中第一个启用的策略是应用于所有匹配流量的策略。其下的其他策略则被第一个策略“影子”,匹配流量永远不会遇到。
命令 show security match-policies
仅适用于安全策略;不支持 IDP 策略。
示例 1:显示安全匹配策略
user@host> show security match-policies from-zone z1 to-zone z2 source-ip 10.10.10.1 destination-ip 192.0.2.1 source-port 1 destination-port 21 protocol tcp Policy: p1, action-type: permit, State: enabled, Index: 4 Sequence number: 1 From zone: z1, To zone: z2 Source addresses: a2: 203.0.113.1/25 a3: 10.10.10.1/32 Destination addresses: d2: 203.0.113.129/25 d3: 192.0.2.1/24 Application: junos-ftp IP protocol: tcp, ALG: ftp, Inactivity timeout: 1800 Source port range: [0-0] Destination port range: [21-21]
示例 2:使用结果计数选项
默认情况下,输出列表包含将应用于具有指定特征的流量的策略。要列出多个与标准匹配的策略,请使用 result-count
选项。列出的第一个策略始终是将应用于匹配流量的策略。 result-count
如果值从 2 到 16,则输出将包含与最高指定 result-count
标准匹配的所有策略。第一个策略后列出的所有策略都会被第一个策略“影子”,永远不会应用于匹配流量。
使用此选项可以测试新策略的定位,或者对未按预期应用于特定流量的策略进行故障排除。
在以下示例中,流量标准匹配两个策略。列出的 p1
第一个策略包含应用于流量的操作。策略 p15
受第一个策略的影子,因此,其操作不会应用于匹配流量。
user@host> show security match-policies from-zone zone-A to-zone zone-B source-ip 10.10.10.1 destination-ip 192.0.2.1 source-port 1004 destination-port 80 protocol tcp result-count 5 Policy: p1, action-type: permit, State: enabled, Index: 4 Sequence number: 1 From zone: zone-A, To zone: zone-B Source addresses: sa1: 10.10.0.0/16 Destination addresses: da5: 192.0.2.0/24 Application: any IP protocol: 1, ALG: 0, Inactivity timeout: 0 Source port range: [1000-1030] Destination port range: [80-80] Policy: p15, action-type: deny, State: enabled, Index: 18 Sequence number: 15 From zone: zone-A, To zone: zone-B Source addresses: sa11: 10.10.10.1/32 Destination addresses: da15: 192.0.2.5/24 Application: any IP protocol: 1, ALG: 0, Inactivity timeout: 0 Source port range: [1000-1030] Destination port range: [80-80]
另请参阅
跟踪策略命中次数
show security policies hit-count
使用命令根据收到的命中次数显示安全策略的利用率。您可以使用此功能来确定设备上正在使用哪些策略,以及使用这些策略的频率。根据您选择的命令选项,命中次数可以不按顺序列出,也可以按升序或降序排序,并且可以限制为高于或低于特定计数或一定范围内的命中次数。将显示与策略或命名区域关联的所有区域的数据。
检查 SRX 系列设备上的内存使用情况
您可以通过比较策略配置前后的内存值来隔离内存问题。
将动态分配流实体的内存,例如 SRX1400、SRX1500、SRX3400、SRX3600、SRX4100、SRX4200、SRX4600、SRX5400、SRX5600 和 SRX5800 设备上的策略、区域或地址(具体取决于安装中的 Junos OS 版本)。但是,某些做法可以帮助监控设备上的当前内存使用情况并优化参数,以更好地调整系统配置的大小,特别是在策略实施期间。
要检查内存使用情况:
show chassis routing-engine
使用命令检查整体路由引擎 (RE) 内存使用情况。此命令的以下输出显示 39% 的内存利用率:user@host#
show chassis routing-engine
Routing Engine status: Slot 0: Current state Master Election priority Master (default) DRAM 1024 MB Memory utilization 39 percent CPU utilization: User 0 percent Background 0 percent Kernel 2 percent Interrupt 0 percent Idle 97 percent Model RE-PPC-1200-A Start time 2011-07-09 19:19:49 PDT Uptime 37 days, 15 hours, 44 minutes, 13 seconds Last reboot reason 0x3:power cycle/failure watchdog Load averages: 1 minute 5 minute 15 minute 0.22 0.16 0.07show system processes extensive
使用命令获取有关路由引擎上运行的进程的信息。find nsd
使用命令中的show system processes extensive
选项可查看网络安全守护程序 (NSD) 的直接使用情况,其总内存使用量为 10 兆字节,CPU 利用率为 0%。user@host# show system processes extensive | find nsd 1182 root 1 96 0 10976K 5676K select 2:08 0.00% nsd 1191 root 4 4 0 8724K 3764K select 1:57 0.00% slbd 1169 root 1 96 0 8096K 3520K select 1:51 0.00% jsrpd 1200 root 1 4 0 0K 16K peer_s 1:10 0.00% peer proxy 1144 root 1 96 0 9616K 3528K select 1:08 0.00% lacpd 1138 root 1 96 0 6488K 2932K select 1:02 0.00% ppmd 1130 root 1 96 0 7204K 2208K select 1:02 0.00% craftd 1163 root 1 96 0 16928K 5188K select 0:58 0.00% cosd 1196 root 1 4 0 0K 16K peer_s 0:54 0.00% peer proxy 47 root 1 -16 0 0K 16K sdflus 0:54 0.00% softdepflush 1151 root 1 96 0 15516K 9580K select 0:53 0.00% appidd 900 root 1 96 0 5984K 2876K select 0:41 0.00% eventd
检查配置文件的大小。在退出 CLI 之前,使用唯一名称保存配置文件。然后,在
ls -1 filename
UNIX 级别 shell 中从 shell 提示符输入命令,检查文件的大小,如以下示例输出所示:user@host> start shell % ls -l config -rw-r--r-- 1 remote staff 12681 Feb 15 00:43 config
另请参阅
监控安全策略统计信息
目的
根据先前配置的策略,监控和记录 Junos OS 允许或拒绝的流量。
行动
要监控流量,请启用计数和日志选项。
计数 —可在单个策略中配置。如果启用了计数,则会收集进入给定策略设备的会话的统计信息,并收集给定策略在两个方向上通过设备的数据包和字节数的统计信息。对于计数(仅适用于数据包和字节),您可以指定在流量超过指定阈值时生成告警。请参阅计数(安全策略)。
日志 —可以在会话初始化(会话 init)或会话结束(会话关闭)阶段期间使用安全策略启用日志记录功能。请参阅日志(安全策略)。
要查看被拒绝连接的日志,请启用 登录会话 init。
要结束/关闭会话后记录会话,请启用 会话关闭登录。
会话日志在流代码中实时启用,从而影响用户性能。如果同时启用了 会话关闭 和 会话 init ,则与仅启用 会话 init 相比,性能将进一步下降。
有关为会话日志收集的信息的详细信息,请参阅 SRX 系列服务网关的会话日志条目中提供的信息。
验证影子策略
验证所有影子策略
目的
验证影子一个或多个策略的所有策略。
行动
在操作模式下,输入以下命令:
对于逻辑系统,输入
show security shadow-policies logical-system lsys-name from-zone from-zone-name to-zone to-zone-name
命令。对于全局策略,请输入
show security shadow-policies logical-system lsys-name global
命令。
root@host> show security shadow-policies from-zone zone-a to-zone zone-b Policies Shadowed policies P1 P3 P1 P4 P2 P5
意义
输出显示隐藏其他策略的所有策略列表。在此示例中,P1 策略影子 P3 和 P4 策略,P2 策略影子 P5 策略。
验证策略会影子一个或多个策略
目的
验证给定策略是否影子在给定策略之后定位的一个或多个策略。
行动
在操作模式下,输入以下命令:
对于逻辑系统,输入
show security shadow-policies logical-system lsys-name from-zone from-zone-name to-zone to-zone-name policy policy-name
命令。对于全局策略,请输入
show security shadow-policies logical-system lsys-name global policy policy-name
命令。
root@host> show security shadow-policies from-zone zone-a to-zone zone-b policy P1 Policies Shadowed policies P1 P3 P1 P4
意义
输出显示受给定策略影子的所有策略。在此示例中,P1 策略会影子 P3 和 P4 策略。
验证策略是否受到一个或多个策略的影子
目的
验证给定策略是否被位于该策略之前的一个或多个策略所影子。
行动
在操作模式下,输入以下命令:
对于逻辑系统,输入
show security shadow-policies logical-system lsys-name from-zone from-zone-name to-zone to-zone-name policy policy-name reverse
命令。对于全局策略,请输入
show security shadow-policies logical-system lsys-name global policy policy-name reverse
命令。
root@host> show security shadow-policies from-zone zone-a to-zone zone-b policy P4 reverse Policies Shadowed policies P1 P4
意义
输出显示由一个或多个策略阴影的给定策略。在此示例中,P4 策略受 P1 策略影子。
安全策略故障排除
路由引擎和数据包转发引擎之间的同步策略
问题
描述
安全策略存储在路由引擎和数据包转发引擎中。提交配置时,安全策略将从路由引擎推送到数据包转发引擎。如果路由引擎上的安全策略与数据包转发引擎不同步,则配置提交将失败。如果反复尝试提交,可能会生成核心转储文件。不同步可能是由于:
传输过程中,从路由引擎到数据包转发引擎的策略消息会丢失。
路由引擎出错,例如重用的策略 UID。
环境
要提交的配置,路由引擎和数据包转发引擎中的策略必须同步。但是,在某些情况下,路由引擎和数据包转发引擎中的策略可能不同步,这会导致提交失败。
症状
修改策略配置且策略不同步时,将显示以下错误消息 - error: Warning: policy might be out of sync between RE and PFE <SPU-name(s)> Please request security policies check/resync.
解决 方案
show security policies checksum
如果安全策略不同步,请使用命令显示安全策略校验和值,并使用request security policies resync
命令同步路由引擎和数据包转发引擎中的安全策略配置。
另请参阅
检查安全策略提交失败
验证安全策略提交
问题
描述
执行策略配置提交后,如果发现系统行为不正确,请使用以下步骤来解决此问题:
解决 方案
操作 展示 命令 — 执行安全策略的操作命令,并验证输出中显示的信息是否与您期望的信息一致。如果没有,则需要对配置进行适当的更改。
追踪选项 — 在策略配置中设置
traceoptions
命令。可以根据用户对命令输出的分析show
选择此层次结构下的标志。如果无法确定要使用哪个标志,则可以使用标记选项all
来捕获所有跟踪日志。user@host#
set security policies traceoptions <flag all>
您还可以配置可选文件名来捕获日志。
user@host# set security policies traceoptions <filename>
如果在 trace 选项中指定了文件名,则可以查看该日志文件的 /var/log/< > 以确定是否在文件中报告了任何错误。(如果未指定文件名,则默认文件名为事件。)错误消息指明故障地点和相应原因。
配置追踪选项后,必须重新提交导致系统错误行为的配置更改。
地址名称解析缓存的高可用性 (HA) 同步
当系统重新启动、发生高可用性故障转移或进程崩溃时,网络安全进程 (NSD) 会重新启动。在此期间,如果在安全策略中配置了大量域名地址,SRX 系列设备会尝试向 DNS 服务器发送请求以获取所有已解析的 IP 地址。交换大量 DNS 查询和响应时,会消耗大量系统资源。因此,SRX 系列设备无法从 DNS 服务器获得响应,通讯簿条目中主机名的地址可能无法正确解析。这可能会导致流量丢失,因为未找到任何安全策略或会话匹配。SRX 系列设备上的新增强功能通过将 DNS 查询结果缓存到本地 DNS 缓存文件中,并定期将 DNS 缓存文件从 HA 主节点同步到 HA 备份节点,从而解决了这个问题。DNS 缓存文件存储 IP 地址、域名和 TTL 值。HA 故障转移后,之前的备份节点将成为主节点。由于所有 DNS 缓存结果都在新的主节点上提供,因此安全策略处理将继续进行,并且允许根据策略规则传输流量。
从 Junos OS 19.3R1 版开始,策略 DNS 缓存内存会同步到 HA 主动节点上的一个本地 DNS 缓存文件中,并复制到 HA 备份节点,以在 NSD 重新启动期间抑制 DNS 查询或响应。
执行以下步骤进行同步:
如果策略 DNS 缓存内存内容在此期间发生变化,则每 30 秒将策略 DNS 缓存内存同步到位于 /var/db/policy_dns_cache 路径的一个本地策略 DNS 缓存文件中。
在步骤 1 中更新本地 DNS 缓存文件后,本地 DNS 缓存文件会立即从 HA 主节点同步到 HA 备份节点。
同步包括以下内容:
域名
IPv4 地址列表及其 TTL(生存时间)
IPv6 地址列表及其 TTL
当 NSD 重新启动时,它会读取和解析本地 DNS 缓存文件,并将所有缓存条目导入内存中。同步可确保在 NSD 重新启动期间抑制 DNS 查询。NSD 在 HA 故障转移期间在新主节点上重新启动,因为读取策略配置时,DNS 缓存内存中已存在域名解析的 IP 地址。因此,HA 故障转移后的安全策略允许新的直通流量,因为所有解析的域名 IP 地址都存在于新主节点的路由引擎和数据包转发引擎的策略内。