GrooveXlabs/simple-port-scanner

GitHub: GrooveXlabs/simple-port-scanner

一个基于 Python 的教学型 TCP 端口扫描器,帮助网络安全学习者通过实际操作理解网络侦察和 socket 编程基础知识。

Stars: 0 | Forks: 0

Typing Animation




## 🔍 概述 **GrooveXlabs Simple Port Scanner** 是一个轻量级的、基于教育目的编写的 Python TCP 端口扫描器。它通过扫描目标主机上的一系列端口来识别正在监听的服务,从而帮助您了解网络侦察的基础知识。 ## ✨ 功能 - 🎯 **单个与范围扫描** — 扫描单个端口或完整范围 (1–65535) - ⚡ **快速超时** — 0.5 秒的 socket 超时,提供响应式反馈 - 🖥️ **交互式 CLI** — 用于输入主机和端口范围的简单提示 - 🛡️ **输入验证** — 净化端口范围并防止无效输入 - 📋 **清晰的输出** — 清晰地列出所有发现的开放端口 ## 🚀 快速开始 ``` # 克隆 repo git clone https://github.com/GrooveXlabs/simple-port-scanner.git cd simple-port-scanner # 运行 scanner python port_scanner.py ``` **示例:** ``` $ python port_scanner.py === Groovexlabs Simple Port Scanner === Enter host to scan (e.g. 127.0.0.1 or scanme.nmap.org): scanme.nmap.org Enter start port (e.g. 1): 20 Enter end port (e.g. 1024): 25 Scanning scanme.nmap.org from port 20 to 25... [+] Port 22 is OPEN Scan complete. Open ports: - 22 ``` ## 📁 文件结构 ``` simple-port-scanner/ ├── port_scanner.py # Main scanner logic ├── README.md # This file └── LICENSE # MIT License ``` ## 🛡️ 工作原理 ``` ┌─────────────┐ ┌──────────────┐ ┌─────────────────┐ │ Input │────→│ TCP Socket │────→│ Timeout/Result │ │ Host + Port │ │ Connection │ │ Open / Closed │ └─────────────┘ └──────────────┘ └─────────────────┘ ``` 1. 创建一个 TCP socket (`socket.AF_INET`, `socket.SOCK_STREAM`) 2. 设置 0.5 秒的超时时间以避免阻塞挂起 3. 尝试连接范围内的每个端口 4. 打印开放端口并汇总结果 ## 🧠 学习路径 1. **在本地运行** — 扫描 `127.0.0.1` 以查看您自己的服务 2. **尝试 scanme.nmap.org** — 一个安全、授权的练习目标 3. **阅读代码** — 了解 socket、超时和异常处理 4. **对其进行扩展** — 添加 banner grabbing、多线程或 Nmap 风格的输出 ## ⚠️ 法律与合规使用 **GrooveXlabs 对本工具的滥用不承担任何责任。** ## 🗺️ 相关的 GrooveXlabs 项目 | 代码库 | 描述 | |---|---| | [GrooveXlabs](https://github.com/GrooveXlabs/GrooveXlabs) | 密码强度分析器 | | [security-notes](https://github.com/GrooveXlabs/security-notes) | 精心整理的网络安全学习笔记 | | [redtrack](https://github.com/GrooveXlabs/redtrack) | 红队侦察与攻击路径映射 | ## 📜 许可证 基于 MIT 许可证分发。查看 `LICENSE` 获取更多信息。

🔒 出于安全考虑而构建。坚定信仰开源。
GrooveXlabs 维护
标签:Python, 插件系统, 数据统计, 无后门, 端口扫描, 网络安全教育, 逆向工具