Pripri-07/port-scanner-web-
GitHub: Pripri-07/port-scanner-web-
一款基于 Python Flask 的全栈 Web 端口扫描应用,支持多线程 TCP 扫描、服务检测、Banner 抓取及扫描历史管理。
Stars: 0 | Forks: 0
# 🛡️ 端口扫描器 Web 应用
一个使用 **Python, Flask, HTML, CSS 和 JavaScript** 构建的现代基于 Web 的 **端口扫描器**。该应用程序允许用户扫描目标 IP 地址或域名的开放 TCP 端口,识别常见服务,执行 banner grabbing,导出扫描结果,并维护可搜索的扫描历史。
该项目具有简洁、响应式的界面和实时反馈,展示了网络基础知识和全栈 Web 开发技术。
# 📌 功能
### 🔍 端口扫描
* 扫描自定义 TCP 端口范围。
* 支持 IP 地址和域名。
* 多线程扫描以提升性能。
### 📡 服务检测
* 通过端口号识别常见服务。
* 显示每个开放端口检测到的服务。
### 🏷 Banner Grabbing
* 尝试从开放服务中检索 banner。
* 帮助识别正在运行的软件或服务器信息。
### 📊 统计仪表板
显示:
* 目标主机
* 总扫描端口数
* 发现的开放端口数
* 扫描耗时
### 📈 进度指示器
* 实时扫描进度条。
* 实时扫描状态更新。
### 📄 导出结果
* 将最新扫描结果导出为 CSV 文件。
### 🕒 扫描历史
* 使用 SQLite 存储以前的扫描记录。
* 显示:
* 目标
* 端口范围
* 开放端口数
* 扫描时间
### 🗑 历史管理
* 删除选定的扫描历史条目。
* 清除所有扫描历史。
* 删除前的确认提示。
### 🔔 Toast 通知
* 成功和错误通知。
* 浏览器警告框的现代替代方案。
### 🎨 现代用户界面
* 响应式布局
* 动画按钮
* 交互式仪表板
* 悬停效果
* 网络安全风格深色主题
# 🛠 技术栈
## 后端
* Python 3
* Flask
* SQLite3
* Socket Programming
* ThreadPoolExecutor
## 前端
* HTML5
* CSS3
* JavaScript (ES6)
# 📂 项目结构
```
PortScanner/
│
├── app.py
├── scan_history.db
|
│
├── templates/
│ └── index.html
│
├── static/
│ ├── style.css
│ └── script.js
│
└── README.md
```
# 🚀 安装
## 克隆仓库
```
git clone
```
## 进入项目
```
cd PortScanner
```
## 创建虚拟环境(可选)
Windows
```
python -m venv venv
venv\Scripts\activate
```
Linux / macOS
```
python3 -m venv venv
source venv/bin/activate
```
## 安装依赖
```
pip install flask
```
或
```
pip install -r requirements.txt
```
# ▶ 运行应用程序
启动 Flask 服务器:
```
python app.py
```
打开浏览器:
```
http://127.0.0.1:5000
```
# 📷 应用程序工作流程
1. 输入目标 IP 地址或域名。
2. 指定端口范围。
3. 点击 **开始扫描**。
4. 查看:
* 开放端口
* 服务名称
* Banner 信息
5. 将结果导出为 CSV。
6. 在扫描历史中查看以前的扫描。
7. 删除选定的历史记录或清除所有记录。
# 📊 当前功能
* ✅ 多线程 TCP 端口扫描
* ✅ Banner Grabbing
* ✅ 服务检测
* ✅ 导出 CSV
* ✅ SQLite 扫描历史
* ✅ 删除选定的历史记录
* ✅ 清除所有历史记录
* ✅ 仪表板统计
* ✅ 进度条
* ✅ Toast 通知
* ✅ 响应式 UI
# 🔮 未来增强功能
* UDP 端口扫描
* OS Fingerprinting
* 主机发现 (Ping Sweep)
* 网络范围扫描
* 服务版本检测
* 扫描调度
* 用户认证
* PDF 扫描报告
* 深色/浅色主题切换
* Docker 部署
# 📚 学习成果
本项目展示了对以下知识的掌握:
* TCP/IP 网络
* Socket Programming
* 并发编程
* Flask Web 开发
* REST API 设计
* SQLite 数据库操作
* JavaScript DOM 操作
* 响应式 Web 设计
* 前后端集成
# 📄 许可证
本项目专为教育和学习目的而开发。
可随意修改和扩展以供个人使用。
# 👩💻 作者
**Priyanshi**
网络安全与软件开发爱好者
2026
标签:Flask, Python, 插件系统, 数据可视化, 数据统计, 无后门, 端口扫描, 网络安全, 自定义脚本, 逆向工具, 隐私保护