srilakshmi-k1/Network-Port-Scanner
GitHub: srilakshmi-k1/Network-Port-Scanner
基于 Tkinter 构建的轻量级 TCP 端口扫描器,提供简洁图形界面和常见服务识别功能。
Stars: 0 | Forks: 0
# 网络端口扫描器 GUI
一个轻量级的 TCP 端口扫描器,具有使用 Python 和 Tkinter 构建的图形用户界面。
## 功能
- **简单的 3 字段界面** – 输入目标主机、起始端口和结束端口
- **多线程扫描** – 最多 500 个并发线程,结果快速
- **服务识别** – 自动标记知名端口(FTP, SSH, HTTP, HTTPS, MySQL, RDP 等)
- **实时进度** – 扫描期间进度条和耗时计数器实时更新
- **随时停止** – 优雅地取消正在运行的扫描
- **保存结果** – 将发现的开放端口导出为 `.txt` 文件
- **跨平台** – 可在 Windows, macOS 和 Linux 上运行
## 系统要求
- Python 3.7 或更新版本
- Tkinter(包含在标准 Python 发行版中;在 Debian/Ubuntu 上需安装 `python3-tk`)
不需要第三方软件包。
## 安装
```
git clone https://github.com/srilakshmi-k1/Network-Port-Scanner.git
cd nmap_portscan_gui
```
## 使用
```
python portscanergui.py
```
1. 输入 **Target (目标)** – IP 地址(例如 `192.168.1.1`)或主机名(例如 `scanme.nmap.org`)。
2. 设置 **Start Port (起始端口)** 和 **End Port (结束端口)**(默认值:`1` – `1024`)。
3. 点击 **Start Scan (开始扫描)**。开放端口会实时出现在结果窗格中。
4. 点击 **Stop (停止)** 以提前取消扫描。
5. 扫描完成后,点击 **Save Results (保存结果)** 将开放端口列表写入文本文件。
## 检测到的服务
以下端口会被自动标记:
| 端口 | 服务 |
|------|-----------|
| 21 | FTP |
| 22 | SSH |
| 23 | Telnet |
| 25 | SMTP |
| 53 | DNS |
| 80 | HTTP |
| 110 | POP3 |
| 143 | IMAP |
| 443 | HTTPS |
| 3306 | MySQL |
| 3389 | RDP |
| 5900 | VNC |
| 8080 | HTTP-Alt |
不在列表中的端口将报告为 `Unknown`。
## 项目结构
```
nmap_portscan_gui/
├── portscanergui.py # Main application (scanner + GUI)
└── README.md
```
## 免责声明
请仅在你拥有或获得明确扫描许可的主机和网络上使用此工具。未经授权的端口扫描在你所在的司法管辖区可能是非法的。
## 许可证
本项目基于 [MIT License](https://opensource.org/licenses/MIT) 发布。
标签:DNS枚举, DNS查询工具, GUI开发, Nmap替代, Python, Qt框架, Socket编程, TCP连接, Tkinter, 图形用户界面, 插件系统, 数据泄露防护, 无后门, 服务识别, 渗透测试辅助, 漏洞扫描前置, 漏洞赏金平台, 端口扫描器, 系统独立性, 网络安全工具, 网络探测, 轻量级应用, 逆向工具