OSSEC初探
概念:
OSSEC是一款开源的基于主机的入侵检测系统(HIDS),它可以执行日志分析、完整性检验、windows注册表监控、隐匿性检测和实时告警。它可以运行在各种不同的操作系统上,包括Linux、OpenBSD、Mac OS X、Solaris和windows。
架构:
OSSEC由多个模块组成,包括服务端、agent端、数据库、日志系统等。
简单的理解,OSSEC工作于C/S模式,由agent监控收集信息上报给Server端,Server端对信息进行分析和预处理,并通过邮件将系统的变化发送给管理员。
server端保存所有的规则信息,解码器、主要配置选项,用于处理agent上报的信息,这样使得管理大量的客户端变得简单易配置,
agent是个很小的程序,用于监控系统,收集上报信息,只会占用很小的CPU和内存资源。
安装:
OS Version:CentOS 6.5
OSSEC Version:2.8.3
安装依赖:
yum -y install mysql-devel
mysql配置:
mysql -uroot -p
mysql> create database ossec;
Query OK, 1 row affected (0.02 sec)
mysql> grant all on ossec.* to ossec@localhost identified by 'ossec';
Query OK, 0 rows affected, 1 warning (0.01 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.02 sec)
安装:
tar -zxvf ossec-hids-2.8.3.tar.gz
cd ossec-hids-2.8.3/src
make setdb
Info: Compiled with MySQL support.
cd ..
./install.sh
进入交互式安装界面
** Para instalação em português, escolha [br].
** 要使用中文进行安装, 请选择 [cn].
** Fur eine deutsche Installation wohlen Sie [de].
** Για εγκατάσταση στα Ελληνικά, επιλέξτε [el].
** For installation in English, choose [en].
** Para instalar en Español , eliga [es].
** Pour une installation en français, choisissez [fr]
** A Magyar nyelvű telepítéshez válassza [hu].
** Per l'installazione in Italiano, scegli [it].
** 日本語でインストールします.選択して下さい.[jp].
** Voor installatie in het Nederlands, kies [nl].
** Aby instalować w języku Polskim, wybierz [pl].
** Для инструкций по установке на русском ,введите [ru].
** Za instalaciju na srpskom, izaberi [sr].
** Türkçe kurulum için seçin [tr].
(en/br/cn/de/el/es/fr/hu/it/jp/nl/pl/ru/sr/tr) [en]: cn #选择cn
OSSEC HIDS v2.8.3 安装脚本 - http://www.ossec.net 您将开始 OSSEC HIDS 的安装.
请确认在您的机器上已经正确安装了 C 编译器.
如果您有任何疑问或建议,请给 [email protected] (或 [email protected]) 发邮件. - 系统类型: Linux Master 2.6.32-573.el6.x86_64
- 用户: root
- 主机: Master -- 按 ENTER 继续或 Ctrl-C 退出. --
1- 您希望哪一种安装 (server, agent, local or help)? server #服务端选择server,客户端选择agent - 选择了 Server 类型的安装. 2- 正在初始化安装环境. - 请选择 OSSEC HIDS 的安装路径 [/var/ossec]: /usr/local/ossec - OSSEC HIDS 将安装在 /usr/local/ossec . 3- 正在配置 OSSEC HIDS. 3.1- 您希望收到e-mail告警吗? (y/n) [y]: y
- 请输入您的 e-mail 地址? [email protected]
- 请输入您的 SMTP 服务器IP或主机名 ? test 3.2- 您希望运行系统完整性检测模块吗? (y/n) [y]: y - 系统完整性检测模块将被部署. 3.3- 您希望运行 rootkit检测吗? (y/n) [y]: y - rootkit检测将被部署. 3.4- 关联响应允许您在分析已接收事件的基础上执行一个
已定义的命令.
例如,你可以阻止某个IP地址的访问或禁止某个用户的访问权限.
更多的信息,您可以访问:
http://www.ossec.net/en/manual.html#active-response
- 您希望开启联动(active response)功能吗? (y/n) [y]: y - 关联响应已开启 - 默认情况下, 我们开启了主机拒绝和防火墙拒绝两种响应.
第一种情况将添加一个主机到 /etc/hosts.deny.
第二种情况将在iptables(linux)或ipfilter(Solaris,
FreeBSD 或 NetBSD)中拒绝该主机的访问.
- 该功能可以用以阻止 SSHD 暴力攻击, 端口扫描和其他
一些形式的攻击. 同样你也可以将他们添加到其他地方,
例如将他们添加为 snort 的事件. - 您希望开启防火墙联动(firewall-drop)功能吗? (y/n) [y]: y - 防火墙联动(firewall-drop)当事件级别 >= 6 时被启动 - 联动功能默认的白名单是:
- 114.114.114.114
- 218.85.152.99
- 218.85.157.99 - 您希望添加更多的IP到白名单吗? (y/n)? [n]: y
- 请输入IP (用空格进行分隔): 8.8.8.8 3.5- 您希望接收远程机器syslog吗 (port 514 udp)? (y/n) [y]: y - 远程机器syslog将被接收. 3.6- 设置配置文件以分析一下日志:
-- /var/log/messages
-- /var/log/secure
-- /var/log/maillog -如果你希望监控其他文件, 只需要在配置文件ossec.conf中
添加新的一项.
任何关于配置的疑问您都可以在 http://www.ossec.net 找到答案. --- 按 ENTER 以继续 ---
完成安装,开始进行配置
添加ossec用户和组:
useradd ossec
useradd ossecm -g ossec
useradd ossecr -g ossec
/usr/local/ossec/bin/ossec-control enable database
mysql -uossec -p < ./src/os_dbd/mysql.schema #新增表
chmod u+w /usr/local/ossec/etc/ossec.conf
vim /usr/local/ossec/etc/ossec.conf
添加
<database_output>
<hostname>127.0.0.1</hostname>
<username>ossec</username>
<password>ossec</password>
<database>ossec</database>
<type>mysql</type>
</database_output>
<remote>
<connection>syslog</connection>
<allowed-ips>192.168.1.0/24</allowed-ips>
</remote> <remote>
<connection>secure</connection>
<allowed-ips>192.168.1.0/24</allowed-ips>
</remote>
添加agent
/usr/local/ossec/bin/manage_agents
****************************************
* OSSEC HIDS v2.8.3 Agent manager. *
* The following options are available: *
****************************************
(A)dd an agent (A).
(E)xtract key for an agent (E).
(L)ist already added agents (L).
(R)emove an agent (R).
(Q)uit.
Choose your action: A,E,L,R or Q: A #选择添加agent - Adding a new agent (use '\q' to return to the main menu).
Please provide the following:
* A name for the new agent: ossec-agent-7 #agent的名词
* The IP Address of the new agent: 192.168.1.7
* An ID for the new agent[001]: #默认,直接按Enter
Agent information:
ID:001
Name:ossec-agent-7
IP Address:192.168.1.7 Confirm adding it?(y/n): y
Agent added. ****************************************
* OSSEC HIDS v2.8.3 Agent manager. *
* The following options are available: *
****************************************
(A)dd an agent (A).
(E)xtract key for an agent (E).
(L)ist already added agents (L).
(R)emove an agent (R).
(Q)uit.
Choose your action: A,E,L,R or Q: E #查找Agent的key,在安装agent端时需插入该key Available agents:
ID: 001, Name: ossec-agent-7, IP: 192.168.1.7
Provide the ID of the agent to extract the key (or '\q' to quit): 001 Agent key information for '001' is:
MDAxIG9zc2VjLWFnZW50LTcgMTkyLjE2OC4xLjcgMDNjNDc0ZDFmYWM0ZGZkMjgzOTQ5NjIwMTYzZGZkZmYxYjNkMTJhMTA3MjcwNWFiMDEwOTVhOWFmNGFhZmFlNw== ** Press ENTER to return to the main menu
/usr/local/ossec/bin/ossec-control start
Agent安装配置:
** Para instalação em português, escolha [br].
** 要使用中文进行安装, 请选择 [cn].
** Fur eine deutsche Installation wohlen Sie [de].
** Για εγκατάσταση στα Ελληνικά, επιλέξτε [el].
** For installation in English, choose [en].
** Para instalar en Español , eliga [es].
** Pour une installation en français, choisissez [fr]
** A Magyar nyelvű telepítéshez válassza [hu].
** Per l'installazione in Italiano, scegli [it].
** 日本語でインストールします.選択して下さい.[jp].
** Voor installatie in het Nederlands, kies [nl].
** Aby instalować w języku Polskim, wybierz [pl].
** Для инструкций по установке на русском ,введите [ru].
** Za instalaciju na srpskom, izaberi [sr].
** Türkçe kurulum için seçin [tr].
(en/br/cn/de/el/es/fr/hu/it/jp/nl/pl/ru/sr/tr) [en]: cn
which: no host in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin)
OSSEC HIDS v2.8.3 安装脚本 - http://www.ossec.net 您将开始 OSSEC HIDS 的安装.
请确认在您的机器上已经正确安装了 C 编译器.
如果您有任何疑问或建议,请给 [email protected] (或 [email protected]) 发邮件. - 系统类型: Linux localhost.localdomain 3.10.0-327.el7.x86_64
- 用户: root
- 主机: localhost.localdomain -- 按 ENTER 继续或 Ctrl-C 退出. -- 1- 您希望哪一种安装 (server, agent, local or help)? agent - 选择了 Agent(client) 类型的安装. 2- 正在初始化安装环境. - 请选择 OSSEC HIDS 的安装路径 [/var/ossec]: /usr/local/ossec - OSSEC HIDS 将安装在 /usr/local/ossec . 3- 正在配置 OSSEC HIDS. 3.1- 请输入 OSSEC HIDS 服务器的IP地址或主机名: 192.168.1.7 - 添加服务器IP 192.168.1.7 3.2- 您希望运行系统完整性检测模块吗? (y/n) [y]: y - 系统完整性检测模块将被部署. 3.3- 您希望运行 rootkit检测吗? (y/n) [y]: y - rootkit检测将被部署. 3.4 - 您希望开启联动(active response)功能吗? (y/n) [y]: y 3.5- 设置配置文件以分析一下日志:
-- /var/log/messages
-- /var/log/secure
-- /var/log/maillog -如果你希望监控其他文件, 只需要在配置文件ossec.conf中
添加新的一项.
任何关于配置的疑问您都可以在 http://www.ossec.net 找到答案. --- 按 ENTER 以继续 ---
从服务端获取key,并插入到客户端:
/usr/local/ossec/bin/manage_agents
****************************************
* OSSEC HIDS v2.8.3 Agent manager. *
* The following options are available: *
****************************************
(I)mport key from the server (I).
(Q)uit.
Choose your action: I or Q: I * Provide the Key generated by the server.
* The best approach is to cut and paste it.
*** OBS: Do not include spaces or new lines. Paste it here (or '\q' to quit):
MDAxIG9zc2VjLWFnZW50LTcgMTkyLjE2OC4xLjcgMDNjNDc0ZDFmYWM0ZGZkMjgzOTQ5NjIwMTYzZGZkZmYxYjNkMTJhMTA3MjcwNWFiMDEwOTVhOWFmNGFhZmFlNw==
/usr/local/ossec/bin/ossec-control start
参考: