aunthakur0-create/Network-Port-Scanner

GitHub: aunthakur0-create/Network-Port-Scanner

一个用 Python 构建的类 Nmap 网络端口扫描器,支持端口状态检测、服务 banner 识别和多线程并发扫描,旨在帮助用户学习网络安全与网络编程基础。

Stars: 0 | Forks: 0

# 🔐 网络端口扫描器 # 📌 项目概述 本项目是一个使用 Python 构建的简化版、类似 Nmap 的网络端口扫描器。它会扫描指定端口范围内的目标 IP 地址或主机名,检测每个端口是处于 open、closed 还是 filtered 状态,并尝试通过 banner grabbing 识别开放端口上运行的服务。 本项目的主要目标是通过实践来学习网络安全概念——特别是端口扫描和服务枚举——同时解决现实世界中的网络安全问题。这是一个学习型项目,仅供教育和授权的安全测试目的使用。 # 🎯 项目目标 - 了解像 Nmap 这样的端口扫描器的底层工作原理。 - 使用 Python 实现基于 TCP/UDP socket 的扫描逻辑。 - 学习如何对端口状态进行分类(open、closed、filtered)。 - 实现 banner grabbing 以识别开放端口上运行的服务。 - 使用多线程加速大规模扫描。 - 提升编程和解决问题的能力。 - 学习使用 Git & GitHub 进行文档编写和版本控制。 - 展示实用的网络安全知识。 # ❓ 为什么开发这个项目 我创建这个项目是作为我在 **UNISOFT TECHNOLOGIES, Nagpur** 参加的网络安全培训的一部分。 端口扫描是任何网络安全评估的第一步,我希望了解其背后的实际实现,而不仅仅是学习理论。从头开始构建这个扫描器——处理原始 socket、超时、并发和服务指纹识别——帮助我提升了 Python 编程技能、逻辑思维、调试以及解决实际问题的能力。 该项目还帮助我学习了如何使用 GitHub 记录和管理专业的软件项目。 # 🛠️ 使用的技术 - Python 3.x - Python 标准库:`socket`、`threading`、`concurrent.futures`、`csv`、`json`、`argparse`、`ipaddress`、`datetime` - VS Code - Git - GitHub # ⚙️ 功能 - 扫描端口范围(例如 `1-1024`)、特定列表(`22,80,443`)或两者兼有。 - 检测端口状态:open、closed 或 filtered。 - 从开放端口获取服务 banner 以识别运行中的服务。 - 使用 `ThreadPoolExecutor` 进行多线程扫描,以获得更快的结果。 - 将扫描结果导出为 TXT、CSV 或 JSON。 - 通过 CLI 参数自定义超时时间和线程数。 - 扫描期间显示实时进度条。 - 可选的 UDP 扫描模式。 - 彩色终端输出,提高可读性。 # 💡 学习成果 通过这个项目,我学习了: - Python 中的 TCP/UDP socket 编程 - 端口扫描技术和状态分类 - Banner grabbing 和基本的服务指纹识别 - 使用 `ThreadPoolExecutor` 进行并发处理 - 使用 `argparse` 构建 CLI 工具 - 文件处理和数据导出(TXT、CSV、JSON) - Git & GitHub - 文档编写 - 调试 - 解决问题 - 项目结构 # ⚠️ 免责声明 本项目完全出于教育和学习目的而创建。 它只能在您拥有或获得明确测试授权的系统和网络上使用。开发者不对本项目的任何滥用行为负责。 # 🏫 学院信息 **学院名称:** UNISOFT TECHNOLOGIES, Nagpur 本项目是在 UNISOFT TECHNOLOGES 举办的网络安全培训项目期间开发的。 # 👨‍🏫 培训导师 培训与指导提供者: **Anurag Dubey** 网络安全培训师 UNISOFT TECHNOLOGIES, Nagpur # 👨‍💻 学生信息 姓名:Annu Thakur 学号:51 班级:CM 课程:网络安全 提交日期:30/7/2026 # 🔮 未来改进 - 添加 GUI - 操作系统指纹识别 - 改进的服务版本检测 - 更好的错误处理 - 添加日志记录 - SYN (half-open) 扫描支持 # 📄 许可证 本项目仅出于教育目的发布。 # ⭐ 致谢 我衷心感谢 **UNISOFT TECHNOLOGIES, Nagpur** 提供参与实际网络安全项目的机会。 特别感谢我的培训导师 **Anurag Dubey**,感谢他在整个项目开发过程中给予的持续指导、支持和鼓励。 本项目体现了在培训项目中所获得的知识和实践技能。
标签:Homebrew安装, Python, Scrypt密钥派生, 插件系统, 数据统计, 无后门, 服务指纹识别, 端口扫描, 网络安全, 网络工具, 逆向工具, 隐私保护