Seajon2002/Network-Intrusion-Detection-System
GitHub: Seajon2002/Network-Intrusion-Detection-System
该项目在 Kali Linux 上使用 Suricata 构建了一个网络入侵检测系统,涵盖自定义规则编写、攻击模拟、实时告警和 iptables 响应机制。
Stars: 0 | Forks: 0
# 🛡️ 在 Kali Linux 上使用 Suricata 的网络入侵检测系统 (NIDS)




## 📌 项目概述
本项目演示了如何在 Kali Linux 上使用 **Suricata** 实现**网络入侵检测系统 (NIDS)**。
该系统可持续监控网络流量,使用自定义检测规则来识别可疑活动,实时生成警报,并利用 Linux Firewall (iptables) 实现基础的响应机制。
## 🎯 目标
- 安装和配置 Suricata IDS
- 更新 Emerging Threats (ET) 规则
- 创建自定义检测规则
- 实时检测网络攻击
- 使用 Suricata 日志监控警报
- 使用 Nmap、Ping 和 SSH 模拟攻击
- 使用 iptables 封禁恶意 IP 地址
## 🛠️ 使用的技术
- Kali Linux
- Suricata 8.0.5
- Nmap
- iptables
- Bash
- Nano Editor
## ⚙️ 安装说明
更新软件包
```
sudo apt update
sudo apt upgrade -y
```
安装 Suricata
```
sudo apt install suricata -y
```
检查版本
```
suricata --build-info
```
更新规则
```
sudo suricata-update
```
启动服务
```
sudo systemctl start suricata
```
检查状态
```
sudo systemctl status suricata
```
## 📝 自定义规则
已实现以下自定义规则。
```
alert icmp any any -> any any (msg:"Ping Detected"; sid:1000001; rev:1;)
alert tcp any any -> any 22 (msg:"SSH Connection"; sid:1000002; rev:1;)
alert tcp any any -> any 80 (msg:"HTTP Request"; sid:1000003; rev:1;)
alert tcp any any -> any any (flags:S; msg:"Possible Nmap SYN Scan"; sid:1000004; rev:1;)
alert tcp any any -> any 21 (msg:"FTP Connection"; sid:1000005; rev:1;)
alert tcp any any -> any 23 (msg:"Telnet Connection"; sid:1000006; rev:1;)
alert udp any any -> any 53 (msg:"DNS Query"; sid:1000007; rev:1;)
```
## 🚀 攻击模拟
生成了以下活动以测试 IDS。
- ICMP Ping
- SSH 连接
- HTTP 请求
- Nmap 扫描
- Nmap 激进扫描
示例:
```
ping 192.168.1.8
nmap 192.168.1.8
sudo nmap -A 192.168.1.8
```
## 🚨 警报检测
Suricata 成功检测到了
- ICMP Ping
- SSH 连接
- HTTP 请求
- Nmap 扫描
- DHCP 事件
警报通过以下命令进行监控
```
sudo tail -f /var/log/suricata/fast.log
```
## 🛡️ 响应机制
使用 Linux Firewall 实现了基础的响应机制。
```
sudo iptables -A INPUT -s 192.168.1.8 -j DROP
```
验证规则
```
sudo iptables -L
```
## 📸 截图
### 1. Suricata 安装(版本信息)

### 2. 更新 Emerging Threats 规则

### 3. 自定义 IDS 规则配置

## 
### 4. 攻击模拟(Ping & Nmap 扫描)

### 5. 实时警报检测

### 6. 响应机制 (iptables)

## ✅ 结果
成功实现了一个具备以下功能的网络入侵检测系统:
- 监控网络流量
- 检测可疑活动
- 生成警报
- 检测自定义攻击特征
- 封禁攻击者 IP 地址
## 🔮 未来改进
- 集成 ELK Stack (Elasticsearch、Logstash、Kibana)
- 邮件警报通知
- 使用 Suricata Eve JSON 自动封锁 IP
- 基于 Web 的监控仪表板
- 与 SIEM 平台集成
## 👨💻 作者
**Ektearul Haque**
软件工程理学学士(专业:网络安全)
GitHub: https://github.com/Seajon2002/
LinkedIn: https://www.linkedin.com/in/ektearulhaque/
## 📜 许可证
本项目基于 MIT License 发布。
标签:CTI, Linux防火墙, Metaprompt, PE 加载器, Shell脚本, Suricata, 应用安全, 插件系统, 流量监控, 现代安全运营, 网络安全, 隐私保护