一、安装

概念
用snort软件打造入侵监测系统:

入侵监测系统和防火墙关系

总结:从概念上我们可以看出防火墙是针对黑客攻击的一种被动的防御,IDS则是主动出击寻找潜在的攻击者;防火墙相当于一个机构的门卫,收到各种限制和区域的影响,即凡是防火墙允许的行为都是合法的,而IDS则相当于巡逻兵,不受范围和限制的约束,这也造成了IDS存在误报和漏报的情况出现。

  1. IDS是继防火墙之后的又一道防线,防火墙是防御,IDS是主动检测,两者相结合有力的保证了内部系统的安全;
  2. IDS实时检测可以及时发现一些防火墙没有发现的入侵行为,发行入侵行为的规律,这样防火墙就可以将这些规律加入规则之中,提高防火墙的防护力度。
  3. IDS是继防火墙之后的又一道防线,防火墙是防御,IDS是主动检测,两者相结合有力的保证了内部系统的安全;
  4. IDS实时检测可以及时发现一些防火墙没有发现的入侵行为,发行入侵行为的规律,这样防火墙就可以将这些规律加入规则之中,提高防火墙的防护力度。
    3,构建入侵监测系统

升级系统

下载snort

从源安装:

将源文件下载和保存在以下文件夹中:

在安装snprt之前,我们需要先安装Libpcap 和 DAQ
某些网卡具有可能影响Snort的功能。其中两个特征被命名为“大”

接收卸载”(lro)和“通用接收卸载”(gro)。启用这些功能后,网络

卡在被内核处理之前执行数据包重组。

默认情况下,Snort将截断大于默认snaplen 1518字节的数据包。此外,LRO和

GRO可能会导致基于流目标的重新组装出现问题。我们建议您关闭LRO和

格罗。在linux系统上,您可以运行:

安装libpcap

安装 DAQ

安装Snort:

二、配置

现在需要修改一些配置文件,从snort.org中下载规则,对snort做测试运行
首先,我们需要升级共享库

CentOS上的Snort安装在/usr/local/bin/Snort目录下,创建符号链接到/usr/sbin/snort。
是一种很好的做法

要验证snort的安装,请使用以下命令:

如果加载共享libdnet.1库时出错,请创建以下链接并重试

要在CentOS上安全地运行Snort而无需root访问,我们应该创建一个新的非特权用户和一个新的守护程序的用户组

然后创建文件夹结构以保持Snort配置,使用下面的命令。如果你安装了

使用yum的Snort这些目录应该已经在安装时添加,请检查以确保。

设置新目录的权限:

创建新的文件:

Pulled_Pork 是用perl编写的用于管理Snort规则集的工具。Pulled_Pork
的特点包括:

使用Oinkcode自动下载规则

下载新规则集之前的MD5验证

完全处理共享对象(SO)规则

生成so_rule规则存根文件

修改规则集状态(禁用规则等)

该项目由JJ Cummings负责

安装必要的软件包:

从git下载Pulledpork 并下载

要验证Pulledpork的安装,请使用以下命令:

运行这些命令以更改snort.conf上的规则路径,并生成一些文件:

然后对pulledWork配置文件进行如下更改:替换oinkcode

保存并运行这些文件:

运行 Pulledpork:

如果您得到(指定的Snort二进制文件不存在!

请更正该值或在puppedpork.conf中指定完整规则tarball名称!

在第2120行中 /usr/local/bin/puppedProk.pl)错误如下所示:

要使Pulledpork自动运行,请访问https://snort.org/oinkcodes 阅读说明书。

例如:(确保使用他们的命令)

三、配置网络和规则集

编辑snort.conf文件以修改几个参数:

如下改变参数:

在本教程中,我们使用ELK堆栈来存储和可视化snort日志文件夹中的警报和日志。为了这个,我们需要设置snort输出日志,如下所示:

最后,通过以下命令测试snort配置文件:

如果你得到成功的信息,一切都是正确的。
为了测试Snort,我们将规则添加到local。规则:

这些规则对发送到$HOME_ NET的所有icmp消息发出警报(snort警报结构可在snort.org中找到)

四、作为守护进程运行snort

要在CentOS上作为服务在后台运行snort,您应该将以下脚本复制到/etc/init.d/




然后

并将此脚本复制到该文件(替换接口名称):


如果使用yum安装Snort,则应该已经配置了启动脚本。启动服务为

如下所述。

如果我们使用systemctl status snortd.service,我们应该看到如下输出:

在/etc/sysconfig/snort文件中,我们可以确定snort如何启动和嗅探哪个接口,或者确定如何保存输出日志。如果我们将日志存储到“barnyard2”,我们需要注释这个文件中的一些变量

比如:

注释这些变量:

保存并退出。现在,snort已经安装好,可以在Nids模式下使用了。

五、通过邮件发送警报

要通过电子邮件发送警报,我们需要将snort配置为向rsyslog发送日志:

然后将rsyslog配置为将从snort接收到的日志存储到/var/log/alert.log:

现在安装swatch

为swatch的配置文件创建文件夹

现在我们需要配置swatch在taild日志文件中查找特定的单词

在本例中,我将swatch配置为查找包含“Priority:1”和“Priority:2”的警报

作为守护进程运行并使用新的配置文件

for run in stratup make swatch.sh and copy upper command into it and append ;

六、通过snort监视程序发送警报

如果您使用base,snort watcher可以查找base数据库以查找新警报并发送给他们您可以从github找到它:
https://github.com/miladstar77/Snort-Watcher

七、ELK Stack

我们可以使用ELK stack来存储和可视化警报,而不是base和banyard2。

Elasticsearch是一个基于Lucene的开源搜索引擎,用Java开发。它提供了一个

分布式多租户全文搜索引擎,带有HTTP仪表板web界面(Kibana)。这个

数据以JSON文档模式进行查询、检索和存储。Elasticsearch是一种可扩展的搜索

引擎,可用于搜索所有类型的文本文档,包括日志文件。Elasticsearch是“Elastic Stack”或ELK Stack的核心。

Logstash是一个用于管理事件和日志的开源工具。它为数据收集提供实时流水线。Logstash将收集您的日志数据,将数据转换为JSON文档,并将它们存储在Elasticsearch中。

Kibana是一个用于Elasticsearch的开源数据可视化工具。Kibana提供了一个漂亮的仪表板web界面。它允许您管理和可视化来自Elasticsearch的数据。它不仅漂亮,而且强大。

我们必须在另一个系统上安装ELK,或者如果我们想在snort系统上安装ELK,我们应该有8gbram。
首先下载java

举例说明:

在这一步,我们将下载和配置Elasticsearch,我们将从elastic.co提供的rpm包中安装Elasticsearch,并将其配置为在localhost上运行(通过无法从外面接触到以确保安装的安全性和可行性)。

配置elasticsearch

为Elasticsearch启用内存锁。这将禁用Elasticsearch的内存交换。

检查Elasticsearch是处于运行状态的:

下载和配置Kibana:
我们将用nginx web服务器安装和配置Kibana。Kibana将在本地主机IP上侦听

地址和Nginx充当Kibana应用程序的反向代理。

配置kibana:

八、安装Nginx和httpd工具包:

配置nginx:

然后创建访问Kibana的用户和密码:

现在我们需要在conf.d目录中创建一个新的虚拟主机配置文件。创建新文件

带vi的“kibana.conf”

对nginx进行测试并运行

安装和配置日志存储:

配置日志存储
通过 Logstash我们收集日志,然后过滤它们。我们从filebeat接收日志:



运行 logstash

安装并运行Filebeat:
我们可以通过filebeat将snort警报从日志文件发送到logstash。

如果有多个传感器,则必须在每个传感器上安装filebeat并向主系统发送警报。

如果你想要的发送日志到其他的系统,将"localhost:5044"改为"mainipaddress:5044"

运行filebeat:

打开你的网站浏览器,输入你的ip地址去看Kibana:

要从菜单中将snort索引添加到Kibana,请执行以下操作:

开放管理/索引模式

然后:创建索引模式

在索引模式中搜索:snort-*

然后将索引添加到kibana。如果没有看到索引,请返回并检查堆栈的安装。

索引添加到Kibana之后,您可以看到您的日志。

您可以在“可视化”菜单中创建图表并创建仪表板。

这是我的仪表盘。如果您有任何问题,您可以发送电子邮件到smr@gmail.com.

snort实现入侵检测功能相关推荐

  1. snort 轻量级入侵检测系统安装与使用

    snort 是一个开源的轻量级入侵检测系统(NIDS),使用C语言编写.支持windows.linux平台,我比较喜欢linux操作系统,所以在linux上学习研究snort.snort有三种工作模式 ...

  2. 基于Snort的入侵检测系统

    基于Snort的入侵检测系统 用Snort,Apache,MySQL,PHP及ACID构建高级IDS 第一章 入侵检测系统及Snort介绍 在当今的企业应用环境中,安全是所有网络面临的大问题.黑客和入 ...

  3. snort mysql_入侵检测:Snort,Base,MySQL和Apache2在Ubuntu 7.10(Gutsy Gibbon)

    入侵检测:Snort,Base,MySQL和Apache2在Ubuntu 7.10(Gutsy Gibbon) 在本教程中,我将介绍如何从Ubuntu 7.10(Gutsy Gibbon)上的源,BA ...

  4. snort create_mysql_入侵检测系统Snort+Base安装

    安装一些支持库 tar -zxvf zlib-1.2.3.tar.gz cd zlib-1.2.3 ./configure make make install cd .. tar -zxvf libp ...

  5. snort mysql_linux入侵检测系统snort安装配置

    队长让俺瞅瞅snort,没想到安装配置都遇到问题...整理下过程,给跟我一样的家伙看看.. 由于本人机器是ubuntu,apt-get 几下就可以了,其实网上有不少这样的文章...之所以还要写就是.. ...

  6. 信息安全-入侵检测技术原理与应用

    一.入侵检测概述 1.1 入侵检测概念 入侵应与受害目标相关联,该受害目标可以是一个大的系统或单个对象 判断与目标相关的操作是否为入侵的依据:对目标的操作是否超出了目标的安全策略范围 入侵:指违背访问 ...

  7. 信息安全软考 第十章 入侵检测技术原理应用

    入侵检测概述 入侵检测技术 ※ 入侵检测系统组成与分类 ※ 入侵检测系统主要产品与技术指标 入侵检测应用 ※ ※    命题规则:上午选择题2分左右,下午案例题结合其他知识考5-8分    入侵检测是 ...

  8. 信息安全工程师笔记-入侵检测技术原理与应用

    入侵检测:通过收集操作系统.系统程序.应用程序.网络包信息,发现系统中违背安全策略或危及系统安全的行为. 具有入侵检测功能的系统称为入侵检测系统,简称为IDS. 通用入侵检测模型 通用入侵检测框架模型 ...

  9. 入侵检测(IDS)技术知识小结

    入侵检测(IDS)技术 入侵检测:对企图入侵.正在进行的入侵或已经发生的入侵进行识别的过程. 入侵检测系统:完成入侵检测功能的软件.硬件及其组合,是一种能够通过分析系统安全相关数据来检测入侵活动的系统 ...

最新文章

  1. python文件操作二
  2. 深入理解 JVM Class文件格式(一)
  3. 丘成桐中学计算机科学奖,丘成桐中学科学奖
  4. 数字图像处理 直方图规定化 MATLAB实验
  5. iOS开发经验总结—内存管理
  6. Oracle 11G 64位发布出现错误
  7. Socket通讯成功案例
  8. 渗透测试攻击(二)——wireshark过滤数据包语法详解
  9. junit单元测试诡异问题
  10. nodeAPI--TCP
  11. 世界三大统计分析软件sas splus spss
  12. 解决 Winfrom richtextbox不显示RTF文档 图片问题
  13. PS案例教程:photoshop路径运算和路径组合操作
  14. 计算机 教学活动设计方案,青岛出版社初中信息技术 七年级下册第二单元 第5课 设计活动策划方案 教学设计...
  15. 10个每个人都用得到的视频下载网站
  16. bzoj4570: [Scoi2016]妖怪【凸包+对勾函数最小值】
  17. Datakit.CrossManager.2023(2D/3D数据格式转换器)
  18. python彩蛋_Python的2个彩蛋
  19. 回顾 | 女性 AI 专场 - 女性眼中的 ChatGPT
  20. java中Class是什么意思_java中class什么意思?

热门文章

  1. vs如何预览html页面,vscode如何用浏览器预览运行html文件
  2. linux挂载华为存储设备,Centos 6.5挂载华为赛门铁克存储(Oceanspace S6800E存储系统)...
  3. 解决浏览器页面缩放前端页面大小自适应改变的问题
  4. @ControllerAdvice基础介绍
  5. Android性能优化:那些关于Bitmap图片资源优化的小事
  6. window10安装后的几项必要设置-减少日后麻烦
  7. 用JS实现简单的图片验证码
  8. 电子科技大学现代电子信息系统综合实验课程部分模拟试题
  9. android contextmenu 自定义,RecyclerView+ContextMenu实现菜单项
  10. QQPlot/Quantile-Quantile Plot