37、瞻博防火墙故障排除指南

瞻博防火墙故障排除指南

在计算机网络领域,故障排除是一项常见且必要的工作。瞻博防火墙为我们提供了一系列工具来帮助排查网络访问问题。接下来,我们将详细介绍故障排除的方法和相关工具。

故障排除方法

当计算机网络运行不符合预期时,首先要进行合理性检查。确认是否是防火墙问题,数据包是否到达防火墙。很多防火墙问题可能实际上是内部路由问题,所以要跟踪数据包从计算机通过内部网络的集线器、交换机和路由器的路径。也可以在防火墙外嗅探流量,查看数据包在到达防火墙之前的状态。

如果确定问题出在防火墙,在深入排查之前要确保基本连接正常,比如电源和网络电缆是否正确连接且无损坏。在处理软件问题之前,先排除潜在的硬件问题。

故障排除可遵循以下七个步骤:
1. 描述问题 :在开始排查之前,要能够清晰描述问题。尝试通过问自己一些问题来缩小问题范围,例如问题是影响设备的所有用户、一小部分用户还是仅一个用户,是否影响特定的操作系统等。找到受影响用户之间的共性,从这里开始工作。
2. 描述环境 :需要描述所涉及的网络设备,包括网络流量路径中涉及的硬件和软件。
3. 确定问题位置 :问题的位置并不总是显而易见的,需要借助一些故障排除工具来确定问题发生的位置。这一步可能比较棘手,因为问题可能并非出现在我们认为的地方。
4. 确定问题原因 :确定问题位置后,要分析某些故障排除工具的输出,以确定问题的原因。瞻博防火墙内置了多个故障排除工具,当然也可以使用其他工具来辅助发现潜在问题的原因。
5. 解决问题 :确定问题原因后,需要实际解决问题。这可能涉及物理上改变网络或通过更改配置向网络设备发出命令。无论做什么,都要记录所做的更改。
6. 测试解决方案 :重新创建问题场景,查看问题是否解决。由于解决方案可能会影响其他网络流量,所以要确保其他部分也能正常工作。
7. 记录更改 :文档记录是非常重要但经常被忽略的步骤。优秀的网络管理员会详细记录对网络基础设施所做的更改。记录故障排除过程中的更改也很重要,因为解决方案可能会在网络的其他区域产生意外问题。此外,未来可能会再次遇到相同的问题,记录可以避免重复劳动。

故障排除工具

瞻博防火墙内置了多个故障排除工具,每个工具都有特定的用途,可以满足各种故障排除需求。

安全故障排除注意事项

在对防火墙进行故障排除时,要确保在过程中不影响安全。如果使用 HTTP 或 Telnet 访问防火墙,他人可能会在你解决问题时嗅探你的数据包。
- WebUI 可以使用 SSL 加密或通过 VPN 隧道传输,建议始终确保此连接安全。瞻博防火墙可以自签名证书,无需购买。
- 命令行界面可以使用 SSH 加密登录防火墙。应禁用 Telnet,防止他人使用。如果因某些原因需要 Telnet 访问,要使用 VPN 隧道加密数据包。串行控制台访问需要物理访问防火墙,可以根据需要禁用所有 CLI 访问,仅通过串行访问管理设备,但这可能有些极端。

常用工具介绍
工具名称 功能描述 使用示例
Ping 用于测试网络连接性。发送 ICMP 回显请求并等待 ICMP 回显回复。 ping 192.168.0.1
Traceroute 用于排查多跳路由问题。利用 IP 协议的 TTL 字段从数据包经过的每个网关获取 ICMP TIME_EXCEEDED 响应。 trace-route 192.168.0.1
Get Session 显示通过瞻博防火墙的所有当前已建立会话。如果会话表中有条目,则表示连接已成功通过路由表和策略。 get session
Get Policy 显示当前的 NetScreen 策略,可查看每个规则分配的策略 ID。 get policy
Get Route 显示当前的 NetScreen 路由表,每个虚拟路由器有单独的路由表。 get route
Get Interface 显示详细的接口统计信息,可查看接口所在区域、硬件 MAC 地址、IP 地址、VLAN 和接口状态。 get interface
Get ARP 查看瞻博防火墙的 ARP 表,对排查 OSI 第 1 层和第 2 层问题很有用。 get arp
Get System 提供防火墙的重要信息,如序列号、软件版本、日期和时间、设备重置总数和当前用户名等。 get system

以下是使用这些工具的流程 mermaid 图:

graph LR
    A[开始] --> B{选择工具}
    B --> |Ping| C(Ping命令测试网络连接)
    B --> |Traceroute| D(Traceroute排查多跳路由)
    B --> |Get Session| E(Get Session查看已建立会话)
    B --> |Get Policy| F(Get Policy查看策略)
    B --> |Get Route| G(Get Route查看路由表)
    B --> |Get Interface| H(Get Interface查看接口信息)
    B --> |Get ARP| I(Get ARP查看ARP表)
    B --> |Get System| J(Get System获取系统信息)
    C --> K[结束]
    D --> K
    E --> K
    F --> K
    G --> K
    H --> K
    I --> K
    J --> K
调试工具
Debug

ScreenOS 中的调试实用程序是一个强大的故障排除工具,可跟踪通过瞻博防火墙的会话。防火墙为调试系统预留了内存缓冲区,可以在其中捕获数据包进行检查。使用步骤如下:
1. 设置过滤器(可选) :设置调试所需的过滤器,这有助于整合结果。也可以选择清除旧的调试缓冲区,以获得更好的快照。
2. 发出调试命令 :执行调试操作。
3. 获取调试输出 :使用 get db str 命令获取存储在内存缓冲区中的调试输出。
4. 停止调试 :使用 undebug all 命令停止调试,或者继续使用 get db str 命令获取调试输出。
5. 清除内存缓冲区 :使用 clear db 命令清除内存缓冲区。

注意 :发出调试命令会增加防火墙的负载,虽然不像其他平台的调试那样严重,但仍需谨慎使用。最好使用流过滤器,并尽快关闭调试。

Flow Filters

可以设置过滤器来限制发送到调试缓冲区的流量。 set ffilter 命令允许选择要收集的流量类型,可用的过滤器包括:
- dst-ip :目标 IP 地址
- dst-port :目标端口
- ip-proto :互联网协议编号
- src-ip :源 IP 地址
- src-port :源端口

如果在 set ffilter 命令中指定多个过滤器,过滤器将只收集匹配所有指定过滤器的流量。该命令可以多次执行,如果流量匹配任何一个过滤器,都会被收集。例如,要过滤从 192.168.0.1 到 10.1.1.1 的所有 TCP 流量,可执行命令: SSG550-> set ffilter src-ip 192.168.0.1 dst-ip 10.1.1.1 ip-proto 6

使用 get ffilter 命令查看当前过滤器。每个过滤器都有一个 ID 号,使用 unset ffilter 命令并跟上要删除的过滤器的 ID 号来移除过滤器。

Snoop

Snoop 是一个完整的数据包嗅探器,其输出与调试输出存储在同一个内存缓冲区中。与调试的最大区别是,Snoop 可以将数据包的实际内容转储到内存缓冲区。Snoop 输出比调试输出更难读取,通常在需要分析数据包内容时使用。使用 Snoop 的命令如下:
- snoop :开始 Snoop 捕获。
- snoop info :显示当前 Snoop 状态。
- snoop detail :启用完整数据包日志记录,记录数据包的完整内容。
- snoop off :停止 Snoop 捕获。
- snoop filter :允许过滤要捕获的内容,语法与调试过滤类似。
- clear db :清除调试内存缓冲区。
- get dbuf stream :显示输出进行分析。

防火墙会话分析器(FSA)

瞻博创建了一个新的基于 Web 的工具——防火墙会话分析器(FSA),用于处理 get session 命令产生的大量信息。该命令显示通过 NetScreen 设备的所有当前已建立会话,在控制台查看时可能会让人感到困惑。

get session 命令的输出日志上传到 FSA(位于 http://tools.juniper.net/fsa/)后,它将生成以下七个报告:
1. 基于目标 IP 地址的排名
2. 基于目标端口的排名
3. 基于源 IP 地址的排名
4. 基于源端口的排名
5. 基于协议的排名
6. 基于虚拟系统设备(VSD)的排名
7. 基于源 IP 以及协议和目标端口信息的排名

使用该工具的步骤如下:
1. 使用以下命令将 get session 命令的输出记录到 TFTP 服务器上的文件中: SSG550-> get session > tftp <server ip> <filename> 。也可以选择将屏幕输出捕获到文件中,并以与 TFTP 服务器上的文件相同的方式上传到分析器。
2. 使用 Web 浏览器访问 http://tools.juniper.net/fsa/。
3. 浏览到 get session.log .txt 文件,确保文件大小不超过 10MB。
4. 选择文件捕获时使用的 ScreenOS 版本(ScreenOS v4 或 v5)。
5. 点击“提交”。几秒钟后,结果将在新屏幕中显示。每个报告的前 10 个结果将显示在一个页面上,可以通过选择所需报告的链接将每个完整报告下载为单独的 CSV 文件。分析器执行后一小时内可以查看这些信息,一小时后,工具处理的信息和相应的报告将因安全原因从瞻博网站删除。

通过合理使用这些故障排除方法和工具,可以更高效地解决瞻博防火墙遇到的各种问题,保障网络的稳定运行。

网络故障排除

在网络故障排除中,要综合考虑多个方面。首先,确认数据包是否能正常到达防火墙,这可以通过前面提到的 ping traceroute 工具来初步判断。如果 ping 不通目标地址,可能是网络连接中断、防火墙策略阻止或者目标设备故障等原因。

以下是一个网络故障排除的流程表格:
|步骤|操作|目的|
| ---- | ---- | ---- |
|1|使用 ping 命令测试与目标设备的连通性|判断网络基本连接情况|
|2|使用 traceroute 命令查看数据包路径|确定问题出现在哪个网络节点|
|3|查看 get route 路由表|确认路由设置是否正确|
|4|检查 get policy 策略|查看是否有策略阻止数据包通过|
|5|使用 get interface 查看接口状态|确认接口是否正常工作|
|6|分析 get session 会话信息|查看当前连接是否正常建立|

例如,当发现无法访问某个外部网站时,可按以下步骤排查:
1. 在本地主机上使用 ping 命令测试与该网站 IP 地址的连通性。若 ping 不通,继续下一步。
2. 使用 traceroute 命令查看数据包到达该网站经过的路由节点,确定问题出现在哪个环节。
3. 查看防火墙的 get route 路由表,确保有正确的路由指向该网站所在网络。
4. 检查 get policy 策略,确认是否有策略阻止了对该网站的访问。
5. 使用 get interface 查看相关接口状态,确保接口正常工作。
6. 分析 get session 会话信息,查看是否有与该网站的正常连接会话。

调试特定功能
调试 NAT

网络地址转换(NAT)在防火墙中起着重要作用,调试 NAT 可以帮助我们解决地址转换相关的问题。当发现数据包经过防火墙后地址转换异常时,可以使用以下方法:
1. 查看会话信息 :使用 get session 命令查看会话表,确认数据包在经过 NAT 时的转换情况。注意观察会话表中源地址和目的地址的转换结果,以及对应的策略和路由信息。
2. 使用调试工具 :可以结合前面提到的 debug 工具,设置相关的过滤条件,如 set ffilter src-ip <源 IP> dst-ip <目的 IP> ip-proto <协议号> ,然后进行调试。使用 get db str 命令获取调试输出,分析数据包在 NAT 过程中的详细信息。
3. 检查策略配置 :使用 get policy 命令查看 NAT 相关的策略配置,确保策略正确设置,允许进行地址转换的流量通过。

调试 VPN

虚拟专用网络(VPN)的调试对于保障远程安全连接至关重要。当 VPN 连接出现问题时,可以按照以下步骤进行调试:
1. 检查系统信息 :使用 get system 命令查看防火墙的系统信息,确保软件版本支持 VPN 功能,并且相关的许可证已正确安装。
2. 查看会话信息 :使用 get session 命令查看 VPN 相关的会话信息,确认是否有正常的 VPN 连接会话。注意观察会话表中 VPN 隧道的状态和相关参数。
3. 使用调试工具 :启用 debug 工具,设置过滤条件,如 set ffilter src-ip <VPN 客户端 IP> dst-ip <VPN 服务器 IP> ip-proto <VPN 协议号> ,然后进行调试。使用 get db str 命令获取调试输出,分析 VPN 连接过程中的详细信息,如认证、加密等环节。
4. 检查策略配置 :使用 get policy 命令查看 VPN 相关的策略配置,确保策略允许 VPN 流量通过。同时,检查 VPN 隧道的配置参数,如 IPsec 协议、密钥等是否正确。

以下是一个 VPN 调试的 mermaid 流程图:

graph LR
    A[开始] --> B{VPN 连接失败?}
    B --> |是| C(检查系统信息)
    B --> |否| G[结束]
    C --> D(查看会话信息)
    D --> E(使用调试工具)
    E --> F(检查策略配置)
    F --> B
调试 NSRP

NetScreen 冗余协议(NSRP)用于实现防火墙的冗余备份,调试 NSRP 可以确保在主设备故障时能够顺利切换到备用设备。当 NSRP 出现问题时,可以采取以下措施:
1. 查看系统状态 :使用 get system 命令查看防火墙的系统状态,确认 NSRP 功能是否正常启用,以及当前设备的角色(主设备或备用设备)。
2. 查看接口状态 :使用 get interface 命令查看与 NSRP 相关的接口状态,确保接口正常工作,并且通信正常。
3. 检查配置信息 :查看 NSRP 的配置文件,确保配置参数正确,如优先级、心跳接口等。
4. 使用调试工具 :启用 debug 工具,设置相关的过滤条件,对 NSRP 相关的流量进行调试。使用 get db str 命令获取调试输出,分析 NSRP 协议的运行情况。

调试流量整形

流量整形用于控制网络流量,确保关键业务的带宽需求。当流量整形效果不符合预期时,可以进行以下调试:
1. 查看配置信息 :查看流量整形的配置文件,确认带宽限制、优先级等参数是否正确设置。
2. 使用调试工具 :启用 debug 工具,设置过滤条件,对流量整形相关的流量进行调试。使用 get db str 命令获取调试输出,分析流量在整形过程中的详细信息。
3. 监测流量情况 :使用 get interface 命令查看接口的流量统计信息,确认实际流量是否符合流量整形的设置。

防火墙日志分析

防火墙日志是故障排除的重要依据,通过分析日志可以了解防火墙对数据包的处理情况。NetScreen 防火墙会记录各种事件,如策略匹配、会话建立、异常流量等。

以下是一些常见的日志分析场景和方法:
|日志场景|分析方法|
| ---- | ---- |
|策略拒绝日志|查看日志中拒绝的数据包的源地址、目的地址、协议和端口信息,然后使用 get policy 命令查看对应的策略,确认是否是策略配置问题|
|会话建立日志|分析会话建立的时间、源地址、目的地址等信息,结合 get session 命令查看会话表,确认会话是否正常建立|
|异常流量日志|对于异常流量日志,如大量的 SYN 洪泛攻击日志,分析攻击的源地址和特征,使用 debug 工具进一步分析攻击的详细情况|

例如,当发现防火墙日志中频繁出现策略拒绝的记录时,可以按照以下步骤分析:
1. 从日志中提取拒绝数据包的源地址、目的地址、协议和端口信息。
2. 使用 get policy 命令查看对应的策略,确认策略是否正确配置。
3. 如果策略配置正确,但仍然出现拒绝情况,使用 debug 工具设置相关过滤条件进行调试,分析数据包被拒绝的具体原因。

通过对防火墙日志的深入分析,可以及时发现潜在的安全威胁和网络故障,采取相应的措施进行处理,保障网络的安全和稳定运行。

综上所述,在瞻博防火墙的故障排除过程中,要综合运用各种故障排除方法和工具,按照合理的流程进行排查。从初步的网络连通性测试,到深入的功能调试和日志分析,每个环节都至关重要。只有这样,才能高效地解决各种故障问题,确保瞻博防火墙为网络提供可靠的安全防护。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值