开源安全平台SELKS实战

开源安全平台SELKS实战大家在进行SELKS实战之前必须具备Elastic Stack的基础知识。1.什么是SELKS ?SELKS是Stamus Networks公司所开发的一个开源ELK项目,社区版是在GPL v3

大家在进行SELKS实战之前必须具备Elastic Stack的基础知识。

1.什么是SELKS ?

SELKS是Stamus Networks公司所开发的一个开源ELK项目,社区版是在GPL v3许可下发布,目的是实现一个开箱即用的I...

大家在进行SELKS实战之前必须具备Elastic Stack的基础知识。

1.什么是SELKS ?

SELKS是Stamus Networks公司所开发的一个开源ELK项目,社区版是在GPL v3许可下发布,目的是实现一个开箱即用的IDS系统。社区版SELKS包括以下组件:

组件名称
Suricata
Elasticsearch
Logstash
Kibana
Scirus(社区版)

注:Scirius 社区版 是一个专门用于suricata规则集管理的web应用程序, 它采用Django开发。

网络安全监控系统会产生大量的事件,SELKS为用户提供了一些基本的工具,用来对事件进行分类,过滤事件,或者发出报警。这样可以帮助减少分析员查看的事件数量,也节省了磁盘储存空间。

2.SELKS6关键内容

本文主要介绍SELKS6,它是基于Debian9的发行版,面向网络安全管理。它基于自己的图形规则管理器提供一套完整的、易于使用的 Suricata入侵检测系统。该系统还包含Kibana IDS/NSM控制面板以图形化日志,以及Suricata的规则管理界面Scirius。在使用该版本之前需要大家了解下面的重要内容。

操作系统: Debian Linux 9(stretch)

内核版本:4.9.0-8

默认登录操作用户名selks-user,密码:selks-user,

登录Web界面的用户名selks-user,密码:selks-user,

图形界面采用Python django框架开发

默认root用户密码:StamusNetworks

系统默认使用Xfce桌面环境

更多帮助:StamusNetworks/SELKS?

3.下载ISO

SELKS6有两个版本的镜像,一个是带桌面环境的,另一个是为专家准备的,不带桌面的高性能版本。初次接触SELKS的用户推荐前者。

点击下载

4.服务器硬件要求(以虚拟机安装为例)

CPU 至少8核

内存:至少16GB (系统中的组件logstash非常消耗内存。

磁盘可用空间:至少500GB

虚拟机安装网卡工作模式推荐桥接模式,网卡设置为嗅探模式。 网卡配置文件位于/etc/network/interfaces,设置静态IP是必备的。

安装过程和Debian Linux相似,可以完全脱离外网环境安装,这里就不详细讲解,下图为系统登录界面。

桌面环境

点击鼠标右键调出菜单,图形化操作这里就不做过多的阐述,下面重点讲讲配置。

5.数据存储注意事项

为了提高速度,操作系统和/data/nsm/中的数据可以驻留在SSD上。如果没有条件上SSD设备,也可以考虑将/data/moloch/raw/挂载到单独的磁盘分区上。这样一来,速度可能会慢一些。

6.系统配置

为规避一些由误操作引起的系统错误,建议大家做好系统备份,再进行以下操作。

a.设置静态IP和DNS

很多初学者不太注意设置IP的问题,喜欢动态分配,这种方式会给今后的实验增加很多障碍。系统安装完成之后,应首先设置Server或Sensor的网卡IP为静态IP修改网卡配置文件/etc/network/interfaces

设置DNS

DNS配置文件/etc/resolv.conf

当IP 和DNS都配置完成之后,重启网络服务。

使用下面的命令

#systemctl restart networking.service

设置网卡FPC(完整数据包捕获)模式

顾名思义,FPC捕获给定网段上的所有流量,并将其存储到磁盘中以供以后检索。它能够提取数据包捕获并对其执行任何操作(包括测试IDS警报、分析其Netflow统计信息)。设置FPC非常关键。

首次登入系统我们需要在SHELL命令行下输入下面的命令

#selks-first-time-setup_stamus

通过这条命令我们可以确认,系统里面的网卡名称为ens33。

按照说明并键入所需的嗅探接口名称(ens33,然后选择完成数据包捕获(FPC)选项。接着选择FPC,输入数字1并回车。

如果你在其他虚拟机中看到的网卡名称和本文介绍的不同,可以换成其他的。设置过程中容易出错,查询日志的位置在/opt/selks/log/目录。

b.允许root远程登录

由于SELKS默认下不允许root远程登录,会造成远程调试不方便,我们需要在SELKS上修改SSH配置文件。

#vi /etc/ssh/sshd_config

在配置文件中加入一行

PermitRootLogin yes

//yes表示root可以ssh登录,no表示不允许。

接着重启SSH服务。

#/etc/init.d/ssh restart

c.调整分辨率

系统刚安装完成时,分辨率只有800 x 600,需要安装虚拟机增强工具,在下面的位置调整。

d.更新系统

SELKS补丁更新比较快,每个月都有新的内容发布,所以刚安装完成的系统需要第一时间进行系统升级。

e.检查服务状态

下面的命令可以显示所有关键服务的运行状态。

#systemctl status suricata

#systemctl status elasticsearch

#systemctl status logstash

#systemctl status kibana

#supervisorctl status scirius

#systemctl status evebox

此外系统还提供了一条健康度的检测脚本

#selks-health-check_stamus

该脚本执行后,正常启动的服务都是绿色的active(running)状态,而有问题的服务会显示红色的failed字样。

f.初始设置JAVA

SELKS附带Debian标准的预安装OpenJDK,对于Elasticsearch,Oracle或OpenJDK都是可以接受的。由于许可问题,Oracle JAVA在默认情况下不能与SELKS一起提供。

如果您决定从OpenJDK切换到Oracle JAVA,请按照下面的说明操作。确保系统是最新的-SELKS升级。

一般来说,在安装SELKS之后,您可以很容易地切换到Oracle Java,执行以下脚本:

该脚本是selks scripts stamus脚本包package of scripts的一部分,已经安装在SELKS系统中。

注意:这将默认安装Java8 oracle-java8-installer and libc6-dev 包。

g.浏览器中访问(强制https)

username:selks-user

password: selks-user

刚进入系统时自然是看不到可视化的最终效果,那么初级用户可以先加载系统提供的Demo数据,系统提供了很多Demo数据,我们先加载尝试以下内容。

数据加载成功之后,效果如下图所示:

首页中,将SELKS分为了四个模块对应四个界面,

该界面包含如下:

Scirius 规则集管理与软件管理

Canvas(能够实现定时刷新数据实现动态显示界面)

SELKS的WebUI和Security Onion Solutions的比较相似,可视化的功能还非常多,本文不做详细讲解。这种基于Suricata的IDS的开源集成平台,可以快速搭建起一套企业级的安全平台,虽然系统本生安装非常简单,但在日常运维过程中需要运维人员具备一定ELK基础知识以及Suricata的基础知识。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/7472.html

(0)

相关推荐