系统日志服务器概述和配置
To view this article in English, click here.
通过配置,系统日志服务器可以存储来自 MX 安全设备、MR 无线接入点和 MS 交换机的一些消息,从而实现报告目的。本文档将介绍系统日志消息示例,以及如何配置系统日志服务器以存储消息。
系统日志消息类型
MX 安全设备支持发送四类消息/角色:事件日志、IDS 警报、URL 和流。MR 无线接入点可以发送除 IDS 警报外的其他相同角色。MS 交换机当前仅支持发送事件日志消息。
有关系统日志消息及其内容的其他信息,请参阅 RFC 5424。
URL
任何 HTTP GET 请求都将生成系统日志条目。
示例:
Apr 20 14:36:35 192.168.10.1 1 948077314.907556162 MX60 urls src=192.168.10.3:62526 dst=54.241.7.X.X mac=00:1A:A0:XX:XX:XX request: GET http://www.meraki.com
摘要:
一个 IP 地址为 192.168.10.3 的客户端向 http://www.meraki.com 发送了一个 HTTP GET 请求。
流
入站流和出站流将生成一条系统日志消息,显示源和目标、端口号以及匹配的防火墙规则。对于入站规则,1 = 拒绝,0 = 允许。
示例:
入站流:
192.168.10.1 1 948077334.886213117 MX60 flows src=39.41.X.X dst=114.18.X.X protocol=udp sport=13943 dport=16329 pattern: 1 all
出站流:
192.168.10.1 1 948136486.721741837 MX60 flows src=192.168.10.254 dst=8.8.8.8 mac=00:18:0A:XX:XX:XX protocol=udp sport=9562 dport=53 pattern: allow all
摘要:
入站流示例中显示一个从 39.41.X.X 到 MX 的 WAN IP 的受阻 UDP 流。出站流示例中显示一个得到允许的 DNS 请求出站流。
设备/交换机/无线事件日志
在控制面板的网络范围 > 监控 > 事件日志中,可以找到消息副本。
示例:
May 10 18:46:04 192.168.10.1 1 948080570.911780502 MX60 events dhcp lease of ip 192.168.10.252 from server mac 00:18:0A:XX.XX.XX for client mac 58:67:1A:XX.XX.XX from router 192.168.10.1 on subnet 255.255.255.0 with dns 8.8.8.8, 8.8.4.4
摘要:
一个 MAC 地址为 00:18:0A:XX.XX.XX 的客户端租用了 MX 的一个 IP 地址,且该 MX 向该客户端提供了 8.8.8.8 和 8.8.4.4 作为 DNS 服务器。
IDS
任何 IDS 事件都将生成系统日志消息(仅限 MX 安全设备角色)。
示例:
1490031971.951780201 ANB_MX80 security_event ids_alerted signature=1:39867:3 priority=3 timestamp=1490031971.693691 shost=00:15:5D:1E:08:04 direction=egress protocol=udp/ip src=192.168.30.10:49243 dst=71.10.216.1:53 message: INDICATOR-COMPROMISE Suspicious .tk dns query
摘要:
从 192.168.30.10 向 71.10.216.1 发送 .tk DNS 查询时,生成了一条 IDS 系统日志消息。
Air Marshal 事件
Air Marshal 事件将生成一条描述检测到的无线流量的系统日志消息。
示例:
Oct 20 17:21:33 192.195.83.210 0.0 syslog2 airmarshal_events type= rogue_ssid_detected ssid='' vap='0' bssid='FF:FF:FF:FF:FF:FF' src='02:18:6A:XX:XX:XX dst='FF:FF:FF:FF:FF:FF' wired_mac='00:18:0A:XX:XX:XX' vlan_id='0' channel='44' rssi='60' fc_type='0' fc_subtype='4'
摘要:
局域网上的一个设备发送的一个信标产生一个欺诈 SSID 事件,由此生成了一条系统日志消息。
配置系统日志服务器
在 Linux 系统上可以迅速轻松地配置系统日志服务器,另外有许多适用于其他操作系统的其他系统日志服务器(例如适用于 Windows 的 Kiwi Syslog)。
以下命令详细说明了 Ubuntu 13.04 上一个使用 syslog-ng 从 MX 安全设备收集系统日志消息的系统日志服务器配置示例。
注意:下列命令概述一个仅供演示使用的配置示例。请参阅您的服务器文档,了解特定指令和信息。
第一步是安装系统日志应用:
sysadmin@ubuntu:~$ sudo apt-get install syslog-ng
安装系统日志工具后,需要对其进行配置,以接收来自 MX 的日志消息。这些指令会将 syslog-ng 配置为在各自的日志文件中存储每种类别的角色。URL、事件日志等将存储在单个日志文件中。此外,也可以配置为把所有日志存储在一个文件中。使用任何合适的编辑器对 syslog-ng 配置文件进行更改。在本示例中使用 nano 编辑文件。
sysadmin@ubuntu:~$ sudo nano /etc/syslog-ng/syslog-ng.conf
在本示例中,MX 的局域网 IP 将会是 192.168.10.1。系统日志服务器正在 192.168.10.241 UDP 端口 514 上侦听。根据需要进行更新,以反映所配置的 MX 和系统日志服务器的局域网 IP。代码的第一部分将所有来自 MX 的系统日志消息配置为存储在 /var/log/meraki.log 中。代码的第二部分使用正则表达式来匹配每种类别的角色,并将它们存储在单个日志文件中。仅需配置一个选项。
选项 1 - 将所有消息记录在 /var/log/meraki.log 中:
#define syslog source source s_net { udp(ip(192.168.10.241) port(514)); }; #create filter to match traffic (this filter will catch all syslog messages that come from the MX) filter f_meraki { host( "192.168.10.1" ); }; #define a destination for the syslog messages destination df_meraki { file("/var/log/meraki.log"); }; #bundle the source, filter, and destination rules together with a logging rule log { source ( s_net ); filter( f_meraki ); destination ( df_meraki ); };
选项 2 - 将不同类型的消息记录在单个日志文件中:
#define syslog source source s_net { udp(ip(192.168.10.241) port(514)); }; #create individual filters to match each of the role categories filter f_meraki_urls { host( "192.168.10.1" ) and match("urls" value ("MESSAGE")); }; filter f_meraki_events { host( "192.168.10.1" ) and match("events" value ("MESSAGE")); }; filter f_meraki_ids-alerts { host( "192.168.10.1" ) and match("ids-alerts" value ("MESSAGE")); }; filter f_meraki_flows { host( "192.168.10.1" ) and match("flows" value ("MESSAGE")); }; #define individual destinations for each of the role categories destination df_meraki_urls { file("/var/log/meraki_urls.log"); }; destination df_meraki_events { file("/var/log/meraki_events.log"); }; destination df_meraki_ids-alerts { file("/var/log/meraki_ids-alerts.log"); }; destination df_meraki_flows { file("/var/log/meraki_flows.log"); }; #bundle the source, filter, and destination rules together with a logging rule for each role category log { source ( s_net ); filter( f_meraki_urls ); destination ( df_meraki_urls ); }; log { source ( s_net ); filter( f_meraki_events ); destination ( df_meraki_events ); }; log { source ( s_net ); filter( f_meraki_ids-alerts ); destination ( df_meraki_ids-alerts ); }; log { source ( s_net ); filter( f_meraki_flows ); destination ( df_meraki_flows ); };
最后一步是重新启动 syslog-ng 流程:
sysadmin@ubuntu:~$ sudo /etc/init.d/syslog-ng restart
配置控制面板
在“控制面板”中,可以在网络范围 > 配置 > 常规下定义系统日志服务器。
点击添加系统日志服务器链接,定义新的服务器。需要定义的内容包括 IP 地址、UDP 端口号和要发送到服务器的角色。可以配置多个系统日志服务器。
如果 MX 安全设备上启用了流角色,则可以前往安全设备 > 配置 > 防火墙页面,在日志记录列下启用/禁用适用于单个防火墙规则的日志记录。
其他注意事项
系统日志消息会占用许多磁盘空间。在确定运行系统日志服务器的主机时,请确保该主机拥有足够的存储空间来保存日志。查阅系统日志工具手册页,了解有关将日志仅保留一段时间的更多信息。
如果环境中有多个使用站点到站点 VPN 的 MX 设备,且日志记录已在 VPN 的远程方上的系统日志服务器中完成,则该流量将受站点到站点防火墙的制约。同样地,请注意可能有必要创建一个站点到站点防火墙规则,以允许系统日志流量通过。可以从安全设备 > 配置 > 站点到站点 VPN > 组织范围的设置 > 添加规则执行此操作。
源 IP 地址必须是将系统日志消息发回到系统日志服务器的 MX 的互联网端口 1 地址。目标 IP 地址是系统日志服务器的 IP 地址。如果系统日志服务器不使用标准 UDP 端口 514 侦听系统日志消息,请更改目标端口号。