来源自我的博客
http://www.yingzinanfei.com/2016/09/18/ossecjianalogianzhuangyushiyong/
ossec是一个开源的多平台的入侵检测系统,功能包括日志分析、系统完整性检查、注册表监控、rootkit检测、实时警报和联动(active response)功能。
ossec可只安装在一台主机上,实现对本机的监控,方式为local。也可采用client-server的方式实现在client上监控,server上处理分析。C-S模式可以实现多台client同时监控。
# yum install wget gcc make mysql mysql-server mysql-devel httpd php php-mysql sendmail
for i in {httpd,mysqld,sendmail};
do service $i restart;
done
# mysql
mysql> create database ossec;
mysql> grant INSERT,SELECT,UPDATE,CREATE,DELETE,EXECUTE on ossec.* to ossec@localhost;
mysql> flush privileges;
mysql> exit
上述语句的意思是新增一个用户ossec密码为空,让他只可以在localhost上登录,并可以对数据库ossec的所有表进行插入、查询、修改、插入、删除的操作
# tar zxvf ossec-hids-2.8.3.tar.gz
# cd ossec-hids-2.8.3
# cd src/
验证是否支持mysql
# sudo make setdb
如果出现Mysql support表示支持
# cd ..
# sudo ./install.sh
1. 选择安装类型:server
2. 选择安装路径:/var/ossec
3. 是否收到e-mail告警:y
e-mail地址:***@xx.com
smtp地址:127.0.0.1(注意这里手动输入,而不要使用软件自动检测出的地址)
4. 系统完整性检测模块:y
5. rootkit检测模块:y
6. 联动功能:y
7. 防火墙联动功能:y
8. 添加更多ip到白名单:n
9. 希望接收远程机器syslog:y(此步为接收客户端日志的关键)
完成安装
以上配置均可在安装后从配置文件中更改,所以可一路回车快速完成安装
ossec配置文件位置
/var/ossec/etc/ossec.conf
# /var/ossec/bin/ossec-control enable database
下面进入的是安装包解压后的目录,因为src文件夹中有数据表,需要将其导入到数据库中,使用了重定向来完成导入
# cd ossec-hids-2.8.1
# mysql -uossec -p ossec < ./src/os_dbd/mysql.schema
# chmod u+w /var/ossec/etc/ossec.conf
表示使当前用户(u)添加写入(w)的权限
<ossec_config>
<global>
<email_notification>yes>email_notification>
<email_to>***@xx.comemail_to>
<smtp_server>127.0.0.1smtp_server>
global>
<database_output>
<hostname>127.0.0.1hostname>
<username>ossecusername>
<password>ossecpassword>
<database>ossecdatabase>
<type>mysqltype>
database_output>
<remote>
<connection>syslogconnection>
<allowed-ips>192.168.122.0/24allowed-ips>
remote>
ossec_config>
# /var/ossec/bin/manage_agents
# A
agent name:ossec-agent
agent ip:192.168.122.156(填客户端ip)
agent id:001
confirm adding:y
添加此Agent后可用L显示
# L
使用E产生key供下文的客户端使用
# E
id:001
退出manage_agents使用Q
# Q
# /var/ossec/bin/ossec-control restart
如果一切正常则启动服务后邮箱应该能收到一封alert level=3的邮件
# tar zxvf ossec-hids-2.8.3.tar.gz
# cd ossec-hids-2.8.3
# sudo ./install.sh
1. 选择安装方式:agent
2. 安装路径:/var/ossec
3. 服务器ip:192.168.122.1(这里根据服务器ip填相应的)
4. 系统完整性检测:y
5. rootkit检测:y
6. 联动功能:y
# /var/ossec/bin/manage_agents
导入key
# I
把上文中服务端产生的key粘贴到这里
confirm adding:y
# Q
# /var/ossec/bin/ossec-control restart
start 启动各项服务
stop 停止各项服务
restart 重启各项服务
status 查看各项服务状态
enable:[database|client-syslog|agentless|debug] 启动功能支持
disable:[database|client-syslog|agentless|debug] 关闭功能支持
-l 列举所有可用的agents,服务端会有一个local,表示自身也作为一个agent被监控
-lc 仅列举活跃的agents
-i 显示对应id的Agent的信息
-R 重启对应id的Agent
-r -a 在所有agents上立即运行完整性和rootkit检查
-r -u 在指定的agent上立即运行完整性和rootkit检查
-b 阻止指定的ip地址
-f 配合-b使用,指定运行哪个响应
-L 列举可用的联动
-s 更改输出到CSV(用,分隔)
-V 显示ossec版本信息
-l 列举可用的agents,这里不会显示local的信息
-e 得到某个agent的key(服务器用)
-r 移除某个agent(服务器用)
-i 导入key(客户端用)
-f 从文件导入keys(服务器用),文件格式为IP,NAME
1.将analogi解压到apache的http服务器根目录下,并改名为ossec
# pwd
/var/www/html
# unzip analogi-master.zip
# mv analogi-master ossec
2. 给apache用户的apache组添加对整个目录的所有权
# sudo chown -R apache.apache /var/www/html/ossec
3. 修改ossec目录下关于数据库连接的设置,使其能访问上文中建立的数据库
# cd ossec
# cp db_ossec.php.new db_ossec.php
# sudo vim db_ossec.php
define ('DB_USER_O', 'ossec'); 这里是mysql用户名
define ('DB_PASSWORD_O', 'ossec'); 这里是mysql密码
define ('DB_HOST_O', 'localhost'); 默认的是127.0.0.1,如果最后访问时提示无法访问mysql仍需要改成localhost
define ('DB_NAME_O', 'ossec'); 这里是数据库的名称
# cd /etc/httpd.conf.d
# sudo vim ossec.conf
Order deny,allow
Allow from 192.168.122.0/24 这里的ip段根据需要更改
# /etc/init.d/httpd restart