BrenoRAM/Python-Port-Scanner
GitHub: BrenoRAM/Python-Port-Scanner
一个轻量的 Python 多线程 TCP 端口扫描器,帮助安全人员和运维工程师快速发现目标主机的开放端口与对应服务。
Stars: 0 | Forks: 0
# PortScanner
一个用 Python 编写的快速 TCP 端口扫描器,使用多线程同时扫描多个端口。
## 功能
- 扫描前 1000 个最常见端口(默认)
- 扫描前 10000 个最常见端口 (`--top-10k`)
- 扫描所有 65535 个端口 (`--all`)
- 通过 ping 自动检测超时
- 每个端口的服务名检测(例如 `80 → http`,`22 → ssh`)
- 多线程实现快速扫描
- 将结果保存到文件 (`-o`)
## 环境要求
```
pip install pythonping
```
## 使用方法
```
sudo python PortScanner.py -t [options]
```
### 选项
| 标志 | 描述 |
|------|-------------|
| `-t`, `--target` | 目标 IP 或域名(必填) |
| `--top-10k` | 扫描前 10k 个端口而不是前 1k 个 |
| `--all` | 扫描所有 65535 个端口 |
| `--threads` | 工作线程数(默认:30) |
| `--timeout` | 每个端口的超时时间,单位为毫秒(默认:通过 ping 自动检测) |
| `-o`, `--output` | 将开放端口保存到文件 |
### 示例
```
# 扫描 top 1000 ports
sudo python PortScanner.py -t scanme.nmap.org
# 扫描 top 10k ports 并保存结果
sudo python PortScanner.py -t scanme.nmap.org --top-10k -o results.txt
# 使用 50 threads 扫描 all ports
sudo python PortScanner.py -t scanme.nmap.org --all --threads 50
```
## 致谢
基于 [Hackstation](https://www.youtube.com/watch?v=255EwoaAcDk&t=3289s) 的教程。
标签:Linux工具, Ping检测, Python, Qt框架, TCP扫描, Windows内核, 二进制发布, 实时处理, 密码管理, 开源工具, 插件系统, 攻击路径可视化, 数据泄露防护, 数据统计, 无后门, 服务识别, 白帽子, 端口扫描, 端口探测, 系统独立性, 网络安全, 网络工具, 网络探测, 逆向工具, 隐私保护, 黑客工具