如何在CentOS 7服务器上安装OSSEC HIDS

介绍

OSSEC是一个基于主机的开源入侵检测系统(HIDS),它可以执行日志分析,完整性检查,Windows注册表监视,rootkit检测,基于时间的警报和主动响应。它是任何服务器上必备的安全应用程序。

OSSEC可以安装为仅监视其安装的服务器(本地安装),也可以作为服务器安装以监视一个或多个代理。在本教程中,您将学习如何安装OSSEC以将CentOS 7监视为本地安装。

先决条件

步骤1:安装必需的软件包

OSSEC将从源代码进行编译,因此您需要一个编译器才能使其成为可能。它还需要一个额外的通知包。通过键入以下命令安装它们:

sudo yum install -y gcc inotify-tools

第2步-下载并验证OSSEC

OSSEC是作为压缩的tarball交付的,必须从项目的网站下载。还必须下载校验和文件,该文件将用于验证tarball是否已被篡改。在本出版物发行时,最新版本的OSSEC是2.8.2。检查项目的下载页面,然后下载最新版本。

要下载压缩包,请输入:

wget -U ossec http://www.ossec.net/files/ossec-hids-2.8.2.tar.gz

对于校验和文件,键入:

wget -U ossec http://www.ossec.net/files/ossec-hids-2.8.2-checksum.txt

在下载了两个文件之后,下一步是验证压缩包的MD5和SHA1校验和。对于MD5sum,键入:

md5sum -c ossec-hids-2.8.2-checksum.txt

预期输出为:

ossec-hids-2.8.2.tar.gz: OK
md5sum: WARNING: 1 line is improperly formatted

要验证SHA1哈希,请键入:

sha1sum -c ossec-hids-2.8.2-checksum.txt

其预期输出为:

ossec-hids-2.8.2.tar.gz: OK
sha1sum: WARNING: 1 line is improperly formatted

步骤3:确定您的SMTP服务器

在OSSEC的安装过程中,系统将提示您为电子邮件地址指定SMTP服务器。如果您不知道它是什么,最简单的查找方法是从本地计算机发出此命令(将伪造的电子邮件地址替换为真实的电子邮件地址):

dig -t mx [email protected]

此代码块中显示了输出中的相关部分。在此示例输出中,用于查询电子邮件地址的SMTP服务器位于该行的末尾-mail.vivaldi.net。。请注意,末尾的点也包括在内。

;; ANSWER SECTION:
vivaldi.net.        300 IN  MX  10 mail.vivaldi.net.

步骤4:安装OSSEC

要安装OSSEC,首先需要打开tarball的包装,方法是输入:

tar xf ossec-hids-2.8.2.tar.gz

它将解压缩到包含程序名称和版本的目录中。更改或cd放入。OSSEC 2.8.2,本文安装的版本,有一个小错误,需要在开始安装之前进行修复。到发布下一个稳定版本(应该是OSSEC 2.9)时,由于该修补程序已经在master分支中,因此这不是必需的。为OSSEC 2.8.2修复此问题仅意味着编辑一个文件,该文件位于active-response目录中。该文件是hosts-deny.sh,因此请使用以下命令将其打开:

nano active-response/hosts-deny.sh

在文件末尾,查找以下代码块:

# Deleting from hosts.deny
elif [ "x$" = "xdelete" ]; then
   lock;
   TMP_FILE = `mktemp /var/ossec/ossec-hosts.XXXXXXXXXX`
   if [ "X$" = "X" ]; then
      # Cheap fake tmpfile, but should be harder then no random data
      TMP_FILE = "/var/ossec/ossec-hosts.`cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -1 `"
   fi

在以TMP_FILE开头的行上,删除=号周围的空格。删除空格后,文件的该部分应如下面的代码块所示。保存并关闭文件。

# Deleting from hosts.deny
elif [ "x$" = "xdelete" ]; then
   lock;
   TMP_FILE=`mktemp /var/ossec/ossec-hosts.XXXXXXXXXX`
   if [ "X$" = "X" ]; then
      # Cheap fake tmpfile, but should be harder then no random data
      TMP_FILE="/var/ossec/ossec-hosts.`cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -1 `"
   fi

现在已经修复了,我们可以输入以下内容来开始安装过程:

sudo ./install.sh

在整个安装过程中,系统将提示您提供一些输入。在大多数情况下,您只需要按Enter即可接受默认设置。首先,系统将提示您选择安装语言,默认情况下为英语(en)。因此,如果这是您的首选语言,请按Enter。否则,请输入支持的语言列表中的2个字母。之后,再次按ENTER

第一个问题将询问您所需的安装类型。在这里输入local

1- What kind of installation do you want (server, agent, local, hybrid or help)? local

对于后续问题,请按Enter以接受默认设置。问题3.1将提示您输入电子邮件地址,然后询问您的SMTP服务器。对于该问题,请输入有效的电子邮件地址和您在步骤3中确定的SMTP服务器。

3- Configuring the OSSEC HIDS.

   3.1- Do you want e-mail notification? (y/n) [y]: 
      - What's your e-mail address? [email protected]
      - What's your SMTP server ip/host?

如果安装成功,您应该看到以下输出:

- Configuration finished properly.

...

    More information can be found at http://www.ossec.net

    ---  Press ENTER to finish (maybe more information below). ---

ENTER完成安装。

步骤5:启动OSSEC

OSSEC已安装,但尚未启动。要启动它,首先切换到root帐户。

sudo su

然后,通过发出以下命令来启动它。

/var/ossec/bin/ossec-control start

然后,检查您的收件箱。OSSEC应发出警报,通知您它已启动。这样,您现在知道已经安装了OSSEC,并将根据需要发送警报。

步骤6:自定义OSSEC

OSSEC的默认配置可以正常工作,但是可以进行一些设置调整,以使其更好地保护服务器。要自定义的第一个文件是主配置文件- ossec.conf,您可以在/var/ossec/etc目录中找到它。打开文件:

nano /var/ossec/etc/ossec.conf

验证的第一项是电子邮件设置,您将在文件的全局部分找到该设置:

<global>
   <email_notification>yes</email_notification>
   <email_to>[email protected]</email_to>
   <smtp_server>mail.vivaldi.net.</smtp_server>
   <email_from>[email protected]</email_from>
</global>

确保email_from地址是有效的电子邮件。否则,某些电子邮件提供商的SMTP服务器会将来自OSSEC的警报标记为垃圾邮件。如果未设置服务器的FQDN,则电子邮件的域部分将设置为服务器的主机名,因此此设置您确实要具有有效的电子邮件地址。

您要自定义的另一个设置(尤其是在测试系统时)是OSSEC进行审核的频率。该设置位于syscheck部分,默认情况下,每22小时运行一次。要测试OSSEC的警报功能,您可能需要将其设置为较低的值,但之后将其重置为默认值。

<syscheck>
   <!-- Frequency that syscheck is executed - default to every 22 hours -->
   <frequency>79200</frequency>

默认情况下,将新文件添加到服务器时,OSSEC不会发出警报。要更改此设置,请在<frequency>标签下添加一个新标签。完成后,该部分现在应包含:

<syscheck>
   <!-- Frequency that syscheck is executed - default to every 22 hours -->
   <frequency>79200</frequency>

   <alert_new_files>yes</alert_new_files>

最好更改的最后一项设置是在OSSEC应该检查的目录列表中。您会在上一个设置之后立即找到它们。默认情况下,目录显示为:

<!-- Directories to check  (perform all possible verifications) -->
   <directories check_all="yes">/etc,/usr/bin,/usr/sbin</directories>
   <directories check_all="yes">/bin,/sbin</directories>

修改这两行以使OSSEC实时报告更改。完成后,他们应阅读:

<directories report_changes="yes" realtime="yes" check_all="yes">/etc,/usr/bin,/usr/sbin</directories>
<directories report_changes="yes" realtime="yes" check_all="yes">/bin,/sbin</directories>

保存并关闭文件。

我们需要修改的下一个文件local_rules.xml/var/ossec/rules目录中。因此cd进入该目录:

cd /var/ossec/rules

该目录包含OSSEC的规则文件,除local_rules.xml文件外,均不得修改。在该文件中,我们添加了自定义规则。我们需要添加的规则是添加新文件时触发的规则。默认情况下,编号为554的规则不会触发警报。这是因为触发级别为零的规则时,OSSEC不会发出警报。

这是规则554默认情况下的样子。

 <rule id="554" level="0">
    <category>ossec</category>
    <decoded_as>syscheck_new_entry</decoded_as>
    <description>File added to the system.</description>
    <group>syscheck,</group>
 </rule>

我们需要在local_rules.xml文件中添加该规则的修改版本。该修改的版本在下面的代码块中给出。将其复制并添加到文件底部,紧接在结束标记之前。

 <rule id="554" level="7" overwrite="yes">
    <category>ossec</category>
    <decoded_as>syscheck_new_entry</decoded_as>
    <description>File added to the system.</description>
    <group>syscheck,</group>
 </rule>

保存并关闭文件,然后重新启动OSSEC。

/var/ossec/bin/ossec-control restart

更多信息

OSSEC是一款功能非常强大的软件,本文仅涉及基础知识。您可以在官方文档中找到更多自定义设置。



Leave a Comment

如何在CentOS 7上安装Oxwall

如何在CentOS 7上安装Oxwall

Oxwall是一个开源社交网络软件平台,可用于免费构建自定义社交网站(SNS)。在这篇文章中,

如何在CentOS 7上设置vsFTPd

如何在CentOS 7上设置vsFTPd

FTP是用于通过Internet传输文件的有用协议,本指南将向您展示如何设置vsFTPd(非常安全的文件传输协议守护程序)o

使用Nethogs监视网络带宽使用情况

使用Nethogs监视网络带宽使用情况

在本教程中,我们将介绍在CentOS 6x x64上安装和使用nethogs的过程。nethogs是一种网络监视工具,它允许Networ

如何在CentOS 7上安装BoltWire CMS

如何在CentOS 7上安装BoltWire CMS

使用其他系统?简介BoltWire是一个用PHP编写的免费,轻量级的内容管理系统。与大多数其他内容管理人员相比

在CentOS 6上设置SA-MP San Andreas多人服务器

在CentOS 6上设置SA-MP San Andreas多人服务器

欢迎来到另一个Vultr教程。在这里,您将学习如何安装和运行SAMP服务器。本指南是为CentOS 6编写的。先决条件

使用Etckeeper进行/ etc的版本控制

使用Etckeeper进行/ etc的版本控制

简介/ etc /目录在Linux系统运行中起着至关重要的作用。其原因是因为几乎每个系统配置

如何在CentOS 7上安装Microweber

如何在CentOS 7上安装Microweber

使用其他系统?Microweber是一个开放源代码的拖放式CMS和在线商店。Microweber源代码托管在GitHub上。本指南将向您展示

如何在CentOS 7上安装SonarQube

如何在CentOS 7上安装SonarQube

使用其他系统?SonarQube是用于质量系统开发的开源工具。它是用Java编写的,并且支持多个数据库。它提供

如何在CentOS 7上使用Mosh进行远程服务器管理

如何在CentOS 7上使用Mosh进行远程服务器管理

使用其他系统?Mosh是Mobile Shell的缩写,是一种新兴的远程终端应用程序,旨在提供更好的连接和使用

如何在CentOS 7上安装MoinMoin

如何在CentOS 7上安装MoinMoin

MoinMoin是一个使用Python编写的基于文件系统的开源Wiki引擎。如今,MoinMoin已广泛用于开源社区。许多供应商

在CentOS 7上安装H2O Web服务器

在CentOS 7上安装H2O Web服务器

H2O是新一代HTTP服务器,它对所有当前使用的Web服务器都具有出色的,功能齐全的HTTP / 2实现。使用H2O作为您的Web服务器

如何在Debian,CentOS和FreeBSD上使用Sudo

如何在Debian,CentOS和FreeBSD上使用Sudo

在Linux和Unix系统管理员中,使用sudo用户访问服务器并在root级执行命令是一种非常普遍的做法。使用泡沫

如何在Ubuntu 16.10上安装Countly Analytics

如何在Ubuntu 16.10上安装Countly Analytics

使用其他系统?Countly是一个开源Web /移动分析和营销平台。它具有许多用于从Web收集数据的功能

如何在CentOS 7上安装MODX CMS和Nginx

如何在CentOS 7上安装MODX CMS和Nginx

MODX是一个用PHP编写的免费开放源内容管理系统。它使用MySQL或MariaDB来存储其数据库。MODX专为满足以下条件的企业而设计:

如何在CentOS 7 LAMP VPS上安装Lychee 3.1相册

如何在CentOS 7 LAMP VPS上安装Lychee 3.1相册

使用其他系统?Lychee 3.1相册是一种简单,灵活,免费和开源的照片管理工具,可在VPS服务器上运行。安装

如何在CentOS 7上安装ERPNext开源ERP

如何在CentOS 7上安装ERPNext开源ERP

使用其他系统?ERP或企业资源计划是用于管理核心业务流程的企业应用程序套件。ERPNext是免费的

如何在CentOS 7 LAMP VPS上安装Paste 2.1

如何在CentOS 7 LAMP VPS上安装Paste 2.1

使用其他系统?Paste 2.1是一个简单,灵活,免费和开源的pastebin应用程序,用于存储代码,文本等。最初是

如何在CentOS 7上安装Seafile Server

如何在CentOS 7上安装Seafile Server

使用其他系统?Seafile(社区版本)是一个免费和开源的文件同步和共享解决方案,类似于ownCloud。机智

如何在CentOS 7上安装Kolab组件

如何在CentOS 7上安装Kolab组件

使用其他系统?Kolab Groupware是一个免费的基于Web的开源组件软件。它的功能包括电子邮件通信,事件

如何在CentOS 7 LAMP VPS上安装Omeka Classic 2.4 CMS

如何在CentOS 7 LAMP VPS上安装Omeka Classic 2.4 CMS

使用其他系统?Omeka Classic 2.4 CMS是一个免费的开源数字发布平台和用于共享数字内容的内容管理系统(CMS)

AI 能否應對越來越多的勒索軟件攻擊?

AI 能否應對越來越多的勒索軟件攻擊?

勒索軟件攻擊呈上升趨勢,但人工智能能否幫助應對最新的計算機病毒?AI 是答案嗎?在這裡閱讀知道是 AI 布恩還是禍根

ReactOS:這是 Windows 的未來嗎?

ReactOS:這是 Windows 的未來嗎?

ReactOS,一個開源和免費的操作系統,這裡有最新版本。它能否滿足現代 Windows 用戶的需求並打倒微軟?讓我們更多地了解這種老式但更新的操作系統體驗。

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

Whatsapp 終於為 Mac 和 Windows 用戶推出了桌面應用程序。現在您可以輕鬆地從 Windows 或 Mac 訪問 Whatsapp。適用於 Windows 8+ 和 Mac OS 10.9+

人工智能如何將流程自動化提升到新的水平?

人工智能如何將流程自動化提升到新的水平?

閱讀本文以了解人工智能如何在小型公司中變得流行,以及它如何增加使它們成長並為競爭對手提供優勢的可能性。

macOS Catalina 10.15.4 補充更新引發的問題多於解決

macOS Catalina 10.15.4 補充更新引發的問題多於解決

最近,Apple 發布了 macOS Catalina 10.15.4 補充更新以修復問題,但似乎該更新引起了更多問題,導致 mac 機器變磚。閱讀這篇文章以了解更多信息

大數據的13個商業數據提取工具

大數據的13個商業數據提取工具

大數據的13個商業數據提取工具

什麼是日誌文件系統,它是如何工作的?

什麼是日誌文件系統,它是如何工作的?

我們的計算機以稱為日誌文件系統的有組織的方式存儲所有數據。這是一種有效的方法,可以讓計算機在您點擊搜索時立即搜索和顯示文件。 https://wethegeek.com/?p=94116&preview=true

技術奇點:人類文明的遙遠未來?

技術奇點:人類文明的遙遠未來?

隨著科學的快速發展,接管了我們的大量工作,我們陷入無法解釋的奇點的風險也在增加。閱讀,奇點對我們意味著什麼。

洞察 26 種大數據分析技術:第 1 部分

洞察 26 種大數據分析技術:第 1 部分

洞察 26 種大數據分析技術:第 1 部分

2021 年人工智能對醫療保健的影響

2021 年人工智能對醫療保健的影響

過去幾十年,醫療保健領域的人工智能取得了巨大飛躍。因此,醫療保健中人工智能的未來仍在日益增長。