概述

    Snort是***检测和预防系统。它可以将检测到的网络事件记录到日志并阻止它们。Snort使用称为规则的检测签名进行操作。 Snort规则可以由用户自定义创建,或者可以启用和下载几个预打包规则集中的任何一个。 最常用的是Snort VRT(漏洞研究团队)的规则。 Snort VRT规则提供两种形式。一个是免费的注册用户版本,但需要在http://www.snort.org注册。免费版本仅提供30天以前的规则。付费用户则提供每周两次的更新规则。 下面,我将在pfsense2.34系统中介绍Snort的安装和配置。


第一步、到www.snort.org网站进行注册,并得到OinkCode代码
pfSense配置Snort_第1张图片



创建一个免费的Snort.org帐户并获得OinkCode。 可以在登录后单击用户名,然后在左侧菜单中选择Oinkcode,即可找到这个信息。

Oinkcode将用于pfSense自动下载snort规则定义。


第二步,安装和运行snort

导航到系统 -插件管理  - 可用插件,找到 Snort。

点击“+”按钮进行安装

运行snort。导航到服务 - Snort,进入Snort配置界面。

pfSense配置Snort_第2张图片


第三步,配置snort

Snort有很多设置,一开始可能无从下手。我将只介绍使IDS / IPS正常运行所需的功能。本篇教程只讨论最常见的设置。没有提到的设置,请保留默认值。


第四步、(Global Settings)全局设置

pfSense配置Snort_第3张图片


Enable Snort VRT- 选中。

Snort Oinkmaster Code -输入你在Snort.org注册帐户获得OinkCode。

Enable Snort GPLv2-选中。

此选项从社区中下载附加的Snort规则。 这些规则与Snort VRT付费用户相同,但是它们是延迟发布的。 如果是VRT付费用户,则可以在可用时立即获得这些规则。

Enable ET Open-选中。

ETOpen是一个开源的Snort规则集,其覆盖范围比ETPro更受限制。

Enable ET Pro-不选,这是付费的。

Enable OpenAppID-选中。

OpenAppID包包含AppID预处理器所需的应用程序签名。

Enable RULES OpenAppID-选中。

Update Interval(更新间隔)-设为12小时。

Update Start Time(更新时间)-设为00:05。

Remove Blocked Hosts Interval-1小时。

选择希望主机被阻止的时间。 这里设置为1小时。

Keep Snort Settings After Deinstall-选中。

选中这个选项可以在删除插件后保留Snort设置。

其他设置使用默认值。


第五步,(Pass Lists)通行列表选项

pfSense配置Snort_第4张图片

可以在此创建自定义文件,将IP存储在通行列表中。 如果编辑通行列表,底部有一个功能ssigned Aliases(分配别名),允许你创建要包含在通行列表中的别名。 你可以通过别名将所需的IP添加到通行列表中。

这个步骤是可选的,也不是开放互联网IP的最佳方法(更多的是在管理部分)。对于初次使用的用户,建议不要设置,保留默认值就可以了。


1、导航到防火墙 - 别名管理

2、创建别名= passlist_5719

3、将IP地址添加到这个别名

4、回到通行列表选项卡,并将此别名添加到通行列表。

5、导航到系统服务 - Snort - 通过列表 - 编辑 - 分配的别名

6、将IP添加到别名,并将其包含在通行列表中。


第六步,(Suppress)抑制列表选项


pfSense配置Snort_第5张图片

在抑制列表编辑页面上,可以手动添加或编辑新的抑制列表条目。 通过单击“增加”按钮来添加抑制条目。 这里,我们给一个名称(suppress_list)和一个描述。 在后面我们将在处理接口时引用这个抑制列表。 任何被抑制的规则都会显示在底部的空白处。


第七步,(Snort Interfaces)接口设置

在这个选项卡上,我们将指定Snort要监视的接口。 当我们添加一个接口时,我们将看到子选项卡也同时被创建。 

点击'增加'来添加一个接口。

_________________________________________________________

LAN设置子选项卡

Enable = 选中
Interface = LAN

推荐设置选WAN,但是建议使用LAN。 推荐WAN的原因是:如果只监控1个接口,则设备资源密集度较低。 如果有多个本地接口(LAN1,LAN2,Voice等),通过监控WAN,只能以1个接口监视为代价监视所有流量。 这样做的缺点是无法看到这个流量涉及到哪些内部IP, 只会看到违规的外网地址和WAN IP两个地址。 如果要知道哪些内部电脑连接到违规的外网地址时,建议选择LAN,并根据需要为任何其他内部接口创建其他监视。比如有两个子网的情况(LAN1,LAN2)。

Block Offenders =选中
Kill States = 选中
Which IP to Block = both (你的内部网络默认已经在通行列表中,这里只是阻止外部地址) 
Search Method = AC-BNFA (这是默认的,在我的系统上正常工作)
Search Optimize = 选中 
Stream Inserts = 选中 
Checksum Check Disable = 选中

Home Net = 默认
External Net = 默认 
Pass List = 默认 (如果您创建了自定义通行列表文件,则可以在此处选择) 
Alert Suppression and Filtering = suppress_list(这是前面创建的抑制列表文件)

保存设置(在移动到下一个子标签之前必须保存每个子选项卡的设置)

_________________________________________________________

LAN Categories子选项卡


pfSense配置Snort_第6张图片


Resolve Flowbits = 选中
Use IPS Policy = 选中

这个选项将显示下一个“IPS Policy Selection(策略选择)”下拉列表。 如果不选中,则必须从页面底部的列表中手动选择规则集类别。

IPS Policy Selection = Balanced

这个选项将选择关联的类别。 分别为:Connectivity, Balanced, Security。 不同的选项代表不同的策略。

Snort GPLv2 Community Rules (VRT certified) =选中

根据需要选中其他的规则集。

滚动到页面底部保存设置。

对于其他子选项卡上的Snort接口,可以参照这个进行自定义操作。


第八步,Snort配置管理

通过以上步骤,Snort已经完成了基本的配置,下面我们要进行详细的设置。

pfSense配置Snort_第7张图片

导航到系统服务- Snort - Snort接口

在这个选项卡上,将会看到我们开始创建的Snort接口。 单击运行图标,将开始这个接口的监视,单击停止图标将停止该接口的监视。

Blocking”列可以告知我们是否启用了阻止。 如果禁用阻止,我们将在“警报”选项卡中看到所有检测到的条目。 如果启用阻止,我们将在“Blocked”选项卡中看到这些被阻上的条目。

如果建立抑制列表,则应该阻止禁用,以便用户不受影响。 可以通过编辑Snort接口并取消选中“Block Offenders”选项来关闭这个功能。


第九步,更新

pfSense配置Snort_第8张图片

在此选项卡上,可以更新规则,并查看订阅的规则。 如果在某些时间看到规则还未下载,则需要强制更新,另外必须检查一下OinkCode是否有问题。


第十步,Alerts(警报)

pfSense配置Snort_第9张图片

下面的列表显示了Snort创建的警报记录条目,其中包含源和目标地址以及触发警报的特定规则(SID列)信息。


源和目的IP列:

wKiom1lbWDbBX8-mAAACXzbAwHo300.png”符号将尝试为你解析主机。这就是我在设置接口时首选LAN而不是WAN的原因。如果有可疑传输发生,我们可以查询到涉及的内部设备。

“+”符号会抑制这个特定的规则来源或目的地。


SID列:

“+“将禁止这个规则,无论来源或目的地。

“x”将禁用该规则并将其从规则集中删除。


第十一步,Blocked(阻止)

pfSense配置Snort_第10张图片


当触发警报时,违规的IP会被阻止,同时显示警报描述和事件发生时间。  根据前面的设置,这里的条目将在1个小时内解除封锁。 也可以从这个页面手动删除条目。

在创建抑制列表时,“警报”和“阻止”选项卡之间存在一些杂乱无章的信息,其中显示哪些警报被触发并且IP被阻止。研究抑制规则,并重新加载网页,以查看它是否正确加载而不触发规则。


第十二步,Suppress(抑制)

pfSense配置Snort_第11张图片


当禁止规则时,它将显示在禁止文件中。 你可以在白色的空间看到它。 也可以手动直接删除或添加规则。如果监控多个Snort接口,则从每个接口引用相同的抑制列表可以节省大量的工作。



Snort 配合pfSense功能非常强大,是一个高度可定制的IDS / IPS解决方案。 这个教程只介绍了基本的设置,用户可以根据自己的实际需要进行更多的定制设置。


点击这里播放视频教程。


2017-7-4