Suricata(Ubuntu)的安装以及使用过程(超详细)
努力的小余 2024-06-21 10:37:05 阅读 95
前景:
老师让我们使用网络入侵检测工具进行模拟攻击入侵,在已经尝试配置snort,Sguil,OSSEC HIDS不行的情况下,历时三天,终于换成Suricata之后就配置成功了!
什么是IDS
入侵检测是通过对计算机网络或计算机系统中若干关键点收集信息并对其进行分析, 发觉入侵行为, 从中发现网络或系统中是否有违反安全策略的行为和被攻击的迹象. 入侵检测是防火墙的合理补充. 有助于对付网络攻击,扩展系统管理员的安全管理能力,提高信息安全结构的完整性。入侵检测系统IDS(Intrusion Detection System)可以包括硬件和软件, 通常由数据源,分析引擎和响应3部分组成,根据分析引擎所采用的技术,可分为异常检测和误用检测. IDS多采用主动防御技术,用于监视、分析用户及系统活动,对系统构造和弱点审计,识别已知进攻或并报警,对异常行为模式进行记录,统计分析,评估重要系统和数据文件的完整性,操作系统的审计跟踪管理,并识别用户违反安全策略的行为等. 一个好的入侵检测系统除了上述功能外,还应该管理、配置简单,操作容易.
小提示:本次安装的Ubuntu版本为Ubuntu22.04.3LTS,使用xshell进行连接,如果不会使用xshell的可以参考大佬:
https://blog.csdn.net/qq_44222849/article/details/105043739
安装过程
Ubuntu安装入门
在开始之前,小伙伴们一定要给自己的虚拟机拍个快照!然后将系统包更新到最新版本
apt update -yapt upgrade -y
更新所有包后,运行以下命令来安装所有必需的依赖项:
apt install libpcre3 libpcre3-dbg libpcre3-dev build-essential autoconf automake libtool libpcap-dev libnet1-dev libyaml-0-2 libyaml-dev zlib1g zlib1g-dev libcap-ng-dev libcap-ng0 make libmagic-dev libjansson-dev libjansson4 pkg-config libnspr4-dev libnss3-dev liblz4-dev rustc cargo python3-pip python3-distutilsapt install libnetfilter-queue-dev libnetfilter-queue1 libnfnetlink-dev libnfnetlink0
安装 Suricata源代码
使用以下命令下载最新版本的 Suricata:
wget https://www.openinfosecfoundation.org/download/suricata-6.0.8.tar.gz
下载完成后,使用以下命令解压缩下载的文件:
tar xzf suricata-6.0.8.tar.gz
导航到提取的目录并使用以下命令对其进行配置:
cd suricata-6.0.8./configure --enable-nfqueue --prefix=/usr --sysconfdir=/etc --localstatedir=/var
输出结果如下:
接下来,使用以下命令安装 Suricata:
makemake install-full
输出结果如下(make的时间特别长,需要耐心等待噢):
Ubuntu 存储库安装 Suricata
使用以下命令安装所有依赖项:
apt install gnupg2 software-properties-common curl wget git unzip -y
使用以下命令添加 Suricata 存储库:
add-apt-repository ppa:oisf/suricata-stable --yes
使用以下命令更新存储库缓存:
apt update
验证 Suricata 包:
apt-cache policy suricata
输出结果如下:
以下命令安装 Suricata:
apt install suricata jq
验证suricata包:
suricata --build-info
对Suricata进行配置
编辑 Suricata 配置文件并定义网络接口和网络:
nano /etc/suricata/suricata.yaml
如果不会对nano进行配置,可以找到对应的目录下输入:
sudo chmod 777 suricata.yaml
因为本身suricata.yaml是只读的,所以要提权
手动找到,并且更改以下行:
HOME_NET: "[10.0.2.0/24]" EXTERNAL_NET: "!$HOME_NET"af-packet: - interface: eth0# - sip sip: enabled: no
保存并关闭文件,然后使用以下命令更新 Suricata 配置:
suricata-update
验证 Suricata 配置文件:
suricata -T -c /etc/suricata/suricata.yaml -v
输出结果如下:
对验证suricata的验证可以参考:
https://blog.csdn.net/yeshankuangrenaaaaa/article/details/100533857
使用以下命令启动并启用 Suricata 服务:
systemctl enable --now suricata
使用以下命令检查 Suricata 服务:
systemctl status suricata
验证 Suricata
禁用网络接口上的数据包卸载功能:
ethtool -K ens33 gro off lro off
使用以下命令停止 Suricata:
systemctl stop suricatarm -rf /var/run/suricata.pid
手动运行 Suricata:
suricata -D -c /etc/suricata/suricata.yaml -i ens33
使用kail的hping3命令对Ubuntu进行模拟攻击:
hping3 -S -p 80 --flood --rand-source suricata-ip -I ens33 -c 50
接下来就是漫长的泛洪攻击了,可以提前结束噢
回到 Suricata 服务器并检查 Suricata 日志文件:
tail -f /var/log/suricata/fast.log
解释一下为什么不是eth0而是ens33,需要ifconfig查看你的网卡,我的eth0被禁用了没有去修改,所以使用了ens33
写在最后
安装这个suricata也花了好多好多时间,都是结合了很多大佬的文章才配置成功的,一定一定要给虚拟机进行快照,不然每次重新安装都要耗费很多精力去卸载环境。
声明
本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。