当前位置: 首页 > news >正文

开源USM之HIDS ossec

  上次我们介绍到USM之IDS suricata,今天我要与大家分享的是安全管理平台百宝箱中的主机IDS检测系统[HIDS],主机IDS检测系统是对网络IDS检测系统的补充。下面就让我们一起聊一聊Ossec吧。

1、简介

  OSSEC是一款开源的IDS检测系统,包括了日志分析、完整性检查、rook-kit检测,基于时间的警报和主动响应。OSSEC最大的优势在于它几乎可以运行在任何一种操作系统上,比如Windows, Linux, OpenBSD,FreeBSD, 以及 MacOS。

环境:
server: centos 6.7 x86_64 172.31.30.100 【具说OpenBSD安全性最好】
agent: fedora 27 x86_64 172.31.30.101
ossec_version: 2.8.3
开源USM之HIDS ossec
下载地址
wget https://codeload.github.com/ossec/ossec-hids/tar.gz/v2.8.3
源码最新版:https://codeload.github.com/ossec/ossec-hids/tar.gz/2.9.3

2、ossec 架构

开源USM之HIDS ossec

开源USM之HIDS ossec

  • ossec三种工作模式

  • server【服务端】
  • agent【代理端】
  • local【本地模式】
  • 一台server默认可有代理256台,最多支持2048台,需先执行sysctl -w kern.maxfiles=2048

3、安装

  • ossec server端安装

    1.关闭selinux,关闭iptables

  • 2.解压安装
    # tar xvzf ossec-hids-2.8.3.tar.gz
    # cd ossec-hids-2.8.3
    # ./install.sh

  • 3.启动ossec
    # service ossec start

  • 4.查看进程
    # ps -aux |grep ossec

ossec client端安装

  • # tar xvzf ossec-hids-2.8.3.tar.gz
    # cd ossec-hids-2.8.3
    # ./install.sh

部署拓扑

开源USM之HIDS ossec

可视化分析

开源USM之HIDS ossec

ossec server添加ossec client

1.服务器端操作
# /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 【添加agent】

- Adding a new agent (use '\q' to return to the main menu).
  Please provide the following:
   * A name for the new agent: node1 【agent名称】

   * The IP Address of the new agent: 172.31.30.101 【agentIP地址】
   * An ID for the new agent[001]: 
Agent information:
   ID:001
   Name:web
   IP Address:172.31.30.101

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 【创建KEY】

Available agents: 
   ID: 001, Name: web, IP: 172.31.30.101
Provide the ID of the agent to extract the key (or '\q' to quit): 001 【输入agent ID】

这个key用于客户端连接服务器
Agent key information for '001' is: 
MDA2IG5vZGU1IDE3Mi4yOC4yMC4xMDcgOGIxZDc0MjgyZTFkZjRhZjE0ODU2MzAwMjc4ZTNlNjBhZWJiMmZhOTY3N2UxYjFhMGI2MmRlZmRjOGJkNmIzNQ==

** Press ENTER to return to the main menu.

****************************************

2.客户端操作
1)导入 key
# /var/ossec/bin/manage_agents

****************************************
* OSSEC HIDS v2.6 Agent manager. *
* The following options are available: *
****************************************
(I)mport key from the server (I).
(Q)uit.
Choose your action: I or Q: I 【导入KEY】将服务端KEY复制到下面并按回车MDA2IG5vZGU1IDE3Mi4yOC4yMC4xMDcgOGIxZDc0MjgyZTFkZjRhZjE0ODU2MzAwMjc4ZTNlNjBhZWJiMmZhOTY3N2UxYjFhMGI2MmRlZmRjOGJkNmIzNQ==

2)启动ossec
# /var/ossec/bin/ossec-control start
3)查看端口
# netstat -antup|grep ossec

  • 启动 OSSEC HIDS:
    /var/ossec/bin/ossec-control start
  • 停止 OSSEC HIDS:
    /var/ossec/bin/ossec-control stop

配置完成!

4、操作命令

# bin/ossec-control

> start: 启动各项服务
> stop: 停止各项服务
> restart: 重启各项服务
> status: 查看各项服务状态
> enable: [database|client-syslog|agentless|debug] 启动功能支持
> disable: [database|client-syslog|agentless|debug] 关闭功能支持

# bin/agent_control (仅服务端有)

-l 列举所有可用的agents,服务端会有一个local,表示自身也作为一个agent被监控
-lc 仅列举活跃的agents
-i <id> 显示对应id的Agent的信息
-R <id> 重启对应id的Agent
-r -a 在所有agents上立即运行完整性和rootkit检查
-r -u <id> 在指定的agent上立即运行完整性和rootkit检查
-b <ip> 阻止指定的ip地址
-f <ar> 配合-b使用,指定运行哪个响应
-L 列举可用的联动
-s 更改输出到CSV(用,分隔)

# bin/manage_agents

-V 显示ossec版本信息
-l 列举可用的agents,这里不会显示local的信息
-e <id> 得到某个agent的key(服务器用)
-r <id> 移除某个agent(服务器用)
-i <id> 导入key(客户端用)
-f <file> 从文件导入keys(服务器用),文件格式为IP,NAME

5、配置web访问

安装依赖包
# yum -y install wget lrzsz gcc mysql mysql-server mysql-devel httpd php php-mysql postgresql
ossec-wui web界面
# wget https://github.com/ossec/ossec-wui/archive/0.9.tar.gz
# tar -xf ossec-wui-0.9.tar.gz
# cd /var/www/html/ossec/ossec-wui

设置web用户名密码
# ./setup.sh

Setting up ossec ui...
Username: admin
New password: 
Re-type new password: 
Adding password for user admin
Setup completed successfuly.

添加web用户
# vi /etc/group
ossec:x:500:apache

设置权限
# chmod 770 tmp/
# chgrp apache tmp/
# vi /etc/httpd/conf.d/ossec.conf

<Directory /var/www/html/ossec/ossec-wui>
   Order deny,allow
   Deny from all
   Allow from 172.31.30.0/24

    Options FollowSymLinks  
    AllowOverride None      
    Order deny,allow        
    allow from all          

Options -MultiViews
   AuthName "OSSEC AUTH"
   AuthType Basic
   AuthUserFile /var/www/html/ossec/ossec-wui/.htpasswd
   Require valid-user
</Directory>

OSSEC的图形界面
访问URL: http://172.31.30.100/ossec/ossec-wui/
开源USM之HIDS ossec

6、总结

  如何深入使用OSSEC,就需要对OSSEC的规则进行细分和梳理,配置好相应的事件报警规则,采集到主机报警信息后,我们就可以进行安全防护和安全分析了。OSSEC除了主机检测系统功能外,一般还被用在SEM/SIM(安全事件管理(SEM: Security Event Management)/安全信息管理(SIM:SecurityInformation Management))解决方案中。今后我们会把OSSEC应用到USM中,作为统一安全管理平台的核心插件之一。
开源USM之HIDS ossec

常见问题解决方法

1)agent未连接(Disconnected或Never connected)的状态
# /var/ossec/bin/ossec-control restart
# /etc/init.d/ossec restart
用ngrep命令查看服务端的1514端口的流量信息,看看是否有日志传输过来,一般等10s左右。
# ngrep -q -d any port 1514

2)查看ossec是否支持mysql
# cd /u01/ossec-hids-2.8.3/src
# make setdb
Info: Compiled with MySQL support.

3)文件描述符限制
linux系统默认最大打开文件数为1024,需要修改内核参数为2048
# ulimit -n 2048
# sysctl -w kern.maxfiles=2048
# sysctl -w net.core.rmem_default=5123840
# sysctl -w net.core.rmem_max = 5123840

设置开机自启动,在该文件最后添加
# vi /etc/profile
ulimit -n 2048
# vi /etc/security/limits.conf
ossec soft nofile 2048
ossec hard nofile 2048
ossecr soft nofile 2048
ossecr hard nofile 2048

设置完成之后,执行命令生效
# source /etc/profile
# sysctl -p

查看是否成功设置open files为2048
# ulimit -a

转载于:https://blog.51cto.com/redone/2067575

相关文章:

  • SVN的标准目录结构:trunk、branches、tags(转)
  • hdu 2844 混合背包【背包dp】
  • MySQL高可用架构之MHA
  • Js基础知识(四) - js运行原理与机制
  • Bootstrap your Django admin in 3 minutes
  • CALayer动画专题
  • 虽然看的一知半解,但是感觉有一天用到时会很有用,转
  • B1016. 部分A+B (15)
  • OSGi与第一层语义
  • 如何避免TiddlyWiki变慢
  • 山寨一个 Promise
  • 重写、覆盖、重载、多态几个概念的区别分析
  • Ankara prefabrik evler
  • oracle 简单SQL
  • 快速安装配置zabbix_agent端
  • 《网管员必读——网络组建》(第2版)电子课件下载
  • C++类中的特殊成员函数
  • CentOS6 编译安装 redis-3.2.3
  • ES6, React, Redux, Webpack写的一个爬 GitHub 的网页
  • JavaScript HTML DOM
  • java第三方包学习之lombok
  • leetcode378. Kth Smallest Element in a Sorted Matrix
  • oldjun 检测网站的经验
  • PaddlePaddle-GitHub的正确打开姿势
  • 关于 Linux 进程的 UID、EUID、GID 和 EGID
  • 入口文件开始,分析Vue源码实现
  • 推荐一款sublime text 3 支持JSX和es201x 代码格式化的插件
  • 线上 python http server profile 实践
  • 小程序开发之路(一)
  • 小李飞刀:SQL题目刷起来!
  • Play Store发现SimBad恶意软件,1.5亿Android用户成受害者 ...
  • ​卜东波研究员:高观点下的少儿计算思维
  • #gStore-weekly | gStore最新版本1.0之三角形计数函数的使用
  • #数学建模# 线性规划问题的Matlab求解
  • (5)STL算法之复制
  • (a /b)*c的值
  • (二开)Flink 修改源码拓展 SQL 语法
  • (附源码)springboot炼糖厂地磅全自动控制系统 毕业设计 341357
  • (南京观海微电子)——COF介绍
  • (十二)devops持续集成开发——jenkins的全局工具配置之sonar qube环境安装及配置
  • (转)母版页和相对路径
  • .NET DataGridView数据绑定说明
  • .net wcf memory gates checking failed
  • .NET教程 - 字符串 编码 正则表达式(String Encoding Regular Express)
  • :=
  • [AS3]URLLoader+URLRequest+JPGEncoder实现BitmapData图片数据保存
  • [C/C++] -- 二叉树
  • [c]扫雷
  • [C++]二叉搜索树
  • [CISCN2021 Quals]upload(PNG-IDAT块嵌入马)
  • [C和指针].(美)Kenneth.A.Reek(ED2000.COM)pdf
  • [Dxperience.8.*]报表预览控件PrintControl设置
  • [HNOI2015]实验比较
  • [IE编程] 如何获得IE版本号
  • [IE技巧] 如何关闭Windows Server版IE的安全限制