snort安装与使用

一、snort3

snort3在kali中可以直接

bash 复制代码
sudo apt-get update
sudo apt-get install snort

在外部条件都充足的条件下(如该有的C++编译器还有libver那些库都有),snort3可以直接

bash 复制代码
sudo snort -c /etc/snort/snort.lua -i eth0 -A alert_full

启动,此时snort使用的是默认的lua配置文件,同时默认监听eth0网卡

如果需要更换网卡可以用

bash 复制代码
ifconfig

检查自己kali中网卡名称进行更换

但是在使用过程中一直都无法自己更改新规则,网上搜到的include加路径等都无效

这里贴几个搜到过的可能有效的结果(我实验过是无效的)

Kali 下安装snort并且配置规则(保姆级教学)_snort文件下载-CSDN博客

Snort3规则加载问题解析与解决方案 - AtomGit | GitCode博客

最新Snort3和Snort2安装详细教程-CSDN博客

所以本文只提供snort2稳定版本的安装方法,snort3请自行尝试,成功的可以来跟我说说结果,反正我是没搞明白。

二、snort2安装

首先安装必要依赖

bash 复制代码
apt-get update
apt-get upgrade
apt-get install gcc
apt-get install flex
apt-get install bison
apt-get install zlib1g-dev
apt-get install libpcap-dev
apt-get install libdnet-dev
apt-get install luajit
apt-get install liblua5.1-0-dev
apt-get install liblua5.1-0-dev liblua50-dev liblualib50-dev
apt-get install build-essential
apt-get install libpcre3-dev
apt-get install libdumbnet-dev
apt-get install openssl libssl-dev
apt-cache search lua

下载daq

bash 复制代码
wget https://www.snort.org/downloads/snort/daq-2.0.7.tar.gz
tar -zxvf daq-2.0.7.tar.gz
cd daq-2.0.7
./configure
make 
make install

下载luajit

bash 复制代码
wget https://luajit.org/download/LuaJIT-2.1.0-beta3.tar.gz --no-check-certificate
tar -xvzf LuaJIT-2.1.0-beta3.tar.gz
cd LuaJIT-2.1.0-beta3/src 
make
cd .. 
make install

下载snort2

bash 复制代码
wget https://www.snort.org/downloads/snort/snort-2.9.20.tar.gz
tar -xvzf snort-2.9.20.tar.gz
cd snort-2.9.20.tar.gz
./configure --enable-sourcefire
make 
make install

如果提示无法找到rpc.h

bash 复制代码
sudo find / -name "rpc.h" 2>/dev/null
cp -a /usr/include/gssrpc/rpc.h /usr/include/rpc

如果提示无法找到netdb.h

bash 复制代码
rm -f /usr/include/netdb.h
# 2. 强制重装 glibc 开发头文件(这是提供 netdb.h 的正确包)
apt-get update
apt-get install --reinstall -y libc6-dev linux-libc-dev
# 3. 验证修复:确认 netdb.h 现在是真实文件且可读
ls -la /usr/include/netdb.h
head -n 5 /usr/include/netdb.h
# 4. 重新编译 Snort
cd /snort-2.9.20
make -j$(nproc)

然后就跟着上面的教程把conf文件中的网卡配置和自己的rules加入就行

检验snort可用性

bash 复制代码
sudo snort -T -c /etc/snort/snort.conf
相关推荐
古法老登瞎折腾7 小时前
大数据智能运维实战(十一):运维 MCP 的工程化——权限、限流、审计与错误处理
java·大数据·运维·spring ai·mcp
琥珀.8 小时前
mysql中json数组转列表查询
linux·运维·服务器
dawnsky.liu8 小时前
在 RHEL 中使用 goose 实现远程主机管理
linux·运维·ai
Linux运维技术栈10 小时前
CVE-2026-91403 高危漏洞修复:Rocky Linux 9 多版本 JDK 环境清理实操
java·linux·运维
云边云科技_云网融合10 小时前
连锁门店组网怎么做?SD-WAN 多分支组网的架构选型、部署与成本结构
服务器·数据库·php
云上先途110 小时前
企业 AI 服务部署周期多久,会不会影响原有业务运转?
大数据·运维·人工智能
网络小江11 小时前
组网第35课:静态路由——下一跳、出接口、默认路由、浮动静态与黑洞路由
服务器·网络·默认路由·黑洞路由·浮动静态路由
执伞人ONLY11 小时前
AI知识库自动化知识加工没做对,人工整理永远追不上知识产生
运维·人工智能·自动化
slongzhang_11 小时前
linux 递归删除源码文件|递归删除目录下 *.js,但排除 *.min.js
linux·开发语言·javascript
叼烟扛炮11 小时前
Linux 学习笔记(三十三):线程互斥——互斥锁(Mutex)与死锁
linux·运维·服务器·笔记·学习·1024程序员节