Snort是一个攻击检测和预防系统。它可以配置为简单地将检测到的网络事件记录到日志中并将其阻止。借助OpenAppID检测器和规则,Snort软件包支持应用程序检测和过滤。该软件包可以通过系统>插件管理进行安装。Snort使用称为规则的检测签名进行操作。Snort规则可以由用户自定义创建,或者可以启用和下载几个预先打包的规则集中的任何一个。
Snort目前提供对这些预包装规则的支持:
- Snort VRT(漏洞研究小组)规则
- Snort GPLv2社区规则
- Emerging Threats Open规则
- Emerging Threats Pro规则
- OpenAppID开放应用程序检测器和规则
Snort GPLv2社区规则和Emerging Threats Open规则都是免费提供的,无需注册。Snort VRT规则有两种形式。一个是免费的注册用户版本,但需要在snort注册。注册用户的免费版本只能提供30天以前的规则。可以购买Snort VRT付费订阅,并且每周更新两次(有时更频繁)。Emerging Threats Pro规则仅向付费用户提供,几乎每天都会提供更新以应对快速变化的威胁。对于商业应用,强烈建议从Snort或Emerging Threats获得付费订阅,以便下载最新的规则。
- 启动Snort配置GUI
- 首次配置Snort
- 更新规则
- 添加Snort接口
- 选择保护网络的规则类型
- 启用Snort接口
- 选择保护网络的签名类型
- 定义服务器以保护和提高性能
- 管理阻止的主机
- 管理通行列表
- 警报阈值和抑制
- 了解警报
- 使用OpenApp ID进行应用程序ID检测
1、启动Snort配置GUI
要启动Snort配置应用程序,请导航到pfSense菜单系统服务> Snort。
](https://www.memoryn.com/usr/uploads/2026/05/4049043180.png)
2、首次配置Snort
点击Global Settings(全局设置)标签,并启用规则集下载使用。如果选中了Snort VRT或Emerging Threats Pro规则,将显示一个文本框输入通过订阅或注册获得的唯一订购用户代码。
可以启用多个规则集来进行下载,但请注意:如果付费订阅适用于Snort VRT规则,则所有Snort GPLv2社区规则都将自动包含在使用Snort VRT规则下载的文件中;因此,如果付费用户帐户用于Snort VRT规则,则不要启用GPLv2社区规则。所有Emerging Threats Open规则都包含在Emerging Threats Pro规则的付费订阅中。如果启用Emerging Threats Pro规则,则会自动禁用Emerging Threats Open规则。

一旦启用了所需的规则集,接下来设置Snort规则包的Update Interval(更新间隔)。在大多数情况下,可以选择12小时。当然也可以根据需要进行定制。时间格式采用24小时制,默认开始时间是当地时间零点3分。因此,如果选择12小时的更新间隔,Snort将在每天零点3分和每天12点3分检查Snort VRT和Emerging Threats网站,以便更新发布的规则包。

3、更新规则
Updates(更新)选项卡用于检查下载的规则包的状态并下载新的更新。它显示了可用的规则包及其当前状态(未启用,未下载或有效的MD5校验和以及下载日期)。
点击Update Rules(更新规则)按钮下载最新的规则包,如果供应商网站上有更新,它将被下载并安装。通过比较本地文件与供应商网站上的远程文件的MD5,如果不匹配,则下载新文件。无论MD5哈希值如何检测,FORCE(强制)按钮都可用于强制从供应商网站下载规则包。
在下面的截图中,Snort VRT和Emerging Threats Open规则包已经成功下载。显示计算出的MD5哈希值和文件下载日期和时间。另外要注意,上次更新的时间和结果显示在页面的中心。

4、添加Snort接口
单击Snort Interfaces选项卡,然后点击“+”图标添加Snort接口。

接口设置选项卡将打开,并自动选择可用接口。也可以根据需要,使用接口下拉菜单更改接口。可以为接口输入一个描述说明。其他接口参数也可以在此页面上设置。完成后,请务必点击页面底部的SAVE(保存)按钮。

保存后,浏览器将返回到Snort Interfaces选项卡。请注意下图中的警告图标,显示新的Snort接口没有选择规则。那些规则将在下面配置。点击
编辑图标可以再次编辑已建立的Snort接口。

5、选择保护网络的规则类型
点击新接口的Categories(类别)标签。
如果获得了Snort VRT Oinkmaster代码(免费注册用户或付费订阅),启用了Snort VRT规则,并在Global Settings(全局设置)选项卡中输入了Oinkmaster代码,则可以从三个预配置的IPS策略中进行选择。这极大地简化了在检查流量时选择Snort使用强制规则的过程。IPS策略只有在启用了Snort VRT规则时才能使用。
三种Snort VRT IPS策略分别是:(1)Connectivity(连接)、(2)Balanced(平衡)和(3)Security安全。这些是按照安全性越来越高的顺序排列的,但是,如果对Snort不熟悉,建议选(1)。在更安全的策略下,会经常出现误报,并且需要有经验的管理员进行仔细的调整。所以对Snort不熟悉,那么建议在非阻止模式下使用限制性较低的连接策略。一旦在此网络环境中获得了使用Snort的经验,可以启用阻止模式,然后升级到更严格的IPS策略。

如果未启用Snort VRT规则,或者要使用任何其他规则包,则通过选中要使用的规则类别旁边的复选框来选择规则类别。

完成后单击SAVE(保存)选择并构建Snort使用的规则文件。
6、在接口上启用Snort
单击Snort Interfaces选项卡显示已配置的Snort接口。单击“X”图标在接口上启用Snort。

Snort启动需要几秒钟的时间。一旦开始,图标将显示为
。要停止接口上的Snort运行,单击该运行状态图标。

7、选择保护网络的签名类型
单击接口的Rule(规则)选项卡,在启用的类别中配置单个规则。通常这个页面只是用来禁用特定的规则,可能会在特定的网络环境中产生较多的误报。确保它们实际上是真正的误报,然后再禁用Snort规则!
从Category(类别)下拉列表中选择一个规则类别,以查看所有分配的规则。单击行最左端的
或
图标,以将规则的状态从启用切换为禁用,或单击
或上述禁用图标从禁用状态切换为启用。图标将更改以指示规则的状态。规则列表的顶部是图例,其中显示了用于指示规则当前状态的图标。


8、定义服务器来保护和提高性能

9、管理阻止主机
Blocked(已阻止)选项卡显示Snort当前正在阻止的主机(当在Interface Settings(接口设置)选项卡上选择阻止选项时)。阻止的主机可以通过几个预先定义的时间间隔被Snort自动清除。接口的阻止选项在接口的Snort Interface Settings(接口设置)选项卡上进行配置。

10、管理通行列表
通行列表是Snort不阻止的IP地址列表。这些可以在Pass Lists(通行列表)选项卡上创建和管理。当出现在通行列表中列出的IP地址时,即使检测到恶意通信,Snort也不会阻止该IP。
要创建新的通过列表,请单击
。要编辑现有的通行证列表,请单击编辑图标(见前文)。要删除通过列表,请单击
。请注意,如果“通过列表”当前已分配给一个或多个Snort接口,则可能无法删除。

Snort会为每个接口自动生成一个默认的通行列表,当没有指定其他列表时,将使用此默认列表。通行列表自动分配给接口设置选项卡上设置的接口。
可以创建自定义通行列表并分配给一个接口。当有不在直连到防火墙网络上的可信外部主机时,可以这样做。要以这种方式添加外部主机,必须先在防火墙>别名管理下创建一个别名,然后将可信外部主机IP地址添加到别名中。在下面的例子中,别名“Friendly_ext_hosts”已被分配。该别名将包含可信外部主机的IP地址。
创建自定义通行列表时,请在Add auto-generated IP addresses(添加自动生成的IP地址)部分中选中所有自动生成的IP地址。不选中这部分可能会导致阻止包括防火墙接口本身的关键地址,这可能会将自己锁定在防火墙之外!只有在绝对必要的情况下,才能取消选中框。

点击ALIASES(别名)按钮打开一个窗口,显示以前定义的别名供选择。选择后请记住点击保存以应用更改。
注意:简单地创建一个通行列表只是第一步!必须通过转到Snort接口的Interface Settings(接口设置)选项卡并选择新创建的通行列表,如下所示。分配并保存新的通行列表后,在受影响的接口上重新启动Snort以使应用生效。

11、警报阈值和抑制
抑制列表允许控制由Snort规则生成的警报。当警报被抑制时,Snort不再记录警报条目(或者在阻止违规者被启用的情况下阻止IP地址)。Snort仍然根据规则检查所有网络流量,但即使流量符合规则签名,也不会生成警报。这与禁用规则不同。当禁用规则时,Snort不再尝试将其与任何网络流量进行匹配。只能根据源IP或目标IP停止警报时,可以用抑制规则来代替禁用规则。例如,要抑制来自特定可信IP地址的流量来源时的警报,如果有任何其他IP流量的来源,则规则仍然会触发。为了消除规则中的所有警报,简单地禁用规则而不是抑制规则会更有效。禁用该规则将从Snort的匹配规则列表中删除它,因此Snort所做的工作会更少。

在Suppress List Edit(抑制列表编辑)页面上,可以手动添加或编辑新的抑制列表条目。通过单击Alerts(警报)选项卡上的警报条目显示的
来添加抑制列表更方便。在手动编辑抑制列表条目后,必须单击SAVE(保存)按钮以应用更改。

12、了解警报
Alerts(警报)选项卡是查看由Snort生成的警报的位置。如果Snort在多个接口上运行,请在下拉选择器中选择要查看警报的接口。
单击DOWNLOAD(下载)按钮将下载包含所有记录警报的gzip .tar文件到本地电脑。CLEAR(清除)按钮用于清除当前警报日志。

警报详情

Date(日期)列显示警报生成的日期和时间。其余的列显示来自生成警报规则的数据。
在“Source(源), Destination(目标)列中,
用于在IP地址上执行反向DNS查找的图标。添加图标用于使用IP地址和SID(签名ID)为警报添加自动“禁止列表”条目。这将防止规则仅针对该特定IP地址生成未来的警报。如果源或目标地址当前被Snort阻止,则还将显示一个删除图标。单击该图标将删除该IP地址的阻止。
SID列包含两个图标。添加图标将自动将该SID添加到接口的“禁止列表”,并禁止来自所有IP地址签名的以后的警报。SID列中的
将禁用该规则并将其从强制规则集中删除。手动禁用规则后,SID列中的图标将变为禁用状态图标。
13、使用OpenApp ID进行应用程序ID检测
OpenAppID是用于开源入侵检测系统Snort的应用层网络安全插件。点击此处了解详情。
启用OpenAppID及其规则是从Global Settings(全局设置)完成的。选中下图中的两个复选框并保存页面后将启用检测器和规则下载。

启用检测器和规则后,进入Snort Updates选项卡并单击Update Rules更新规则,等待所有的规则更新。完成后,页面将显示OpenAppID检测器和规则已更新。

以下步骤假设已经将Snort接口添加到LAN接口。编辑LAN接口并导航到LAN categories(LAN类别)选项卡。确保右栏中的Snort OPENAPPID Rules(规则)都被选中,然后点击保存。

最后,在编辑Snort接口的同时,导航至LAN Preprocessor(LAN预处理器)选项卡。

向下滚动到Application ID Detection(应用程序ID检测)部分,并选中Enable (启用)和 AppID Stats Logging**(AppID统计信息)复选框,保存页面,在Snort接口上激活OpenApp ID。

可以从 Alerts(警报)选项卡查看检测到的应用程序。以下屏幕截图是已识别的服务和应用程序的示例:

Netflix


Amazon Web Services

iCloud


觉得内容不错?我要