教程合集
【导航】教程检索清单
A01-Windows安装VMWare Workstation
A02-VMware安装CentOS
A03-解压版CentOS7使用方法
A04-VMware+Centos7 静态IP设置方法
A05-CentOS7替换yum源为阿里云
A06-Xshell7使用教程
A07-Xshell连接阿里云ECS-CentOS远程服务器
A08-xmanager图形化连接CentOS
A09-Kali虚拟机磁盘扩容
A10-Windows虚拟机和物理机互传文件的几种方式
A11-虚拟机安装Kali和远程连接
A12-VMware安装Rocky Linux9.4
A13-解压版RockyLinux9.4使用方法
A14-安装Xmanager
A15-CentOS7修改语言为中文或英文
A16-Linux开机自动登录root用户(不用输密码)
A21-Win10安装教程
A22-Win7安装教程
A31-vmware安装Ubuntu18.04
A32-Vmware安装Ubuntu23
A41-在Android手机上安装kali Linux
A51-如何在公网服务器(比如阿里云)安装kali
A52-kali如何安装中文输入法
A53-Kali Linux安装pip2
B01-Windows环境安装MySQL Server 步骤
B02-Navicat安装使用
B03-MySQL忘记root密码或者root密码错误
B04-Windows配置解压版MySQL5(免安装)
B05-MySQL如何建库建表
B21-Windows安装python3.x
B22-安装sqlmap
B23-Windows多个Python版本如何切换
B24-如何在cmd运行Python代码
B31-Windows安装PhpStorm2024
B39-Windows多个Java版本如何切换
B40-Windows配置JDK8及以下版本
B41-Windows配置JDK9及以上版本
B42-IDEA2022安装和激活
B42-IDEA2024安装和激活
B43-IDEA配置Maven
B44-IDEA配置tomcat运行JavaWeb工程
B45-IDEA修改Java版本
B46-IDEA部署WebGoat靶场
B50-Windows安装VSCode
B51-vc++安装教程
B52-VScode编译C语言
B53-VSCode运行Java工程
B54-VSCode运行Python代码
B55-Windows安装Pycharm
B56-VSCode右键在浏览器运行PHP代码
B61-配置cmder
B62-Windows安装Go开发环境
B63-Windows安装CLion运行C代码
B71-Windows安全狗安装教程
B72-Windows安装使用Anaconda
B73-Windows安装Git教程
C01-启动中国蚁剑antsword
C02-Oneforall安装与使用
C03-Xray下载与使用
C04-Windows安装AWVS24.4.240427095
C04-windows安装AWVS14
C05-部署Cobalt Strike服务端和启动Cobalt Strike客户端
C05-Win10安装MSF(metasploit framework)
C11-Fotify安装
C12-Charles破解教程
C13-谷歌chrome浏览器安装crx插件(hackbar为例)
C14-firefox浏览器安装扩展工具教程(以hackbar为例)
C15-XSStrike工具安装和使用
C31-hbit安装与使用
C32-kali系统安装与使用aquatone
C33-水泽 Shuize 安装
C34-kali安装nessus
C35-ip反查域名
C36-火狐浏览器替换js脚本
C41-社会工程学BadUSB刻录流程
D01-Windows安装phpstudy
D02-Win10安装Apache和PHP
D03-解压版Apache2.4+PHP7.4.22使用方法
D11-Apache安装WAF+modsecurity
D12-Phpstudy部署安全狗
D13-Windows Apache配置自签名https证书
D14-Windows虚拟机安装OpenEDR
D21-PHP、Apache环境中部署sqli-labs
D22-PHP、Apache环境中部署DVWA
D23-PHP、Apache环境中部署pikachu
D24-PHP、Apache环境中部署upload-labs
D25-PHP、Apache环境中部署xsslabs
D26-PHP、Apache环境中部署bwapp
D27-PHP、Apache环境中部署wordpress博客
D31-XSS平台xssplatform搭建
F01-CentOS7源码方式安装Redis
F01-CentOS7 yum方式安装Redis6
F02-CentOS7 yum方式安装MySQL 5
F03-阿里云CentOS7安装msf
F04-Centos7安装vnc
F05-CentOS7源码方式安装nginx
F06-CentOS 7 搭建Web服务
F07-CentOS安装使用宝塔面板
F08-Ubuntu安装Web服务(Apache、MySQL、PHP)
F09-CentOS 安装 python39
F10-Linux配置Java和切换版本(包括CentOS、Kali)
F11-Linux使用conda解决python工具的依赖问题
F12-Linux安装雷池WAF
F13-Ubuntu安装开源堡垒机JumpServer
F14-Ubuntu安装开源蜜罐HFish
F15-Ubuntu安装开源杀软ClamAV
F16-开源态势感知系统liuying单机版使用方法
F17-Ubuntu安装开源IDS/IPS系统Suricata
F21-阿里云ECS设置安全组规则
G01-CentOS7yum方式安装Docker
G02-Ubuntu安装Docker和docker-compose
G11-Docker安装MySQL
G12-CentOS安装vulhub靶场
G13-阿里云Docker镜像加速器使用方法
G14-Kali安装Docker和vulhub
G15-Docker安装crapi靶场
G16-Docker安装beef-xss
G21-CentOS7和Kali安装ARL灯塔
G22-AWD平台搭建
G23-自己搭建CTF平台
G24-pandora搭建(ChatGPT)
H01-启动和激活Burp
H02-Ubuntu安装Burp
H03-Burp反激活流程
H04-火狐浏览器发送数据包到Burp(安装证书)
H05-谷歌chrome浏览器发送数据包到Burp(安装证书)
H21-Burp抓手机App包
H22-Burp抓包逍遥(安卓)模拟器
H31-Burp识别验证码暴破密码
H41-设置burp自带浏览器访问外网
J01-MacBook Air m1安装CentOS7
J02-MacBook Air m1安装Win11及配置
J03-MacBook Air m1安装Kali
J04-MacOS搭建Apache+PHP+MySQL环境
K11-微信小程序反编译
K21-proxifier配合bp抓取小程序的数据包
K22-夜神模拟器安装burp证书实现微信小程序抓包
K23-逍遥模拟器通过Charles(青花瓷)+Postern+burp抓包配置流程
K31-App抓包教程
K32-Fiddler配合BurpSuite抓包
M01-双屏幕使用教程
M03-内网穿透
M04-免费下载doc88道客巴巴文档
M05-Kali安装佩奇文库(PeiQi-WIKI)
M06-Ubuntu虚拟机搭建乌云镜像站wooyun
M07-阿里云服务器自建DNSLog平台
M08-虚拟机如何使用代理(访问google.com)
M09-压缩包密码暴破工具ARCHPR使用教程
苹果系统安装虚拟机
Ubuntu 20.02 LTS 安装 Vulhub 环境
本文档使用 MrDoc 发布
-
+
首页
F17-Ubuntu安装开源IDS/IPS系统Suricata
# 说明 Suricata 是一个高性能的开源网络入侵检测和防御系统(IDS/IPS),由 Open Information Security Foundation(OISF)开发。它能够实时分析网络流量,识别和防御各种网络攻击,提高网络环境的安全性。 支持入侵检测系统(IDS)、入侵防御系统(IPS)和网络安全监控(NSM)等多种功能。 Suricata能够检测各种网络威胁,包括但不限于: - 协议解析:支持多种协议,如TCP, UDP, ICMP, HTTP, FTP等。 - 签名匹配:使用类似于Snort的规则语言进行签名匹配,以检测已知攻击模式。 - 异常检测:可以检测到异常行为,如异常流量或潜在的恶意行为。 - 应用层检测:能够检测应用层的攻击和异常行为,例如SQL注入攻击。 - 流量分析:可以对网络流量进行深入分析,包括状态跟踪和流量重建。 - 实时响应:在检测到攻击时,可以实时阻断或记录攻击流量。 # 准备工作 准备一个Ubuntu操作系统 ``` Ubuntu24.04免安装版,解压即可使用,大小4.4G,解压后8.7G 链接: https://pan.baidu.com/s/12jwyT-0EvWWEN8jzYjll7A?pwd=8888 已安装好SSH和Docker,root用户密码123456 ``` # Suricata 官网 https://docs.suricata.io/ # 安装 安装依赖 `apt install gnupg2 software-properties-common` 添加 Suricata 存储库 `add-apt-repository ppa:oisf/suricata-stable --yes` 更新存储库缓存: `apt update` 验证 Suricata 包: `apt-cache policy suricata` 安装 Suricata: `apt install suricata jq` # surcata的基本命令 -c # 指定配置文件的路径 -T # 测试配置运行 -i # 指定网卡 # 修改配置文件 `vim /etc/suricata/suricata.yaml` 修改`HOME_NET`的值(默认有三个IP,这里我修改为NAT的网段): (输入`/HOME_NET`搜索,按回车)  修改网卡名称: (输入`/interface`搜索,按回车) `eth0`修改为`ens33`  更新 Suricata 配置: `suricata-update`  验证 Suricata 配置文件: `suricata -T -c /etc/suricata/suricata.yaml -v` 启动并启用 Suricata 服务: `systemctl enable --now suricata` # 日志目录 `cd /var/log/suricata` ## eve.json 该日志文件提供了详细的信息,包括流量细节、规则信息、负载数据等。eve.json 的每一条记录包含:时间戳、流ID、输入接口、事件类型。源源端口:21、目标IP、目标端口、协议、数据包来源、警报信息、动作开始时间、源IP、目标IP、源端口、目标端口等。 ## fast.log 该日志文件包含了快速报警信息,提供了关于检测到的安全事件的简要摘要。 fast.log 的每一条记录包含:时间戳、条目的编号、当规则匹配时产生的警报消息msg、使用的协议、源IP地址、目标IP地址。 ## stats.log 该日志文件包含有关 Suricata 运行状态和性能的统计信息,如吞吐量、警报数量、流量量等。 ## suricata.log 该日志文件是 Suricata 的运行日志,记录了 Suricata 启动、运行和关闭过程中的各种信息。这包括配置加载、规则文件处理、错误消息、警告以及其他诊断信息。 # 测试告警 实时查看日志: `tail -f /var/log/suricata/fast.log` 在安装suricata的虚拟机另开一个窗口,运行: `curl http://testmynids.org/uid/index.html` 这条命令会返回一个触发告警的响应: uid=0(root) gid=0(root) groups=0(root) 在日志窗口可以看到:  # 配置文件(这一步不需要操作) 目录:/etc/suricata | 文件 | 作用 | | --- | --- | | classification.config | 用于定义和分类不同类型的网络事件,比如哪些是潜在的攻击、哪些是正常的网络活动等。 | | reference.config | 包含了一些安全网站,漏洞平台的URL网址,用来联系外部的恶意攻击检测网站。 | | suricata.yaml | Suricata的主要配置文件,它包含了规则配置、接口配置、日志配置、检测配置等。 | | threshold.config | 用于定义流量的阈值和速率限制。设置在特定时间内对特定事件或签名的触发次数进行限制。 | 规则配置目录: `/usr/share/suricata/rules` 这个目录存放的是 Suricata 软件包自带的规则文件。 这些规则通常是静态的,用于检测协议解码过程中的异常行为。 它们在 Suricata 的某个版本发布时就已经确定,不会随着日常更新而改变。 `/var/lib/suricata/rules` 这个目录存放的是通过 suricata-update 工具更新的规则文件。 这些规则文件会定期更新,例如从远程规则源(如 Emerging Threats 或其他威胁情报提供商)下载的规则。 它们是动态的,可以根据需要频繁更新,以应对新的威胁 规则集下载: https://rules.emergingthreats.net/open/suricata-5.0/rules/ 将下载后的ruls文件放在`/var/lib/suricata/rules/`目录下 修改配置文件: (输入`/rule-files`搜索,按回车) 添加一行: `- /var/lib/suricata/rules/*.rules`  重启suricata ``` systemctl stop suricata systemctl start suricata ``` **注意事项** Suricata在添加规则文件后,必须要使用 suricata-update 命令重新加载配置文件,否则规则会不生效,检测不到相应的恶意流量。 自定义的规则文件需要严按照官方的要求进行编写,使用 suricata -T 命令检测规则是否可以正常运行,否则规则文件无法被正确加载,服务无法正常启动。 规则参考: https://docs.suricata.io/en/latest/rules/index.html 其他规则下载: https://github.com/al0ne/suricata-rules # Suricata分析离线流量 `suricata -c /etc/suricata/suricata.yaml -r /opt/test.pcapng -v` 将会在当前运行目录下生成eve.json, fast.log, stats.log, suricata.log 4个标准日志文件。 也可以使用 -l 选择指定日志目录 `suricata -c /etc/suricata/suricata.yaml -r /opt/test.pcapng -l /var/log/suricata/ -v` # 停止 Suricata ``` systemctl stop suricata rm -rf /var/run/suricata.pid ``` # IPS和WAF的区别 | 对比 | IPS | WAF | | --- | --- | --- | | 功能 | IPS主要用于检测和阻止网络中的恶意行为和攻击。它能够实时监控网络流量,识别并阻止各种类型的攻击,如缓冲区溢出攻击、木马、蠕虫等 | WAF专门用于保护Web应用程序,防止针对Web应用的攻击,如SQL注入、XSS(跨站脚本攻击)、CSRF(跨站请求伪造)等| | 工作方式 | IPS通过分析网络流量的内容,结合签名匹配和异常检测技术,识别潜在的攻击行为,并采取措施(如丢弃恶意数据包、封锁攻击源IP地址) | WAF通过检查HTTP/HTTPS请求和响应的内容,基于预设的安全规则和签名,识别并拦截恶意请求 | | 工作层次 | IPS通常工作在网络层(OSI模型的第3层)和传输层(第4层),也可以扩展到应用层(第7层),但其主要功能是监控整个网络流量 | 工作层次:WAF主要工作在应用层(OSI模型的第7层),专注于Web应用的HTTP/HTTPS | 部署位置 | IPS通常部署在网络的关键位置,如网络边界、内部网络段和数据中心,用于监控流入和流出的流量 | WAF通常部署在Web服务器与外部网络之间,直接保护Web应用程序 | | 适用场景 | 适用于需要实时监控和阻止各种网络攻击的场景,尤其是网络边界和内部网络的关键区域 | 适用场景:适用于保护Web应用程序,特别是涉及用户隐私和敏感信息的应用 | | 成本 | IPS通常需要较高的硬件性能和复杂的配置,因此成本较高 | WAF的成本也较高,尤其是高性能的WAF设备或服务 | | 响应方式 | IPS能够实时采取措施阻止攻击,如丢弃恶意数据包、封锁攻击源IP地址 | WAF通过拦截恶意请求、阻止恶意流量进入服务器来保护Web应用务 | | 误报率 | 由于IPS需要监控广泛的网络流量,可能会产生较高的误报率| WAF通过更精确的规则和签名,能够有效降低误报率 | 总结 IPS:适用于需要实时监控和阻止各种网络攻击的场景,工作在网络层和传输层,部署在网络的关键位置,能够提供广泛的攻击防护。 WAF:专门用于保护Web应用程序,工作在应用层,部署在Web服务器与外部网络之间,能够有效防御针对Web应用的攻击。 # 开源安全产品全系列 F12-Linux安装雷池WAF https://wiki.bafangwy.com/doc/704/ F13-Ubuntu安装开源堡垒机JumpServer https://wiki.bafangwy.com/doc/820/ F14-Ubuntu安装开源蜜罐HFish https://wiki.bafangwy.com/doc/821/ F15-Ubuntu安装开源杀软ClamAV https://wiki.bafangwy.com/doc/822/ F16-开源态势感知系统liuying单机版使用方法 https://wiki.bafangwy.com/doc/823/ F17-Ubuntu安装开源IDS/IPS系统Suricata https://wiki.bafangwy.com/doc/825/ D14-Windows虚拟机安装OpenEDR https://wiki.bafangwy.com/doc/826/
八方网域
2025年3月31日 15:34
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
分享
链接
类型
密码
更新密码