DucThinhIsMeX/Automated-Network-Configuration-Vulnerability-Scanner
GitHub: DucThinhIsMeX/Automated-Network-Configuration-Vulnerability-Scanner
这是一个用于自动化网络设备配置和漏洞扫描的工具,旨在提高运维效率并增强安全性。
Stars: 0 | Forks: 0
# 🤖 自动化网络配置与漏洞扫描器





一个基于*基础设施即代码(IaC)*理念的网络基础设施自动化管理方案(**网络自动化**)。该项目旨在完全取代在每台设备上手动输入命令(CLI)的操作,实现批量配置的自动化、配置文件的定期备份以及网络服务漏洞的主动扫描。
## 🚀 主要功能
- **批量配置:** 使用 Ansible Playbook 通过安全的 SSH 端口,将配置(VLAN、IP、OSPF、访问控制列表 ACL)同步推送至数十台网络设备,将人为错误减少 90%。
- **自动备份与回滚:** 通过 Linux 上的 `Crontab` 设置自动脚本,每周定期备份所有路由器/交换机的运行配置。在发生故障时支持快速恢复至旧配置。
- **漏洞端口扫描器:** 使用 Python(`Netmiko` & `Socket`)开发模块,自动扫描并检测开放的危险或未经授权的服务端口(例如:未加密的 Telnet、FTP、HTTP 等)。
- **自动报告生成:** 自动将安全扫描结果和设备状态导出为 Excel(`.xlsx`)或 CSV 格式的文件,便于管理员跟踪和生成报告。
## 📐 系统工作流程
```
┌────────────────────────┐
│ Quản trị viên (Admin) │
└───────────┬────────────┘
│ (Chạy Script / Playbook)
▼
┌────────────────────────┐
│ Automation Server │
│ (Ansible + Python) │
└─────┬────────────┬─────┘
│ │
(SSH - Port 22) │ │ (SSH / Socket Scan)
┌──────────────────┘ └──────────────────┐
▼ ▼
┌──────────────────┐ ┌──────────────────┐
│ Router/Switch 1 │ │ Router/Switch 2 │
│ ┌──────────────┐ │ │ ┌──────────────┐ │
│ │ Cấu hình mới │ │ │ │ Cấu hình mới │ │
│ └──────────────┘ │ │ └──────────────┘ │
│ ┌──────────────┐ │ │ ┌──────────────┐ │
│ │ Quét Lỗ Hổng │ │ │ │ Quét Lỗ Hổng │ │
│ └──────────────┘ │ │ └──────────────┘ │
└────────┬─────────┘ └────────┬─────────┘
│ │
└──────────────────┬───────────────────────────────┘
│ (Trả kết quả về Server)
▼
┌────────────────────────┐
│ Outputs Storage │
│ ├─ 📂 Config Backups │
│ └─ 📊 Excel Reports │
└────────────────────────u
🛠️ Công nghệ sử dụngNgôn ngữ lập trình: Python 3.x (Thư viện: Netmiko, Paramiko, Openpyxl).Công cụ Automation: Ansible (Core & Playbooks).Môi trường giả lập: GNS3 / Cisco Modeling Labs (CML) kết nối trực tiếp với máy ảo Ubuntu Server qua vNIC.Thiết bị kiểm thử: Cisco IOS (Routers & Switches).
📂 Cấu trúc thư mục dự ánPlaintext├── playbooks/
│ ├── inventory.ini # Danh sách IP và tài khoản của các thiết bị mạng
│ ├── site.yml # Playbook chính để gọi các tác vụ
│ ├── roles/
│ │ ├── backup_config/ # Tác vụ tự động sao lưu cấu hình
│ │ └── deploy_vlan/ # Tác vụ tạo VLAN hàng loạt
├── scripts/
│ ├── net_scanner.py # Script Python quét cổng dịch vụ độc hại
│ └── report_generator.py # Module xử lý xuất file báo cáo Excel
├── backups/ # Thư mục lưu trữ các file cấu hình đã backup (Tự động sinh ra)
├── reports/ # Thư mục chứa file Excel báo cáo bảo mật (Tự động sinh ra)
└── README.md
💻 Hướng dẫn triển khai nhanh (Quick Start)
1. Chuẩn bị hệ thốngĐ
ảm bảo máy ảo Linux đã cài đặt Python 3 và Ansible:
sudo apt update && sudo apt install ansible python3-pip -y
pip3 install netmiko openpyxl
Các thiết bị mạng trong môi trường giả lập (GNS3) đã được bật tính năng SSH và cấu hình IP cùng dải mạng với Server.
2. Thực thi cấu hình hàng loạt bằng AnsibleKiểm tra kết nối tới các thiết bị mạng:
ansible all -i playbooks/inventory.ini -m ping
Chạy Playbook để cấu hình và backup hệ thống mạng:
ansible-playbook -i playbooks/inventory.ini playbooks/site.yml
3. Chạy công cụ quét lỗ hổng bảo mật bằng Python
python3 scripts/net_scanner.py
Sau khi chạy xong, kiểm tra thư mục reports/ để xem file Excel kết quả rà quét chi tiết.
📸 Hình ảnh Demo thực tế(Dưới đây là một số hình ảnh chứng minh script chạy thực tế trong môi trường Lab)Màn hình Terminal khi Ansible thực thi kịch bảnFile Excel báo cáo lỗ hổng tự động sinh ra [Thay bằng ảnh chụp terminal lúc chạy lệnh ansible] [Thay bằng ảnh chụp file Excel báo cáo port của bạn]
```
标签:ACL配置, Ansible, Crontab, EC2, IaC, Netmiko, OSPF配置, PE 加载器, Python, Socket编程, SSH, VLAN配置, 内存分配, 回滚机制, 安全扫描, 批量配置, 插件系统, 数字取证, 数据统计, 无后门, 时序注入, 端口扫描, 系统提示词, 网络安全, 网络自动化, 自动化脚本, 自动备份, 设备管理, 逆向工具, 隐私保护