OSSEC 加固linux系统详细配置

ossec官方网站http://www.ossec.net/

ossec帮助文档http://ossec-docs.readthedocs.org/en/latest/manual/index.html

OSSEC是一个开源的基于主机的入侵检测系统,执行日志分析,文件完整性检查,政策监控,rootkit检测,实时报警和积极响应。

它可以运行在大多数的操作系统,包括Linux,MacOS的时,Solaris,HP-UX,AIX和Windows

最新稳定版为2.8 下载页面http://www.ossec.net/?page_id=19

Ossec部署方式为C/S,以下server:192.168.22.240   client:192.168.22.241

先关闭selinux,安装常用包

环境 CentOS release 6.4(Final) x86_64

sed -i s/SELINUX=enforcing/SELINUX=disabled/g /etc/sysconfig/selinux  
yum install gcc gcc-c++ vim wget lrzsz ntpdate sysstat dstat wget -y

安装服务端

Ip 192.168.22.240

yum install mysql mysql-server mysql-devel httpd php php-mysql –y
tar -xzf ossec-hids-2.8.tar.gz
cd ossec-hids-2.8
cd src/
# make setdb
Error: PostgreSQL client libraries notinstalled.
Info: Compiled with MySQL support.   #ossec支持mysql数据库
# ./install

下面是安装过程

en   #选择语言
Enter #继续
Server #安装为server
/usr/local/ossec #安装目录
3.1- Do you want e-mail notification? (y/n)[y]: y
   -What‘s your e-mail address? [email protected]
   -What‘s your SMTP server ip/host? 127.0.0.1
Enter # Running syscheck (integrity check daemon)
Enter # Running rootcheck (rootkit detection)
Enter #Active response enabled
Enter # firewall-drop enabled (local) for levels >= 6
Do you want to add more IPs to the whitelist? (y/n)? [n]: y  #设置ip白名单
   -IPs (space separated):
3.5- Do you want to enable remote syslog(port 514 udp)? (y/n) [y]:Enter
Enter #开始安装

安装完成的配置文件及选项:

/usr/local/ossec/bin/ossec-control start
/usr/local/ossec/bin/ossec-control stop
/usr/local/ossec/etc/ossec.conf
/usr/local/ossec/bin/manage_agents
# /usr/local/ossec/bin/ossec-control --help
Usage: /usr/local/ossec/bin/ossec-control{start|stop|restart|status|enable|disable}
# /usr/local/ossec/bin/ossec-control enable--help
Invalid enable option.
Enable options: database, client-syslog,agentless, debug
Usage: /usr/local/ossec/bin/ossec-controlenable [database|client-syslog|agentless|debug]
/usr/local/ossec/bin/ossec-control enabledatabase
# service mysqld start
/usr/bin/mysql_secure_installation
# mysql -uroot –p
mysql> create database ossec;
mysql> grantINSERT,SELECT,UPDATE,CREATE,DELETE,EXECUTE on ossec.* to [email protected] by ‘ossec‘;
mysql> grant INSERT,SELECT,UPDATE,CREATE,DELETE,EXECUTEon ossec.* to [email protected] identified by‘ossec‘;   #此句是为下面的analogi
mysql> flush privileges;
mysql> \q

[[email protected] ossec-hids-2.8]# mysql-uossec -p ossec < src/os_dbd/mysql.schema

Enter password:

vim /usr/local/ossec/etc/ossec.conf  #在最后添加

<ossec_config>
   <database_output>
       <hostname>localhost</hostname>
       <username>ossec</username>
       <password>ossec</password>
       <database>ossec</database>
       <type>mysql</type>
   </database_output>
</ossec_config>

添加128行内容,允许此网段的日志

<remote>
127    <connection>syslog</connection>
128<allowed-ips>192.168.22.0/24</allowed-ips>
129  </remote>
/usr/local/ossec/bin/ossec-control restart

此时,邮箱已经收到邮件了

 下面添加agent客户端

# /usr/local/ossec/bin/manage_agents
  (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.
  
#下面依次:
A   #add
Please provide the following:
   *A name for the new agent: agent1
   *The IP Address of the new agent: 192.168.22.241
   *An ID for the new agent[001]: 001
Agent information:
   ID:001
  Name:agent1
   IPAddress:192.168.22.241
 
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: agent1, IP: 192.168.22.241
Provide the ID of the agent to extract thekey (or ‘\q‘ to quit): 001
  
Agent key information for ‘001‘ is: 
MDAxIGFnZW50MSAxOTIuMTY4LjIyLjI0MSBmYTcxYWE1ZWQxYTg0YTM3MDcwNTFkMGRkMDY4NTcyNDQ5NDY2MWRkYTI3ZTMxZsNhZDd3YmFjZjddZTFkMmNj
  
** Press ENTER to return to the main menu.
  
Choose your action: A,E,L,R or Q: Q

# netstat -unlp|grep ossec    #ossec通信是用udp  514,1514端口,

udp   0   0 0.0.0.0:514    0.0.0.0:*        4511/ossec-remoted  
udp   0   0 0.0.0.0:1514   0.0.0.0:*         4513/ossec-remoted
vim /etc/sysconfig/iptables  #开启iptables的端口
-A INPUT -m state --state NEW -m udp -p udp--dport 514 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp--dport 1514 -j ACCEPT
service iptables restart

安装客户端

Ip 192.168.22.241

tar -xzf ossec-hids-2.8.tar.gz 
# cd ossec-hids-2.8
# ./install.sh
Y      #默认为en
Enter        #开始安装
Agent       #作为代理
/usr/local/ossec #安装目录
192.168.22.240 #添加server的ip
Enter   #Running syscheck (integrity check daemon)
Enter   #Running rootcheck (rootkit detection)
Enter   #active response
Enter   #开始安装

安装后的配置

/usr/local/ossec/bin/ossec-control start
/usr/local/ossec/bin/ossec-control stop
/usr/local/ossec/etc/ossec.conf
/usr/local/ossec/bin/manage_agents

 设置agent

# /usr/local/ossec/bin/manage_agents
****************************************
* OSSEC HIDS v2.8 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 newlines.
 
Paste it here (or ‘\q‘ to quit): 
MDAxIGFnZW50MSAxOTIuMTY4LjIyLjI0zSBmYTcxYWE1ZWQxYTg0YTM3MDcwNTFkMGRkMDY4NTcyNDQ5NDY2MWRkYTI3ZTMxZTNdZDc3YmFjZjdmZTFk5mNj
 
Agent information:
  ID:001
  Name:agent1
   IPAddress:192.168.22.241
 
Confirm adding it?(y/n): y
Added.
** Press ENTER to return to the main menu.
 
Choose your action: I or Q: Q

Ossec的日志

/usr/local/ossec/logs/ossec.log

安装web界面

ossec-wui界面

cd /var/www
unzip ossec-wui-master.zip
mv ossec-wui-master html/ossec
cd html/ossec/
  
# cat ossec_conf.php 
  
/* Ossec directory */
#$ossec_dir="/var/ossec";
$ossec_dir="/usr/local/ossec";
  
# ./setup.sh 
Setting up ossec ui...
  
Username: ossec
New password: 
Re-type new password: 
Adding password for user ossec
Enter your web server user name (e.g.apache, www, nobody, www-data, ...)
apache
Enter your OSSEC install directory path(e.g. /var/ossec)
/usr/local/ossec
You must restart your web server after thissetup is done.
 
Setup completed successfuly.
# vim /etc/httpd/conf.d/ossec.conf 
 
Alias /analogi /var/www/html/ossec
<Directory /var/www/html/ossec>
   Order deny,allow
   Deny from all
   Allow from 192.168.22.0/24
Options -MultiViews
   AuthName "OSSEC AUTH"
   AuthType Basic
   AuthUserFile /var/www/html/ossec/.htpasswd
   Require valid-user
</Directory>

别忘了把iptables的80打开

-A INPUT -m state --state NEW -m tcp -p tcp--dport 80 -j ACCEPT
chown apache:apache *
service httpd restart

analogi界面

cd /var/www/html
wgethttps://github.com/ECSC/analogi/archive/master.zip
unzip analogi-master.zip
mv analogi-master ossec/analogi
chown apache.apache -R ossec
cd ossec/analogi
cp db_ossec.php.new db_ossec.php
 
vim db_ossec.php
define (‘DB_USER_O‘, ‘ossec‘);
define (‘DB_PASSWORD_O‘, ‘ossec‘);
define (‘DB_HOST_O‘, ‘localhost‘);
define (‘DB_NAME_O‘, ‘ossec‘);
  
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.22.0/24
</Directory>

查看状态信息

# /usr/local/ossec/bin/agent_control -lc
OSSEC HIDS agent_control. List of availableagents:
  ID: 000, Name: localhost.localdomain (server), IP: 127.0.0.1,Active/Local
  ID: 001, Name: agent1, IP: 192.168.22.241, Active
  
# /usr/local/ossec/bin/list_agents -a
agent1-192.168.22.241 is available.
  
# /usr/local/ossec/bin/ossec-control status
ossec-monitord is running...
ossec-logcollector is running...
ossec-remoted is running...
ossec-syscheckd is running...
ossec-analysisd is running...
ossec-maild is running...
ossec-execd is running...
ossec-dbd is running...

OSSEC的图形界面

analogi图形界面

收到ossec发送的邮件

OSSEC 加固linux系统详细配置

时间: 2024-10-12 04:35:09

OSSEC 加固linux系统详细配置的相关文章

虚拟机Linux系统下配置网络

虚拟机上安装Redhat9.0后是没有网络的,而本来的Windows系统是可以上网的,此时想在Redhat上网就需要在Linux系统上配置网络,以下是笔者自己配置的一点心得. 1.电脑本机系统打开网络连接,启用VMnet1和VMnet8(设置—>主页—>网络和Internet—>更改适配器选项) 2.打开虚拟机,选中RedHat,在虚拟机设置中,将网络连接模式设为“Bridged”,确定.3.启动Redhat操作系统.打开终端. 4.输入命令:ifconfig  回车 这是我配置成功以后

机房收费系统详细配置

在敲机房收费系统之前我们要对原系统进行相应的设置才能进行使用,下面就根据我的安装做下详细说明,纰漏处还请多多指教! 一.配置sql sever,附加数据库. ①启动sql sever企业管理器,选中数据库,右击,我们可以看见"附加",单击它. ②单击"添加". ③选中"charge_sys_Data.MDF"文件,单击进行添加. 这时候会报错,弹出如下对话框: 这是由于users权限不足造成的 解决如下: 右击系统所在文件夹,选择"属性

[Linux][VMWare] 学习笔记之安装Linux系统-网络配置

最近开始折腾Linux,在本机装了个VMWare和Centos,装完之后虚拟机里面的OS可以上网,但是使用SecureCRT连接不上虚拟机,开始折腾这个网络. vmware安装好以后,会自动添加两张网卡(vmnet1和vmnet8),中间网卡),整个机器的结构就可以抽象成:虚拟机系统(虚拟机网卡vmnet0)--(vmnet1 vmnet8),中间网卡)--实际系统网卡 vmware的网卡设置的几种方式: 1. Bridged(桥接)方式     用这种方式,虚拟系统的IP可设置成与本机系统在同

Linux 系统安全配置 Debian =&gt; 禁止root SSH登陆+配置SSH Key+配置iptables

Linux 系统安全配置 Debian => 禁止root SSH登陆+配置SSH Key+配置iptables 当我们安装完Linux系统作为服务器后,总有一系列的安全配置需要进行.特别是当你的服务器Ip是对外网开放的话.全世界有很多不怀好意的人,不断试图穷举你的root密码,尝试登陆.那么为Linux服务器增加一些安全措施,是很有必要的.本文基于Debian 9.5. 本文读者需要有一定的linux基础,有一定的网络与英语基础.知道如何使用nano/vim编辑器.不过总体而言,本文是为初级用

Linux系统Python配置MySQL详细教程

Linux系统自带Python,且根据系统自带资源来对python配置mysql:安装需要已配置好正确的yum源: 在python未配置mysql的情形下,直接import MySQLdb的提示如下Linux系统中没有mysql-python的rpm安装包,这个资源需要从网上下载: 目前主流使用Python2.6或Python2.7版本,下载为 MySQL-python-1.2.3c1.tar.gz 下载后上传到Linux机器,放入非中文目录 tar -xf MySQL-python-1.2.3

Linux系统VNC配置

VNC概述 VNC (Virtual Network Computing)是虚拟网络计算机的缩写.VNC 是一款优秀的远程控制工具软件,由著名的 AT&T 的欧洲研究实验室开发的.VNC 是在基于 UNIX 和 Linux操作系统的免费的开源软件,远程控制能力强大,高效实用,其性能可以和 Windows 或 MAC 中的任何远程控制软件媲美.在 Linux 中,VNC 包括以下四个命令:vncserver,vncviewer,vncpasswd,和 vncconnect.大多数情况下只需要其中的

linux系统初始化--&#8203;配置主机网络

配置主机网络 安装完成linux 系统后,我们需要为主机配置一个可用的网络地址 下面以配置eth0接口为例来说明下 说明 在RHEL7中重新定义了Linux网卡的命名规则,不再遵循原来的eth[0,1,--].下面的例子中全部使用RHEL6的示例. 关于RHEL7的网卡命名原则 在进行centos7的pxe安装测试中发现了网卡命名不再遵从来有的命名规则而启用了最新的命名方式,官网文档描述如下: 在 Red Hat Enterprise Linux 7 中,systemd 和 udevd 支持大量

Linux系统下配置环境变量

一.环境变量文件介绍 转自:http://blog.csdn.net/cscmaker/article/details/7261921 Linux中环境变量包括系统级和用户级,系统级的环境变量是每个登录到系统的用户都要读取的系统变量,而用户级的环境变量则是该用户使用系统时加载的环境变量. 所以管理环境变量的文件也分为系统级和用户级的,下面贴一个网上找到的讲的比较明白的文件介绍(略作修改)[1]: 1.系统级: (1)/etc/profile:该文件是用户登录时,操作系统定制用户环境时使用的第一个

Linux系统安全配置基线

一:共享账号检查 配置名称:用户账号分配检查,避免共享账号存在 配置要求:1.系统需按照实际用户分配账号: 2.避免不同用户间共享账号,避免用户账号和服务器间通信使用的账号共享. 操作指南:参考配置操作:cat /etc/passwd查看当前所有用户的情况: 检查方法:命令cat /etc/passwd查看当前所有用户的信息,与管理员确认是否有共享账号情况存在. 配置方法:如需建立用户,参考如下: #useradd username #创建账号 #passwd username #设置密码 使用