Windows和Linux远程日志收集

每个企业都需要从其整个网络中的设备收集和监视日志数据,以确保安全性,对操作问题进行故障排除以及对安全事件进行取证分析。为此,他们可能依赖于日志管理工具SIEM解决方案。无论使用哪种工具,将日志收集到集中位置都比看起来困难得多。从配置设备以将日志数据发送到中央服务器以确保传输中的日志的安全性,日志收集与任何其他日志管理过程一样重要且困难。

主要有两种收集日志数据的方法-基于代理和无代理。基于代理的日志收集要求在每台计算机上安装代理,以收集日志数据并将其从设备转发到中央服务器。从安全网络收集日志数据时,将使用基于代理的日志收集。在其他情况下,由于难以管理,因此不推荐使用此方法。因此,企业更喜欢本机日志转发,有时更喜欢远程日志收集。

对于网络设备(Linux / Unix计算机),可以使用本机平台中可用的日志转发功能捕获syslog数据。但是,对于远程收集Windows事件日志,此过程略有不同。

本页说明使用Syslog服务器远程收集syslog数据所需的步骤。

如何使用Syslog服务器远程收集日志?

远程收集syslog是一个相当简单的过程,涉及两个步骤:配置将集中收集所有日志数据的远程服务器,以及配置将日志数据发送到远程服务器的设备。

步骤1:配置远程服务器

要将系统日志服务器配置为远程收集日志,

  • 将以下内容附加到 服务器的/ var / log文件夹中的/etc/rsyslog.conf文件中。
  • $ ModLoad imtcp.so

    $ InputTCPServerRun 514

    此处514是指syslog服务器通过其接收日志数据的TCP端口号。

  • 创建一个变量模板,以确保不会混淆从不同主机收集的日志。将以下内容添加到/etc/rsyslog.conf文件:
  • $范本

    DynamicFile,“ / var / log / loghost /%HOSTNAME%/%syslogfacility-text%.log”

    *。*-?DynamicFile

  • 将以下条目添加到/var/logrotate.d/syslog 配置文件中,以确保新日志文件是日志循环的一部分:
  • /var/log/loghost/*/*.log

  • 为远程服务器分配一个静态IP地址。这有助于设备联系并不断将日志数据发送到远程服务器。
  • 通过添加以下规则,确保防火墙允许访问TCP端口514:
  • #systemctl重新启动rsyslog

    #firewall-cmd --add-port = 514 / udp --permanent

    #firewall-cmd --add-port = 514 / tcp --permanent

    #firewall-cmd-重新加载

步骤2:配置系统日志设备

  • 将以下内容添加到/var/rsyslog.conf文件中的rules部分
  • *。* @@ <日志服务器的IP地址>:514

    在这里,<日志服务器的IP地址>是指Syslog服务器的静态IP地址,而514是将通过其发送日志数据的TCP端口号。

如何远程收集Windows事件日志?

有多种方法可以远程访问和收集Windows事件日志。

  • 使用利用EvtOpenSession建立远程连接和调用事件日志功能的API调用。
  • 通过WMI建立远程会话并运行WMI任务以收集事件日志。
  • 通过Active Directory帐户上的事件查看器UI收集和访问事件日志,并具有读取事件日志的权限。

远程收集Windows事件日志的先决条件:

要使用事件查看器UI访问和收集事件日志,您需要一个具有特定权限的Active Directory服务帐户才能访问Windows事件日志。可以通过域中的本地安全策略或组策略对象(GPO)授予这些权限。

以下是远程访问和收集Windows事件日志所需遵循的先决条件步骤。

创建服务帐户并提供所需的权限

  • 创建一个服务帐户,然后在远程收集器上对其进行配置。另一个选择是使帐户在收集器计算机上具有正确的访问权限,以便您可以使用集成的AD身份验证进行日志收集。
  • 将该帐户添加到以下内置域组中:
    • 事件日志阅读器
    • 分布式COM用户
  • 为服务帐户授予“管理审核和安全日志”权限。这可以通过创建GPO或使用本地安全策略来完成。
    • 使用“本地安全策略”提供特权
      • 浏览以下内容:计算机配置>> Windows设置>>安全设置>>本地策略>>用户权限分配
      • 在“用户权限分配”下,导航到“管理审核和安全日志”,然后将服务帐户添加到列表中。
  • 如果您希望通过WMI协议远程收集日志,请按照以下步骤授予该帐户WMI访问权限:
    • 打开“ wmimgmt”,然后右键单击->属性>安全->高级。
    • 允许服务帐户“执行方法”,“提供者写入”,“启用帐户”,“远程启用”。
  • 授予该帐户的注册表权限。
    • 打开Regedit->本地计算机->
      System \ CurrentControlSet \ Services \ eventlog \ Security->右键单击->权限,然后添加服务帐户。
  • 在c:\ windows \ system32 \ winevt上为服务帐户分配DCOM权限并授予权限。

现在,该服务帐户可以通过事件查看器UI从域的任何部分读取所有日志。现在只需再执行几步。

  1. 启用连接: 在服务帐户所在的计算机上编辑Windows防火墙规则
    • 导航到入站规则并启用远程事件日志管理(RPC)
    • 确保将协议和配置文件分别指定为“ TCP”和“ Domain”
  2. 启用Windows收集器服务: 您需要在远程服务器上启用收集器服务,以使其接收日志文件。为此,请以本地或域管理员身份登录到远程服务器,然后在cmd中执行以下命令。可执行程序。
  3. 微信

  4. 使域计算机能够进行远程连接:  Windows远程管理(WRM)是一种协议,用于跨域中的系统交换信息。对于远程日志收集,您需要在每个设备上启用此协议以促进日志数据交换。要启用WRM协议,请以本地或域管理员身份登录到源计算机并执行以下命令。
  5. winrm快速配置

  6. 在Windows上启用订阅: 订阅定义了源设备与收集器(远程服务器)之间的关系。收集器可以从网络中的所有设备或一组特定的设备接收日志数据。要在远程日志收集器计算机上启用域计算机的订阅,请执行以下步骤。
    • 浏览事件查看器>>订阅>>操作>>创建订阅。
    • 在“订阅属性”对话框中,
      • 指定订阅名称
      • 提供说明
      • 在“目标日志”中,选择“转发的事件”
      • 如果日志是由远程服务器从各个来源收集的,则将订阅类型选择为“收集器已启动”。在这种情况下,您需要一个具有适当特权的服务帐户来收集日志。有关创建服务帐户和分配权限的详细信息,请参阅步骤5。如果选择“源启动”,则源设备将使用本机日志转发技术将日志转发到收集器。
      • 在随后的对话框中,单击“选择计算机”和“添加域计算机”。
      • 输入源计算机的名称,单击“检查名称”,如果找到,则单击“确定”。
      • 单击确定以返回到“订阅属性”
    • 单击选择事件以打开查询过滤器。
      • 从“已记录”下拉列表中,指定必须收集日志的时间间隔
      • 选择您希望收集的事件日志的类型-严重,警告,详细,信息和错误
      • 从下拉列表中,根据您的需求,选择您希望如何从源(“按日志”或“按源”)收集日志。
    • 单击“高级订阅设置”按钮,以微调您的日志收集。在这里,您可以指定可用于远程收集日志数据的用户帐户,事件级别优化标准-以最大程度地减少带宽,延迟,或者选择用于日志收集的常规日志收集方法,协议和端口。