DominikMedecki/Port-Scanner
GitHub: DominikMedecki/Port-Scanner
一个以渐进式开发为理念的 Python TCP 端口扫描器教学项目,分阶段演示从基础扫描到多线程扫描的完整演进过程。
Stars: 1 | Forks: 1
# 🔍 PyPort Scout
一个基于 Python 构建的 TCP 端口扫描器,作为一个渐进式网络安全学习项目。
PyPort Scout 并非旨在提供一个单一的最终工具,而是分阶段进行开发,每个版本都引入新的功能和改进。其目标是展示端口扫描器从一个简单的 TCP connect 扫描器,逐步演变为受 Nmap 等行业标准工具启发的、功能更强大的侦察实用程序的过程。
## 📖 项目概述
PyPort Scout 演示了使用 Python 网络库进行 TCP 端口扫描的基础知识。随着项目的不断发展,新版本将引入额外的功能,同时保留以前的版本作为参考实现。
当前功能包括:
* TCP connect 扫描
* 主机名到 IP 的解析
* 检测开放的 TCP 端口
* 汇总关闭的端口
* 清晰的终端输出
未来的版本将通过额外的扫描和报告功能来扩展这些能力。
## 📂 仓库结构
```
PyPort-Scout/
│
├── README.md
├── CHANGELOG.md
│
├── v1_basic_tcp_scan/
├── v2_enhanced_scan/
├── v3_threaded_scan/
└── screenshots/
```
每个版本都代表了扫描器开发过程中的一个里程碑。
## 🚀 版本路线图
| 版本 | 状态 | 描述 |
| --------- | -------------- | --------------------------------------------------------------------- |
| ✅ v1 | 完成 | 基础 TCP connect 扫描器 |
| 🚧 v2 | 开发中 | 服务检测、可配置的扫描范围、改进的报告 |
| 📅 v3 | 已规划 | 多线程扫描与性能提升 |
| 📅 未来 | 已规划 | 额外的扫描技术、报告及可用性改进 |
## ✨ 当前功能
* 扫描目标 IP 地址或主机名
* 将域名解析为 IP 地址
* 扫描 TCP 端口
* 仅显示开放的端口
* 统计关闭的端口数量
* 记录扫描执行的时间戳
## 🛠 使用的技术
* Python 3
* socket
* datetime
版本 1 不需要任何第三方依赖。
## 📚 文档
每个版本的详细文档可以在其各自的目录中找到。
* `v1_basic_tcp_scan/README.md`
* `v2_enhanced_scan/README.md` *(即将推出)*
* `v3_threaded_scan/README.md` *(即将推出)*
## 📈 项目目标
本仓库旨在演示:
* Python 编程
* Socket 编程基础
* TCP 网络概念
* 侦察技术
* 渐进式软件开发
* 基于版本控制的功能演进
## ⚖️ 法律声明
本软件仅供教育和防御性安全目的使用。
作者不对本软件的任何滥用行为负责。用户在扫描任何系统或网络之前,有责任确保已获得适当的授权。
## 📄 许可证
本项目将在 MIT 许可证下发布。
标签:Python, 插件系统, 数据统计, 无后门, 端口扫描, 网络安全, 隐私保护