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 编译器.
如果您有任何疑问或建议,请给 dcid@ossec.net (或 daniel.cid@gmail.com) 发邮件. - 系统类型: 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 地址? test@163.com
- 请输入您的 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安装配置:

useradd ossec
tar -zxvf ossec-hids-2.8.3.tar.gz
cd  ossec-hids-2.8.3/src
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
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 编译器.
如果您有任何疑问或建议,请给 dcid@ossec.net (或 daniel.cid@gmail.com) 发邮件. - 系统类型: 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

参考:

http://ossec.github.io/docs/

OSSEC初探的更多相关文章

  1. 初探领域驱动设计(2)Repository在DDD中的应用

    概述 上一篇我们算是粗略的介绍了一下DDD,我们提到了实体.值类型和领域服务,也稍微讲到了DDD中的分层结构.但这只能算是一个很简单的介绍,并且我们在上篇的末尾还留下了一些问题,其中大家讨论比较多的, ...

  2. CSharpGL(8)使用3D纹理渲染体数据 (Volume Rendering) 初探

    CSharpGL(8)使用3D纹理渲染体数据 (Volume Rendering) 初探 2016-08-13 由于CSharpGL一直在更新,现在这个教程已经不适用最新的代码了.CSharpGL源码 ...

  3. 从273二手车的M站点初探js模块化编程

    前言 这几天在看273M站点时被他们的页面交互方式所吸引,他们的首页是采用三次加载+分页的方式.也就说分为大分页和小分页两种交互.大分页就是通过分页按钮来操作,小分页是通过下拉(向下滑动)时异步加载数 ...

  4. JavaScript学习(一) —— 环境搭建与JavaScript初探

    1.开发环境搭建 本系列教程的开发工具,我们采用HBuilder. 可以去网上下载最新的版本,然后解压一下就能直接用了.学习JavaScript,环境搭建是非常简单的,或者说,只要你有一个浏览器,一个 ...

  5. .NET文件并发与RabbitMQ(初探RabbitMQ)

    本文版权归博客园和作者吴双本人共同所有.欢迎转载,转载和爬虫请注明原文地址:http://www.cnblogs.com/tdws/p/5860668.html 想必MQ这两个字母对于各位前辈们和老司 ...

  6. React Native初探

    前言 很久之前就想研究React Native了,但是一直没有落地的机会,我一直认为一个技术要有落地的场景才有研究的意义,刚好最近迎来了新的APP,在可控的范围内,我们可以在上面做任何想做的事情. P ...

  7. 【手把手教你全文检索】Apache Lucene初探

    PS: 苦学一周全文检索,由原来的搜索小白,到初次涉猎,感觉每门技术都博大精深,其中精髓亦是不可一日而语.那小博猪就简单介绍一下这一周的学习历程,仅供各位程序猿们参考,这其中不涉及任何私密话题,因此也 ...

  8. Key/Value之王Memcached初探:三、Memcached解决Session的分布式存储场景的应用

    一.高可用的Session服务器场景简介 1.1 应用服务器的无状态特性 应用层服务器(这里一般指Web服务器)处理网站应用的业务逻辑,应用的一个最显著的特点是:应用的无状态性. PS:提到无状态特性 ...

  9. NoSQL初探之人人都爱Redis:(3)使用Redis作为消息队列服务场景应用案例

    一.消息队列场景简介 “消息”是在两台计算机间传送的数据单位.消息可以非常简单,例如只包含文本字符串:也可以更复杂,可能包含嵌入对象.消息被发送到队列中,“消息队列”是在消息的传输过程中保存消息的容器 ...

随机推荐

  1. Zabbix实战-简易教程(1)--总流程

    序 玩zabbix已经几年了,一直想分享一些相关的使用经验和心得,但是总以各种借口而拖延,最近准备重新整理,记录一些实际工作环境中的示例,一方面希望能够帮助正在学习或者正在寻找这方面资料的朋友,另一方 ...

  2. Swagger的简单入门【转载】

    一.Swagger简介 上一篇文章中我们介绍了Spring Boot对Restful的支持,这篇文章我们继续讨论这个话题,不过,我们这里不再讨论Restful API如何实现,而是讨论Restful ...

  3. [hdu5632][BC#73 1002]Rikka with Array

    点开BC发现今晚没比赛..然后似乎上一场有数位DP?...(幸好我没去 一开始被BCDcode那题的思路带歪了..后来发现得把n转成二进制才能搞TAT 题目大概是要求一种类似逆序对的鬼东西: 有一个长 ...

  4. Android Studio解决导入项目非常慢的问题

    http://www.androidchina.net/5527.html Android Studio比Eclipse ADT有巨大的优势. Android Studio原生支持使用Gradle来构 ...

  5. typedef和define具体的详细区别

    1) #define是预处理指令,在编译预处理时进行简单的替换,不作正确性检查,不关含义是否正确照样带入,只有在编译已被展开的源程序时才会发现可能的错误并报错.例如: #define PI 3.141 ...

  6. Java技术分享:如何编写servlet程序

    身为计算机专业的我,从接触java至今,已经有七年之久,从最开始的小白到现在的大白,这是一个漫长而曲折的历程. 大学刚接触Java这个学科时,一点儿都不理解java是要干嘛的,只知道学起来肯定不容易, ...

  7. GBK,UTF8是什么?有什么区别,做网站选择哪种好?

    GBK包含全部中文字符: UTF-8则包含全世界所有国家需要用到的字符. GBK是在国家标准GB2312基础上扩容后兼容GB2312的标准(好像还不是国家标准) UTF-8编码的文字可以在各国各种支持 ...

  8. ubuntu-apache下隐藏thinkphp入口文件index.php

    按照thinkphp手册中来讲,apache服务器下,隐藏thinkphp入口文件有3步: httpd.conf配置文件中加载了mod_rewrite.so模块 AllowOverride None ...

  9. ios知识点总结——UITableView的展开与收缩及横向Table

    UITableVIew是iOS开发中使用最为广泛的一种控件,对于UITableView的基本用法本文不做探讨,本文主要是针对UITableView的展开与收缩进行阐述,在文章的后面也会探讨一下横向ta ...

  10. SDP(3):ScalikeJDBC- JDBC-Engine:Fetching

    ScalikeJDBC在覆盖JDBC基本功能上是比较完整的,而且实现这些功能的方式比较简洁,运算效率方面自然会稍高一筹了.理论上用ScalikeJDBC作为一种JDBC-Engine还是比较理想的:让 ...