如何在CentOS安装SNORT IDS 7
安全是当今企业环境中所有网络的一个大问题。
许多方法开发用于保护网络基础架构和通过互联网通信。
其中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