在典型的企业账户中,我看到以下列兴趣顺序优先考虑的应用程序开发人员,devops和sre团队的日志管理:

  1. 来自核心Web和后端服务的应用程序日志
  2. 从nginx,apache,aws负载均衡器和类似服务的访问日志
  3. 来自关键平台的基础架构日志,例如SQL数据库,Redis群集,Kafka集群和虚拟化层

但是,还有一类额外的日志,可以对现代数字企业的一些最严重威胁提供基本的可见性。这类日志是广泛的安全相关,但他们为团队提供整个平台的特定用户/客户端操作的记录。这类日志包括:

  • Linux系统日志
  • 安全增强(SE)Linux审核日志
  • Windows安全事件日志
  • 防火墙日志

在此帖子中,我将展示如何使用我们的基础架构监控代理将这些日志类型发送到新的遗物。

系统日志

基于Linux的Systemd统一服务配置和行为。在许多Linux Distros运行企业工作负载对于一些世界上一些最大的公司,Systemd控制大多数“核心”Linux进程,例如Cron,网络和防火墙进程。换句话说,它控制系统中发生的大量处理。虽然没有专门的安全性专注,但它发出了一个“安全相邻的”日志,可以告诉您在Linux环境中发生的事情。

例如,SystemD来自安全性的角度,因为它可以:

  • 停止防火墙服务
  • 重新启动防火墙服务(可能在配置更改后更改后)
  • 停止运行网络接口的服务
  • 管理关键引导进程,例如安装文件系统

将Systemd日志与基础架构代理发送到新遗物

我们的基础设施代理人提供一个简单的ondamp,将各种系统日志转发到新遗物。贪婪的方法将转发输出的几乎所有日志/ var / log /消息,这是常用处理由SystemD控制的日志。但是,更受控的方法是指定要记录的特定系统服务。

例如,在新的遗物中执行此操作:

添加以下条目/etc/newrelic-infra/logging.d/logs.yml.

日志: - 名称:systemd-firewalld systemd:firewalld

新的遗物架构代理应识别此更改,并自动启动防火墙进程发出的日志。将其他Systemd服务日志添加到Confion中很简单:

日志: - 名称:systemd-firewalld systemd:firewalld  - 名称:systemd-auditd systemd:auditd

通过这种简单的配置,新的遗物将接收与这两个服务相关的每个事件的日志。

以下是一个查询和生成的图表,显示了我自己的SSH动作的日志:

selinux审核日志

SELinux是一个Linux内核安全模块,允许您设置访问控制安全策略,包括每个用户空间的强制性访问控制(Mac)。Selinux日志为您提供一个高度粒度的事件日志,用于与Linux系统资源相关的各种访问和拒绝事件。

Selinux日志可以告诉您:

  • 未经授权的用途苏达
  • 未经授权或意外的SSH访问权限
  • 未经授权访问文件或可执行文件

这些事件不必被视为“入侵检测” - 您可以将它们视为访问策略执行日志。例如,即使您的Sysadmins可能被授权到某个主机,您仍然想知道“未记录的热修复”,可能导致道路上的意外失败。

在现代SRE的背景下,许多智能用户不断使用音乐会工作,以保持复杂的系统。在某些情况下,减轻和调查的尝试本身就可以成为一种脆弱性。

让我们假设一个进程或用户尝试访问他们无权访问的HTML文件。如果是审计守护程序正在运行,写入默认SELinux拒绝消息,如以下内容/var/log/audit/audit.log.

type = avc msg =审计(1223024155.684:49):avc:pid = 2000 comm =“httpd”path =“/ var / www / html / finance”dev = dm-0 ino = 399185 scontext = unconfined_u:system_r:httpd_t:s0 tcontext = system_u:object_r:samba_share_t:s0 tclass =文件

此外,SELinux会发送日志/ var / log /消息

5月7日18:55:56 localhost setroubleshoot:selinux正在阻止httpd(httpd_t)“getattr”到/ var / www / html / file1(samba_share_t)。用于完整的selinux消息。Run Sealert -L DE7E30D6-5488-466D-A606-92C9F40D316D

将Selinux审核日志发送给新遗物

首先,确保审计服务日志正在发送给新的遗物。将以下部分添加到/etc/newrelic-infra/logging.d/logs.yml.

- 名称:systemd-auditd systemd:auditd

最后,添加此配置以将详细的审核日志转发给新的遗物。

- 名称:审核日志文件:/var/log/audit/audit.log

添加审核日志和系统日志后,您的logs.yml.应该如下所示:

日志: - 名称:systemd-firewalld systemd:firewalld  - 名称:systemd-auditd systemd:auditd  -  name:审计日志文件:/var/log/audit/audit.log

这是一个新的遗物,我正在寻找从我的测试主机发送电子邮件的失败尝试:

Windows安全事件日志

Selinux现代Windows系统跟踪各种与安全相关的活动,并将其注销Windows事件,每个都具有特定的事件代码。没有短缺安全事件Windows轨道。例如:

活动代码 描述
4720. 创建了一个用户帐户
4722 用户帐户已启用
4826. 加载启动配置数据
4825. 用户被拒绝访问远程桌面
4624. 帐户已成功登录
4625. 帐户无法登录
4700. 已启用计划任务
4701. 计划的任务已禁用
4702 计划任务已更新
4735. 启用了安全的本地组已更改

要使用它,请创建文件/etc/newrelic-infra/logging.d.命名为winlog.yml.,或编辑您现有的log.yml.文件,添加以下部分:
我们的基础架构代理从Windows日志通道收集事件并将其转发给新的遗物。

日志: - 名称:Windows-Security Winlog:频道:安全Collect-FempIDS: -  4624  -  4265  -  4700-4702 exclude-eventids: -  4735

如果我搜索,这是新遗物中的样子频道:“安全性”和“无法登录”

防火墙日志

防火墙日志服务于双重用途:当网络基础设施发生故障时,他们可以告诉您,如果发生某种入侵,他们也可以提前预警。

防火墙日志的确切内容和输出格式将取决于您使用的供应商,因此没有单尺寸适合所有解决方案。但是,如果您可以将防火墙服务或设备重新配置到转发日志,仍然可以在TCP或UDP上发出Syslog日志。在这种情况下,您可以将Syslog日志直接发送给我们的syslog端点(仅限TPC),或将日志发送到转发层,如流利位,FluentD或Logstash。

重要的是,所有现代防火墙设备都会发出类似的日志。在这个思科例子中(具体思科自适应安全设备(ASA)软件版本7.2),严重程度1最多关于,6或更高的是被视为信息或调试:

思科ID 严重程度 日志文本
106021 1 拒绝协议反向路径从source_address到interface interface_name上的dest_address
106018. 2 ICMP数据包类型ICMP_TYPE由出站列表拒绝ACL_ID SRC INSITE_ADDRESSTREXIDS_ADDRESS
106010. 3. 拒绝入站协议src interface_name:dest_address / dest_port dst
106100 4. 访问列表acl_id {允许|否认|EST-Abouts}协议interface_name / source_address(source_port) - > interface_name / dest_address(dest_port)hit-cnt编号({first hist |数字 - 第二间隔})
106015. 6. 拒绝从IP_Address /端口到IP_Address / Port标志TCP_FLAGS的TCP(无连接)interface interface_name

以下示例显示了如何设置基础结构代理的内置日志转发器,以通过TCP连接接收防火墙日志。请记住,您无需在任何特定设备上安装基础架构代理 - 它可以与防火墙设备完全分开。笔记:如果您使用不同的防火墙系统,请联系您的新遗物帐户团队以获取更多特定信息。

日志: - 名称:防火墙 -  logs-tcp-raw tcp:uri:tcp://0.0.0.0:1234#使用tcp:// listen_address:port格式格式:无#原始文本 - 这是'tcp'的默认值分隔符:\ t#字符串分离原始文本条目max_line_kb:32  - 名称:firewall-logs-tcp-json tcp:uri:tcp://0.0.0.0:2345#使用tcp:// listent_address:port格式格式:杰森

您需要在防火墙设备上更新的唯一配置是日志记录输出配置。这是Cisco防火墙日志输出的示例配置

在新的遗物中,你会过滤Logtype:“Cisco防火墙”

从那里,您可以构建查询来钻取以调查特定的子网:

小费:有关高级高环境日志的更高级日志转发配置的解释,请查看我的帖子“设置日志转发器的五项最佳实践。“

结论

有强大的解析查询仪表板功能,新遗物是发送某些安全性和安全相邻系统日志的完美场所。我们的内置日志管理组件 - 全堆叠可操作性的一部分提供一个方便的外开箱工具包,用于探索,组织和丰富日志数据。

When all of your DevOps and SRE teams have access to such data (not just your networking and Linux specialists) they’ll be better prepared to correlate anomalies in security logs with APM performance dips, or see general infrastructure performance degradation—all of which are essential practices of unified observability.

既然你知道如何从日志数据中提取有价值的安全信息,报名对于免费的新遗物帐户,并将日志作为一部分获取全堆叠可观察性

Jim Hagan是一个基于波士顿的企业解决方案顾问,具有新的遗物。他拥有20年的软件工程师经验,具有地理空间技术和时间序列分析的专业知识。在加入新遗物之前,他在Wayfair的高度分布式测井和度量平台上工作。查看帖子

对新遗物博客的写作有兴趣吗?188博彩体育网址送我们一个球场!!