IDS使用规则

ids入侵检测系统

Snort(基于特征的入侵检测系统)

软硬件配套

snort官网链接:Snort - Network Intrusion Detection & Prevention System(https://www.snort.org)

环境:centos7,拖动需要开共享粘贴板和开双向

一、daq

1、预装dap所需程序

yum install -y gcc flex bison zilb libpcap pcre libdnet tcpdump(安装软件程序)

2、输入命令下载依赖工具

yum install -y zlib-devel libpcap-devel pcre-devel libdnet-devel openssl-devel libnghttp2-devel luajit-devel

3、输入命令查找daq包 wget https://www.snort.org/downloads/snort/daq-2.0.6..tar.gz

下载地址:snghchandan/snort: snort all files (github.com)(这个压缩好像坏了)

rbshadow/snort-2.9.9.0: Unofficial Repository of Snort (github.com)

4、解压文件 tar -xzvf daq-2.0.6.tar..gz

进入daq目录里边 cd daq-2.0.6/

编译安装 ./configure

make

make install

二、安装snort

下载地址:wget https://snort.org/downloads/snort/snort-2.9.9.0.tar.gz

1、tar -xvzf snort-2.9.9.0.tar.gz

cd snort-2.9.9.0/

./configure

make

make install

2、snort -v 检查有无安装成功

出现此页面说明开源ids已安装成功

3、snort配置

①mkdir -p /etc/snort/rules

mkdir /usr/local/lib/snort_dynamicrules

最好检查一下

4、将snort中的配置文件复制到上边的snort下

snort-org-site.s3.amazonaws.com

5、下载社区规则并解压到目录(官网可找),复制到rules中,进行解压

tar -xzvf community-rules.tar.gz

解压后把文件移动到rules下,删除压缩和解压文件

6、打开终端依次输入命令,启动社区文件

① echo ''>>/etc/snort/snort.conf

echo '# enable community rule'>>/etc/snort/snort.conf

echo 'include $RULE_PATH/community-rules/community.rules'>>/etc/snort/snort.conf

sed -i 's/var RULE_PATH..\/rules/var RULE_PATH.\/rules/' /etc/snort/snort.conf

sed -i 's/var WHITE_LIST_PATH..\/rules/var WHITE_LIST_PATH.\/rules/' /etc/snort/snort.conf

sed -i 's/var BLACK_LIST_PATH..\/rules/var BLACK_LIST_PATH.\/rules/' /etc/snort/snort.conf

7、创建白黑名单文件

touch /etc/snort/rules/white_list.rules

touch /etc/snort/rules/black_list.rules

8、创建自己默认的规则

touch /etc/snort/rules/local.rules

9、注释掉所有要加载的规则文件

sed -i 's/include \RULE\\_PATH/#include \\RULE\_PATH/' /etc/snort/snort.conf

10、测试文件配置

snort -T -c /etc/snort/snort.conf

配置思路就是这样

我在使用命令时可能有地方错误输入了,导致找不到我的white_list.rules文件,需要进入配置文件

修改配置项../rules的路径为../snort/rules

方式:

①sudo vim /etc/snort/snort.conf

/搜索 white_list.rules,修改为上述路径

②snort -T -c /etc/snort/snort.conf 再次查看

11、规则写入

①在snort.conf中文件末尾添加以下数据

include $RULE_PATH/local.rules

#include $RULE_PATH/black.list.rules

#include $RULE_PATH/white_list.rules

保存关闭退出

12、安装xampp

①wget https://www.apachefriends.org/xampp-files/8.1.6/xampp-linux-x64-8.1.6-0installer.run --no-check-certificate

下载链接:Download xampp-linux-x64-8.1.6-0-installer.run (XAMPP) (sourceforge.net)

②修改权限

将文件放在local下比较方便(我下8.1.6有问题,文件应该有损坏,官网的)

chmod 777 xampp-linux-x64-8.1.6-installer.run

./xampp-linux-x64-8.1.6-0-installer.run

可能由于网络原因,多尝试几次(不同时间点),我同样的命令,下午不行,晚上就可以了,同一个命

令。离谱。

集成apache创建网站的工具

打开服务

查看有无安装成功xampp

注意端口占用情况,打开火狐浏览器,访问localhost,如下所示,成功安装

在configure可以修改端口号,防止和已有的服务发生冲突,restart重启生效

③在opt/lampp/htdocs 新建test.html文件,代码如下,测试程序,访问浏览器localhost/test.html

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8">

<title>test</title>

</head>

<body>

<h1>successful</h1>

<p></p>

</body>

</html>

效果如下:

关闭防火墙centos;systemctl stop firewalld.service

注意:否则你的实体机是访问不到你的虚拟机的网址的(测试ping可以)

④书写ids规则

打开主文件夹/etc/snort/rules/local.rules文件,输入如下

alert tcp![192.168.129.136] any ->192,.168.129.136 8888(logto:"task1";msg:"this is task 1";sid:100001)

说明:alert 表示是一个警告,tcp表示检测所有使用tcp协议的包,http协议是tcp/ip协议的一部分,下面的一部分表示的是源ip地址,!除本机外所有,不管那个端口发送的包都需要检测 ->源到目的

括号中的规则选项部分,!ggk,表示将产生的信息记录到文件,msg 表示在屏幕上打印一个信息,sid表示一个规则编号,如果不在规则中编写这个编号,则执行过程中会出错,而且这个编号是唯一的能够标识一个规则的凭证1000000 以上用于用户自行编写的规则。

创建警报日志生成目录位置

/var/log/snort 没有就创建snort文件夹

⑤打开终端输入命令

snort -dv -l /var/log/snort -h 192.168.129.136 -c /etc/snort/snort.conf

根据运行提示,修改报错信息

此时完成设置

查看var/log/snort文件下两个文件都为空,再次利用宿主机访问此虚拟机查看变化

这里好像有点问题,后期再过来调一下(这里不抓包,可能是网卡设置的原因,暂时没跳出来)

正常如下所示:

想了解更多建议去snort官网

链接地址:Snort - Network Intrusion Detection & Prevention System

一、daq

二、安装snort


相关推荐
夕泠爱吃糖10 分钟前
Linux中的静态库和动态库
linux·运维·服务器
Vic1010117 分钟前
Java 开发笔记:多线程查询逻辑的抽象与优化
java·服务器·笔记
Bruce_Liuxiaowei20 分钟前
安全分析:Zabbix 路径探测请求解析
安全·网络安全·zabbix
weixin_472339461 小时前
网络安全核心技术解析:权限提升(Privilege Escalation)攻防全景
安全·web安全
武汉唯众智创1 小时前
高职院校“赛岗课”一体化网络安全实战类人才培养方案
网络·安全·web安全·网络安全·“赛岗课”一体化·赛岗课
比奥利奥还傲.1 小时前
Linux运维安全新范式:基于TCPIP与SSH密钥的无密码认证实战
linux·运维·安全
moppol2 小时前
探索下一代云存储技术:对象存储、文件存储与块存储的区别与选择
服务器
mmsx2 小时前
使用git生成ssh的ed25519密钥
运维·git·ssh
ZeroNews内网穿透2 小时前
服装零售企业跨区域运营难题破解方案
java·大数据·运维·服务器·数据库·tcp/ip·零售
果子⌂3 小时前
容器技术入门之Docker环境部署
linux·运维·docker