防火墙过滤器日志记录操作
对于 IPv4 和 IPv6 防火墙过滤器,您可以通过指定 syslog 或 log 操作,将过滤器配置为将匹配数据包标头的摘要写入日志或系统日志。两者之间的主要区别在于记录的持久性。日志只会缓冲在内存中,当该缓冲区已满时,最旧的记录会在进来时替换为新记录。另一方面,系统日志可以保存到磁盘或转发到远程系统日志服务器。在这两种情况下,都会记录数据包标头的摘要(而不是数据包本身的副本)。服务过滤器和简单过滤器 不支持 日志 或 系统日志 操作。
系统日志和日志操作都会占用设备上的大量 CPU 和/或磁盘空间。瞻博网络建议通过将日志写入远程系统日志服务器来卸载日志,并且仅将其用于诊断来限制日志记录。
系统日志
如前所述,系统日志可以写入磁盘和/或发送到远程服务器。保存的日志将写入 /var/log 目录。您可以通过运行 show log 不带选项的命令来查看设备上所有可用日志文件的列表。请注意,在给定的日志文件中,防火墙操作日志可能穿插着事件消息。
以下 系统日志 配置显示系统日志正在发送到位于 172.27.1.1 的远程服务器,并将它们保存到本地设备上名为“firewall”的文件中。
host@device-RE0# show system syslog
host 172.27.1.1 {
firewall any;
}
<...>
file firewall {
firewall any;
}
要查看系统日志,请运行命令 show syslog message 。
要查看给定系统日志文件的内容,请运行 或 show log filename 命令 file show /var/log/filename 。
要清除系统日志文件内容,请运行命令 clear log filename 。您可以包括 all 删除所有已保存日志的选项,包括写入当前日志文件的记录。
配置详细信息如下所示:
firewall {
family {
filter filter-name {
from {
match-conditions;
}
then {
...
syslog;
terminating-action;
}
}
}
}
日志
日志操作将日志信息写入缓冲区。没有将日志写入远程服务器或将其写入磁盘的选项。一旦可用缓冲区已满,新日志将替换最旧的日志,因此不会保留历史记录。每当设备或 PFE 重新启动时,日志都会被清除。
配置详细信息如下所示:
firewall {
family {
filter filter-name {
from {
match-conditions;
}
then {
...
log;
terminating-action;
}
}
}
}
要查看日志,请运行命令 show firewall log 。
日志详细信息
下面显示了系统日志和日志条目中通常包含的信息类型:
user@host> show log messages_firewall_any Mar 20 08:08:45 hostname feb FW: ge-1/1/0.0 A icmp 192.168.207.222 192.168.207.223 0 0 (1 packets)
这些字段解释如下:
-
Date and Time— 接收数据包的日期和时间(默认值中未显示)。Hostname— 发生匹配的设备的名称。Interface— 数据包遍历的物理接口。 -
过滤器操作。在上面的示例中,它是 A。
-
A—接受(或下一学期) -
D——丢弃 -
R- 剔除
-
-
Protocol— 数据包协议。可以是名称或编号,也可以包括源端口和目标端口。在上面的示例中,协议是 ICMP,然后可能包括 ICMP 类型和代码。 -
Source address— 数据包的源 IP 地址。 -
Destination address— 数据包的目标 IP 地址。 -
Source port— 数据包的源端口(仅限 TCP 和 UDP 数据包)。在上面的示例中,端口为 0。 -
Destination port— 数据包的目标端口(仅限 TCP 和 UDP 数据包)。在上面的示例中,端口为 0。 -
Packets in sample interval— 此示例显示在采样时间间隔(约一秒)内仅检测到一个匹配的数据包。如果数据包以更快的速度到达,系统日志会自动压缩信息,以减少生成的输出。