OSSEC(二)

OSSEC(二)

0前言

  今天尝试实现Ossec的可视化内容,根据内部的文档进行查看,教程使用的是wui进行使用,由于wui早已经不进行相关维护,这里在使用wui搭建完毕后,也开始analogi等内容的尝试,又因为analogi的数据版本只符合2.8以下的相关内容,这里依旧是沿用了昨天的低版本ossec进行安装

  参考链接:

1
https://github.com/ossec/ossec-hids/archive/2.8.1.tar.gz

1.低版本ossec安装(2.8)

  • 前期环境准备

  由于安装需要用到的关联库和软件,由于我们最终是需要把日志导入到MySQL中进行分析,以及需要通过web程序对报警结果进行展示等多种,所以需要在本机安装MySQL、Apache和sendmail服务

1
2
3
4
5
6
7
yum install wget gcc make mysql-devel httpd php php-mysql sendmail
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
rpm -ivh mysql-community-release-el7-5.noarch.rpm
yum -y install mysql-server
systemctl start httpd
systemctl start mysqld
systemctl start sendmail

  这里由于centos的问题,直接yum install后会无法启动mysql服务,这里沿用了前面的安装办法,进行了mysql的配置确保哪有服务打开(其实写入一个脚本也能够使用yum install安装后的mysql服务,但是会比较消耗时间)

  依旧是数据库的准备

1
2
3
4
5
6
7
8
/usr/bin/mysql_secure_installation

mysql -uroot –proot
create database ossec;
grant INSERT,SELECT,UPDATE,CREATE,DELETE,EXECUTE on ossec.* to ossec@localhost;
set password for ossec@localhost =PASSWORD('ossec');
flush privileges;
exit

  大概的环境已经准备完毕,接下来就是进行低版本ossec服务器的安装了

  • 服务器安装

  由于官网的2.8.1版本已经没了,这里去github找了一个压缩包进行安装:

1
2
3
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
1
2
3
cd src
make setdb
cd ..

  看到info:compiled with mysql support则说明可以正常支持MySQL,之后进行安装

1
./install.sh

  这个安装前面进行了很多次了,这里就不进行相关的描述了,接下来配置数据库支持

1
2
3
/var/ossec/bin/ossec-control enable database
mysql -uossec -p ossec < ./src/os_dbd/mysql.schema
chmod u+w /var/ossec/etc/ossec.conf

  接下来编辑ossec.conf文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<ossec_config>
<database_output>
<hostname>localhost</hostname>
<username>ossec</username>
<password>ossec</password>
<database>ossec</database>
<type>mysql</type>
</database_output>
</ossec_config>

<remote>
<connection>syslog</connection>
<allowed-ips>192.168.0.0/16</allowed-ips>
</remote>

  根据资料检测,说由于3.1和2.8的版本不同,2.8版本在开启前必须添加一个客户端,否则直接启动服务端会失败并进行报错处理,但是我在实现的过程中并没有遇到这个问题,直接就能开启了,后续我也是添加了一个服务端,由于前面进行了讲述,操作是一致的,这里就不进行阐述了,直接看结果:

  接下来进行可视化界面搭建

2.可视化版本-analogi界面

  • 安装apache

  为什么不安装nginx呢,因为apache安装比较快速,这里为节省时间因此直接采用yum命令直接安装,虽然前面有安装,但是这里是在3.0的ossec版本进行操刀,也是为了验证analogi是否确实无法符合3.0版本:

1
2
3
4
5
6
# 安装apache
yum install httpd
# 设置服务器开机启动apache
systemctl enable httpd.service
# 启动apache
systemctl start httpd.service

  执行后效果:

  注:Apache默认将网站的根目录指向/var/www/html,其中默认的主配置文件/etc/httpd/conf/httpd.conf,而配置存储在的/etc/httpd/conf.d/目录

  • 安装anallogi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 下载analogi压缩包
wget https://github.com/ECSC/analogi/archive/master.zip
# 解压压缩包
unzip master
# 解压后的文件夹移动到Web服务器的根目录
mv analogi-master/ /var/www/html/analogi
# 进入Web服务器的根目录
cd /var/www/html/
# 更改所有者和所属组
chown -R apache.apache analogi/
# 进入analogi文件夹。
cd analogi/
# 复制db_ossec.php.new文件并将重命名
cp db_ossec.php.new db_ossec.php

  到这一步,analogi就安装成功了,接下来我们需要进行mysql的数据进行连接,因此需要修改配置

  • 编辑配置文件

  在这个环节我们需要修改两个内容你,一个是analogi的设置使得能够进行mysql数据库连接,另外就是apache配置,提那家出虚拟的目录,从而达到能够访问的作用。首先打开analogi中的db_ossec.php文件,修改对应的mysql配置信息,填写为正确的用户账号和密码等内容:

1
2
3
4
define ('DB_USER_O', 'ossec');
define ('DB_PASSWORD_O', 'ossec');
define ('DB_HOST_O', '127.0.0.1');
define ('DB_NAME_O', 'ossec');

  然后修改apache配置,添加出虚拟目录

1
2
3
4
5
6
7
8
vim /etc/httpd/conf.d/analogi.conf

Alias /analogi /var/www/html/analogi
<Directory /var/www/html/analogi>
Order deny,allow
Deny from all
Allow from 192.168.0.0/16
</Directory>

  配置完毕后进行重启查看状态(可以能用reload,养成好习惯)

1
2
ervice httpd restart
service httpd status
  • 访问analogi网站

  前面的相关配置已经完备,接下来访问ip/analogi网站:

  可以看到是403错误,也就是forbidden的报错,这里猜测是由于安全机制的阻挡,导致了无法访问的情况,方便起见,这里进行了安全配置取消,当然我们也可以寻找对应的端口进行开放,不过前面设置了只有192.168的网段才能进行访问,问题不大

1
2
3
4
# 停止Firewalld服务,需要注意这意味着防火墙将不再处于活动状态
systemctl stop firewalld.service
# 临时禁用SELinux的命令
setenforce 0

  最后再次访问对应地址:

  上面是由于没有安装php导致的没有渲染问题,那就开始安装php和php-mysql

1
yum install php php-mysql

  安装后会遇到访问是空白的情况,这是因为权限的问题,我们前面使用了cp指令在root用户下,因此对应的db_ossec.php是root的用户组所属,我们需要修改

  直接执行

1
2
cd ..
chown -R apache.apache analogi/

  最终就嫩完成访问了:

  由于版本这里用的是3.1版本的ossec,数据表格无法进行适配,,这也是为什么前面进行了低版本的原因,根据网上的说法,analogi适配于2.8版本以下的osse,所以这里开一小结对前面的2.8版本进行延续图形化界面使用和展示,大体思路是一样的,这里只是不需要我们再进行安装apache的步骤,后续操作没有太大变化

  2.8版本成功出现图形化界面

3.可视化版本-wui界面

  • 安装wui

  前往网站下载wui压缩包

1
https://github.com/ossec/ossec-wui/releases
1
2
3
4
wget https://github.com/ossec/ossec-wui/archive/refs/tags/0.9.tar.gz
tar –zxvf 0.9.tar.gz
mv ossec-wui-0.9/ /var/www/html/wui
cd /var/www/html
  • 编辑配置文件
1
2
3
chown –R apache.apache wui/
cd wui
ll
1
2
3
4
5
6
7
8
9
10
11
12
ls
./setup.sh

Username: ossec
New password: ossec
Re-type new password: ossec
Adding password for user ossec
Enter your web server user name (e.g. apache, www, nobody, www-data, ...)
apache
You must restart your web server after this setup is done.

Setup completed successfully.

  这里为了好辨认一些,改下文件名字

1
2
cd ..
mv wui/ ossec

  然后修改ossec.conf 文件,其实与analogi差不多:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
vim /etc/httpd/conf.d/ossec.conf

<Directory /var/www/html/ossec>
Order deny,allow
Deny from all
Allow from 192.168.0.0/16

Options FollowSymLinks
AllowOverride None
Order deny,allow
allow from all

options -Multiviews
AuthName "OSSEC AUTH"
AuthType Basic
AuthUserFile /var/www/html/ossec/.htpasswd
Require valid-user
</Directory>
1
2
3
chow –R apache.apache ossec/
cd ossec/
ll

  进行httpd重启

1
service httpd restart

  然后访问:

1
192.168.70.237/ossec

  最后输入之前所设置的账号密码进行登录即可:


OSSEC(二)
https://one-null-pointer.github.io/2023/08/11/Linux运维——Ossec安装(2)/
Author
liaoyue
Posted on
August 11, 2023
传送口