rogue-agent1/portprobe

GitHub: rogue-agent1/portprobe

一款零依赖的纯 Python TCP 端口扫描器,支持并发扫描、服务识别和 banner 抓取,适合快速端口探测和服务健康检查。

Stars: 0 | Forks: 0

# portprobe 🔍 快速的 TCP 端口扫描器和服务检测器。支持扫描范围、检测特定端点,或探测常用服务端口。支持 banner 抓取。 ## 功能特性 - **快速并发扫描** — 默认 100 个 worker,几秒钟内扫描 1024 个端口 - **Banner 抓取** — 识别 HTTP 服务器、SSH 版本等 - **常用端口知识库** — 熟知 40 多种知名服务(SSH、HTTP、Redis、PostgreSQL 等) - **三种模式** — 范围扫描、针对性检测或常用端口扫描 - **JSON 输出** — 适用于 CI/监控的机器可读格式 - **零依赖** — 纯 Python 3.10+ ## 用法 ### 扫描端口范围 ``` # 扫描前 1024 个端口 python3 portprobe.py scan 192.168.1.1 # 自定义范围 python3 portprobe.py scan myserver.local --ports 8000-9000 # 特定端口 python3 portprobe.py scan host.local --ports 80,443,8080,3000 ``` ### 检测特定端点 ``` # 检查服务是否可达 python3 portprobe.py check localhost:8080 db.local:5432 cache:6379 # 仅当所有端口都开放时返回 exit code 0 ``` ### 扫描常用服务端口 ``` # 快速检查已知服务(SSH、HTTP、数据库等) python3 portprobe.py common myserver.local ``` ## 输出 ``` localhost (127.0.0.1) Scanned 40 ports in 1008ms PORT STATE SERVICE LATENCY BANNER ───────────────────────────────────────────────────────────────── 5000/tcp open Dev 3ms HTTP/1.1 200 OK 18789/tcp open OpenClaw 2ms 2 open / 40 scanned ``` ## 选项 | 标志 | 描述 | |------|-------------| | `--ports, -p` | 端口范围(默认:1-1024) | | `--timeout, -t` | 连接超时时间(默认:扫描 1s,检测 2s) | | `--workers, -w` | 并发 worker 数(默认:100) | | `--no-banner` | 跳过 banner 抓取(更快) | | `--json, -j` | JSON 输出 | ## 退出码 - `0` — 发现开放端口(scan/common)或所有目标均开放(check) - `1` — 无开放端口或部分目标已关闭 ## 许可证 MIT
标签:Banner Grabbing, DNS枚举, DNS查询工具, Python, Qt框架, TCP, URL短链接分析, 并发扫描, 插件系统, 无后门, 服务器安全, 服务探测, 服务识别, 端口扫描器, 纯Python, 网络安全工具, 网络调试, 自动化, 零依赖