最详细的OSSEC入侵检测系统的安装教程

0x01 前言

OSSEC是一款开源的多平台的入侵检测系统,可以运行于Windows, Linux, OpenBSD/FreeBSD, 以及 MacOS等操作系统中。包括了日志分析,全面检测,root-kit检测。网上能找到关于OSSEC的安装教程与详细使用并不多,本人实测,没有一个教程能完整照着文档的步骤安装成功吧。在安装过程中会存在许多坑等你来填。对于Linux并不是那么熟的人来说,OSSEC的安装并不容易,所以就有必要把OSSEC的安装教程重写一遍了。一是自己对OSSEC的安装做一个复习与总结,二也是希望能够帮助大家能快速上手这款功能强大的OSSEC入侵检测系统,毕竟商业版的IDS确定很贵的。大部分个人是无法承受的。

0x02 准备工作

服务端:
准备好:Centos6 64位(必须是Centos6 新机器)。
内存不小于: 1GB以上。
硬盘:20GB以上。
本次安装机器的IP:108.61.119.62

0x03 安装过程

3.1、关闭防火墙,因为ossec通信需要是用udp 514,1514端口等等端口对外,Agent才能上线。为了方便演示,咱们先直接关闭防火墙即可。

Centos 6关闭防火墙方式

  • service iptables stop #临时关闭防火墙
  • chkconfig iptables off #彻底关闭系统防火墙
  • service iptables status #查看防火墙的状态
[root@vultr ~]# service iptables stop 
iptables: Setting chains to policy ACCEPT: filter          [  OK  ]
iptables: Flushing firewall rules:                         [  OK  ]
iptables: Unloading modules:                               [  OK  ]
[root@vultr ~]# chkconfig iptables off 
[root@vultr ~]# 

3.2、防火墙关闭好了后,接着安装一些必要的工具

  • 如下应用: wget、gcc、make、mysql、mysql-server、mysql-devel、httpd、php、php-mysql、sendmail

使用以下命令一键快速安装::

yum install wget gcc make mysql mysql-server mysql-devel httpd php php-mysql sendmail

3.3、没有报错即相应软件包安装完成:

image.png

3.4、启动httpd、mysql、sendmail这三个服务:

命令:

[root@ossec-server ~] /etc/init.d/httpd start
[root@ossec-server ~] /etc/init.d/mysqld start
[root@ossec-server ~] /etc/init.d/sendmail start
image.png

3.5、创建OSSEC数据库

命令:

[root@ossec-server ~] mysql -uroot -p
mysql> create database ossec;
mysql> grant INSERT,SELECT,UPDATE,CREATE,DELETE,EXECUTE on ossec.* to ossec@localhost;
mysql> set password for ossec@localhost =PASSWORD('ossec');
mysql> flush privileges;
mysql> exit

上面SQL的语句意思是新建一个ossec的用户,密码为:ossec,只可以在localhost上登录,ossec用户可以对ossec的所有表进行插入、查询、修改、插入、删除的操作。

3.6、下载OSSEC服务端

wget https://github.com/ossec/ossec-hids/archive/2.8.1.tar.gz
tar zxf  2.8.1.tar.gz
cd ossec-hids-2.8.1/

3.7、使OSSEC支持Mysql

cd src; make setdb; cd ..

看到如下的信息说明可以正常支持MySQL:

image.png

3.8、正式安装OSSEC服务端

执行install.sh脚本,根据提示的选项填写,看我的:

OSSEC HIDS v2.8 安装脚本 - http://www.ossec.net
您将开始 OSSEC HIDS 的安装.
请确认在您的机器上已经正确安装了 C 编译器.
如果您有任何疑问或建议,请给 [email protected] (或 [email protected]) 发邮件.
 - 系统类型: Linux vultr.guest 2.6.32-754.6.3.el6.x86_64
 - 用户: root
 - 主机: vultr.guest
 -- 按 ENTER 继续或 Ctrl-C 退出. --
1- 您希望哪一种安装 (server, agent, local or help)? server
 - 选择了 Server 类型的安装.
2- 正在初始化安装环境.
- 请选择 OSSEC HIDS 的安装路径 [/var/ossec]: /var/ossec
   - OSSEC HIDS 将安装在  /var/ossec .
3- 正在配置 OSSEC HIDS.
 3.1- 您希望收到e-mail告警吗? (y/n) [y]: n
  --- Email告警没有启用 .
 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]: n
    - 联动功能(Active response)被关闭.
 3.5- 您希望接收远程机器syslog吗 (port 514 udp)? (y/n) [y]: y
  - 远程机器syslog将被接收.
 3.6- 设置配置文件以分析一下日志:
   -- /var/log/messages
   -- /var/log/secure
   -- /var/log/maillog
   -- /var/log/httpd/error_log (apache log)
   -- /var/log/httpd/access_log (apache log)            
-如果你希望监控其他文件, 只需要在配置文件ossec.conf中
 添加新的一项. 
 任何关于配置的疑问您都可以在 http://www.ossec.net 找到答案.
 --- 按 ENTER 以继续 ---
回车

…………省略编译输出…………

安装完成将会输出以下:

- 系统类型是  Redhat Linux.
 - 修改启动脚本使 OSSEC HIDS 在系统启动时自动运行 
 - 已正确完成系统配置.
 - 要启动 OSSEC HIDS:
                /var/ossec/bin/ossec-control start
 - 要停止 OSSEC HIDS:
                /var/ossec/bin/ossec-control stop
 - 要查看或修改系统配置,请编辑  /var/ossec/etc/ossec.conf
    感谢使用 OSSEC HIDS.
    如果您有任何疑问,建议或您找到任何bug,
    请通过 [email protected] 或邮件列表 [email protected] 联系我们.    
    ( http://www.ossec.net/en/mailing_lists.html ).
    您可以在 http://www.ossec.net 获得更多信息
    --- 请按 ENTER 结束安装 (下面可能有更多信息). ---
 - 为使代理能够联接服务器端, 您需要将每个代理添加到服务器.
   允许'manage_agents'来添加活删除代理:
   /var/ossec/bin/manage_agents
   详细信息请参考: 
   http://www.ossec.net/en/manual.html#ma

3.9、启用数据库支持:

/var/ossec/bin/ossec-control enable database

3.9.1、然后导入MySQL表结构到MySQL中

mysql -uossec -p ossec < ./src/os_dbd/mysql.schema

3.9.2、修改部分配置文件的权限,否则会启动服务失败:

 chmod u+w /var/ossec/etc/ossec.conf

3.9.3、然后我们编辑/var/ossec/etc/ossec.conf文件,在ossec_config中添加如下MySQL配置:

   
       108.61.119.62
       ossec
       ossec
       ossec
       mysql
   

3.9.4、OSSEC支持接受远程机器的syslog,所以还需要对ossec.conf文件中的syslog部分进行配置,修改/var/ossec/etc/ossec.conf文件,按照下面的内容进行修改,把我们的客户端(Agent)的网段可以全添加进去:

 
    syslog
    192.168.0.0/16
  
image.png

3.9.5、 服务器上添加客户端,创建客户端Key

执行如下命令:

[root@vultr etc]# /var/ossec/bin/manage_agents
****************************************
* OSSEC HIDS v2.8 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
- Adding a new agent (use '\q' to return to the main menu).
 Please provide the following:
  * A name for the new agent: ossec-agent
  * The IP Address of the new agent: 192.168.80.32
  * An ID for the new agent[001]: 001
Agent information:
  ID:001
  Name:ossec-agent
  IP Address:192.168.80.32
Confirm adding it?(y/n): Y
Agent added.
****************************************
* OSSEC HIDS v2.8 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  
Available agents: 
  ID: 001, Name: ossec-agent, IP: 192.168.80.32
Provide the ID of the agent to extract the key (or '\q' to quit): 001
Agent key information for '001' is: 
MDAxIG9zc2VjLWFnZW50IDE5Mi4xNjguODAuMzIgZTU4ZThhMWU3YTZjYzhhMzVlYmQwNDg1YWQxZjhkMGU2YTIxM2QyZGZjYjE3NTdmZDczMWJhYjEwM2FkZmUyNw==
** Press ENTER to return to the main menu.

客户的Key,用于后面的客户端的连接,需要记录保存。

3.9.6、 启动ossec服务端,到此安装完成

[root@vultr etc]#  /var/ossec/bin/ossec-control start
Starting OSSEC HIDS v2.8 (by Trend Micro Inc.)...
Started ossec-dbd...
2019/04/05 19:59:01 ossec-maild: INFO: E-Mail notification disabled. Clean Exit.
Started ossec-maild...
Started ossec-execd...
Started ossec-analysisd...
Started ossec-logcollector...
Started ossec-remoted...
Started ossec-syscheckd...
Started ossec-monitord...
Completed.

0x04、关于使用、Agent的上线、报规则的编写、图表的展示**

你可能感兴趣的:(最详细的OSSEC入侵检测系统的安装教程)