设为首页 加入收藏

TOP

针对Linux 文件完整性监控的实现(六)
2019-09-02 23:05:36 】 浏览:132
Tags:针对 Linux 文件 完整性 监控 实现
2-26所示。

 

图2-26 查询可用包

1. osqueryd生成的结果将写入/var/log/osquery目录中调用的文件osqueryd. results. log中。打开后,该文件不存在。它仅在守护程序启动时创建并开始生成结果。如图2-27所示。

 

图2-27 查看日志

可以开始使用systemctl或osqueryctl启动osqueryd。两者都完成了同样的事情,所以你使用哪一个并不重要。osqueryd将在启动时检查配置文件是否存在,并在未找到配置文件时提醒。它将在没有配置文件的情况下继续运行,尽管它不会做任何有用的事情。但是,由于已经设置了配置文件,因此需要在此处启动守护程序:sudo systemctl start osqueryd或者可以输入: sudo osqueryctl start

2. 在启动守护进程后的几分钟内,/var/log/osquery/osqueryd. results. log的大小应该增加。可以通过输入并重复下一个命令来查看这种情况:

 ls -lh /var/log/osquery/osqueryd. results. log

文件大小的增加表示已将计划查询的结果写入磁盘。不幸的是,osquery没有像OSSEC这样的警报工具,因此除非查看结果文件,否则无法查看计划查询的结果。可以使用该tail命令执行此操作,该命令将持续将该文件的最后10行流式传输到的屏幕:sudo tail -f /var/log/osquery/osqueryd. results. log 如图2-28所示。

 

图2-28 查询该文件的最后10行内容

按CTRL+C停止拖尾日志。从长远来看,需要将查询结果日志发送到可以使用的外部分析平台。

2.2.5. osqueryi交互模式

osquery为用户提供了两个主要接口,osqueryi和osqueryd。

osqueryi是osquery交互式查询控制台。 它就像MySQL上的'mysql'命令shell和PostgreSQL数据库上的'psql'shell。在服务器终端上键入“osqueryi”命令,将获得osquery交互式控制台模式。接下来,将了解osqueryi控制台模式的基本命令。在交互模式osqueryi上显示所有基本可用命令。如图2-29所示。

osquery> . help

 

图2-29 基本可用命令

  1. 显示当前的osquery配置和设置。如图2-30所示。

 

图2-30 显示当前的osquery配置

Osquery提供多种视图模式来显示查询结果。 默认模式是“漂亮”模式。

现在将更改查询结果的查看模式,对于本设计,将使用'line'模式。

osquery>. mode csv

osquery>. mode list

osquery>. mode column

osquery>. mode line

osquery>. mode pretty

Osquery将操作系统公开为关系数据库系统。 有关系统的所有信息都存储在osquery表中,可以通过查询所有可用表来探索整个系统信息。

  1. 要获取osquery中所有可用表的列表,请运行以下命令。如图2-31所示。

osquery>. tables

 

图2-31 osquery中所有可用表的列表

一旦知道了osquery系统中的所有可用表,将查看列。

  1. 使用以下命令获取表的模式如图,列,类型架构列。如图2-32所示。

osquery>. schema users

osquery>. schema processes

 

图2-32 获取表的模式

 

 

2.2.6. 查询Linux文件监控

在此步骤中,将使用osquery监视实时Linux系统。 将通过osqueryi交互模式监控系统配置文件信息,用户,网络接口等。

  1. 获取系统信息如图2-32所示。

osquery> SELECT * FROM system_info;

 

图2-32 获取系统信息

显示有关系统硬件的详细信息。如图2-33 所示。

osquery> SELECT hostname, cpu_type, physical_memory, hardware_vendor, hardware_model FROM system_info;

 

图2-33 统硬件的详细信息

显示当前的操作系统信息,包括操作系统版本,平台,操作系统补丁和代号。如图2-34所示。

osquery>SELECT * FROM os_version;

 

图2-34 操作系统信息

 

2. 查看内核版本和模块,为了检查系统的内核信息,osquery提供了表'kernel_info'和'kernel_modules'。显示系统使用的内核。如图2-35所示。

osquery> SELECT * FROM kernel_info;

 

图2-35 内核版本和模块

3. 显示系统上所有已加载的内核模块。如图2-36所示。

osquery> SELECT * FROM kernel_modules LIMIT 5;

 

图2-36 已加载的内核模块

 

4. 检查存储库和包osquery提供了用于检查Linux Ubuntu和CentOS上的存储库和已安装软件包的表。在CentOS上,们可以通过'yum_sources'检查可用的存储库,并检查通过'rpm_packages'安装的软件包。

检查所有可用的CentOS存储库。如图2-37所示。

osquery> SELECT * FROM yum_sources;

 

图2-37 CentOS存储库

5. 查询yum源osquery> SELECT name, baseurl, enabled FROM yum_sources; 如图2-38所示。

 

图2-38 查询yum 源

  1. 通过添加“已启用”过滤器检查已启用的存储库。如图2-39所示。

osquery> SELECT name, baseurl, enabled FROM yum_sources WHERE enabled=1;

 

图2-39 已启用的存储库

  1. 使用rpm_packages表检查所有安装的软件包。如图2-40所示。

osquery> SELECT * FROM rpm_packages;

osquery> SELECT name, version FROM rpm_packages ORDER BY name;

 

 

图2-40 所有安装的软件包

对于特定包名称,请添加名称过滤器。如图2-41所示。

osquery> SELECT name, version FROM rpm_packages WHERE name="firewalld";

 

图2-41 特定包名称

装载磁盘信息可以使用mounts表来检查有关系统驱动器的所有详细信息,包括免费的inode,标志,类型等。

检查系统安装的所有磁盘。如图2-42所示。

osquery>SELECT * FROM mounts;

os

首页 上一页 3 4 5 6 7 8 下一页 尾页 6/8/8
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇linux添加软件的service start/st.. 下一篇Kali无法使用Chrome原因及解决方法

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目