如何在CentOS安装SNORT IDS 7

时间:2020-03-05 15:27:50  来源:igfitidea点击:

安全是当今企业环境中所有网络的一个大问题。
许多方法开发用于保护网络基础架构和通过互联网通信。
其中Snort是一个领先的开源网络入侵检测和预防系统和有价值的安全框架。
它是一个数据包嗅探器,可以实时监控网络流量,并仔细审查每个数据包深入,以查找任何危险的有效载荷或者可疑异常。

使用Snort入侵检测机制,我们可以从已知类型的攻击中收集和使用信息,并找出一些尝试攻击我们的网络或者特定主机。
因此,以这种方式收集的信息可以很好地努力地硬化我们的网络,以防止对法律目的有用的黑客和入侵者。

本教程使用CentOS 7.0操作系统和其他组件描述Snort 2.9.7.x和DAQ-2.0.x的配置,编译和安装。

准备操作系统

我们将在以下操作系统及其组件下设置Snort IDS

  • 虚拟化环境:VMware工作站
  • 主机操作系统:微软Windows 7
  • 客户操作系统:CentOS 7.0(64位版本)
  • 系统资源:CPU 2.0 GHz 内存 4 GB

在CentOS 7虚拟机中,我们使用静态IP,网关和DNS条目配置了其网络设置,以确保它通过其以太网接口与Internet连接,该界面将被用作监控流量的端口。

安装准备工作

以下软件包必须安装Snort,因此请在开始编译Snort或者DAQ之前确保安装这些。
几乎所有这些库都可以使用yum命令来安装。

[root@centos-007 ~]# rpm -qa | grep gcc
libgcc-4.8.2-16.2.el7_0.x86_64
gcc-4.8.2-16.2.el7_0.x86_64
[root@centos-007 ~]# rpm -qa | grep flex
flex-2.5.37-3.el7.x86_64
[root@centos-007 ~]# rpm -qa | grep bison
bison-2.7-4.el7.x86_64
[root@centos-007 ~]# rpm -qa | grep zlib
zlib-1.2.7-13.el7.x86_64
zlib-devel-1.2.7-13.el7.x86_64
[root@centos-007 ~]# rpm -qa | grep libpcap
libpcap-1.5.3-4.el7_1.2.x86_64
libpcap-devel-1.5.3-4.el7_1.2.x86_64
[root@centos-007 ~]# rpm -qa | grep tcpdump
tcpdump-4.5.1-2.el7.x86_64
[root@centos-007 ~]# rpm -qa | grep libdnet-devel
libdnet-devel-1.12-13.1.el7.x86_64

安装数据采集(DAQ 2.0.5)

我们可以从其官方获取Snort和DAQ最新安装包,并复制其RPM包下载链接可供CentOS。

[root@centos-007 ~]# yum install https://snort.org/downloads/snort/daq-2.0.5-1.centos7.x86_64.rpm

安装Snort 2.9.7.

同样,我们将使用以下命令使用yum存储库使用以下命令安装Snort。

[root@centos-007 ~]# yum install https://snort.org/downloads/snort/snort-2.9.7.3-1.centos7.x86_64.rpm

安装Snort规则:

为了安装Snort规则,我们必须是注册用户下载规则集或者有付费订阅。
安装一些更新Snort规则是必要的,以确保Snort能够检测到最新的威胁。

注册哼声

让我们与世界上最强大的检测软件一起登录并下载其规则,最重要的是从最新威胁中了解。

下载Snort规则

登录后哼了一下,现在我们将能够下载我们需要安装和工作的规则。

使用拉Pig肉更新哼声规则

Sport Rure Management的拉Pig肉旨在制作哼唱规则飞!随意处理所有规则。
其代码提出了我们需要处理Snort规则的规则。

下载pulledpork.

通过使用以下命令,GIT集线器上可在GIT集线器上使用拉Pig肉Apackage,我们将在带有Git Clone命令的Snort Server上获取软件包。

[root@centos-007 ~]# git clone https://github.com/shirkdog/pulledpork.git

设置拉Pig肉

[root@centos-007 pulledpork]# cp pulledpork.pl /usr/local/bin
[root@centos-007 pulledpork]# chmod +x /usr/local/bin/pulledpork.pl
[root@centos-007 pulledpork]# cp etc/*.conf /etc/snort

现在我们将配置PulledPork并将OinkCode放入其配置文件中,我们将在从注册用户获取后将其放入其配置文件中。

创建PulledPork需要的文件。

[root@centos-007 ~]# mkdir /etc/snort/rules/iplists
[root@centos-007 ~]# touch /etc/snort/rules/iplists/default.blacklist

测试Pullpork.

让我们开始测试以确认PulledPork是功能的。

[root@centos-007 ~]# /usr/local/bin/pulledpork.pl -V
PulledPork v0.7.0 - Swine Flu !

一旦PullEdPork与其成功的测试结果一起工作,我们现在通过更新少数配置参数来向前移动以使用Snort配置。

配置Snort.

我们希望启用动态规则,因此为此目的,我们确保未注释/etc/snort/snort.conf中的第二行。

# path to dynamic preprocessor libraries
dynamicpreprocessor directory /usr/lib64/snort-2.9.7.3_dynamicpreprocessor/
# path to base preprocessor engine
dynamicengine /usr/lib64/snort-2.9.7.3_dynamicengine/libsf_engine.so
# path to dynamic rules libraries
dynamicdetection directory /usr/local/lib/snort_dynamicrules

现在执行以下3个命令以添加包含规则如下。

echo "include $RULE_PATH/snort.rules" >> /etc/snort/snort.conf
echo "include $RULE_PATH/local.rules" >> /etc/snort/snort.conf
echo "include $RULE_PATH/so_rules.rules" >> /etc/snort/snort.conf

起动拉Pig肉

现在正在运行以下命令,我们将运行PulledPork并将规则更新为Belwo。

[root@centos-007 ~]# pulledpork.pl -c /etc/snort/pulledpork/pulledpork.conf
...
Rule Stats...
New:-------686
Deleted:---4
Enabled Rules:----365
Dropped Rules:----0
Disabled Rules:---45
Total Rules:------410
No IP Blacklist Changes
Done
Please review /var/log/sid_changes.log for additional details
Fly Piggy Fly!

更新规则后,我们始终必须重新启动Snort服务。
因此,请确保在重新启动期间没有收到任何错误。
如果我们收到错误,请检查/var/log/syslog文件并尝试解决问题。

[root@centos-007 ~]# service snort restart
Updating Snort Rules using Pulled Pork