防火墙过滤器日志记录操作
对于 IPv4 和 IPv6 防火墙过滤器,您可以通过指定 syslog or log 操作,将过滤器配置为将匹配数据包标头的摘要写入日志或系统日志。两者之间的主要区别在于记录的持久性。日志仅在内存中缓冲,当缓冲区已满时,最旧的记录会在传入时替换为新记录。另一方面,系统日志可以保存到磁盘或转发到远程系统日志服务器。在这两种情况下,都会记录数据包标头的摘要(而不是数据包本身的副本)。服务筛选器和简单筛选器不支持 log 或 syslog 操作。
和sysloglog操作都会占用设备上的大量 CPU 和/或磁盘空间。瞻博网络建议您通过将日志写入远程系统日志服务器来卸载日志,并仅将其用于诊断来限制日志记录。
系统日志
如前所述,系统日志可以写入磁盘和/或发送到远程服务器。保存的日志将写入 /var/log 目录。您可以通过运行 show log 不带选项的命令来查看设备上所有可用日志文件的列表。请注意,在给定的日志文件中,防火墙操作日志可能会穿插事件消息。
以下 syslog 配置显示系统日志被发送到位于 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;
}
}
}
}
日志
该操作将 log 日志信息写入缓冲区。没有将日志写入远程服务器或将其写入磁盘的选项。可用缓冲区已满后,新日志将替换最旧的日志,因此不会保留历史记录。每当重新启动设备或 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—此示例显示仅在采样间隔(大约一秒)内检测到一个匹配的数据包。如果数据包以更快的速率到达,系统日志会自动压缩信息,以便生成的输出更少。