Krunal-Jadav/JK-Python-Port-Scanner
GitHub: Krunal-Jadav/JK-Python-Port-Scanner
使用 Python 编写的多线程 TCP 端口扫描器,通过 Socket 连接探测目标主机开放端口,并支持域名解析,用于网络安全教育与实践。
Stars: 0 | Forks: 0
# JK Python 端口扫描器




一个使用 Python 开发的简单多线程 TCP 端口扫描器。该项目通过尝试与目标主机的每个端口建立连接,来扫描目标主机并识别开放的 TCP 端口。编写此项目是为了加深我对 Python 编程、Socket 编程、网络概念、多线程以及 Git/GitHub 的理解。
本项目仅用于教育目的,请仅在您拥有或已获授权测试的系统上使用。
## 项目背景
本项目最初是在我的 B.Sc. IT (网络安全) 学习期间开发的,旨在加强我对 Python 编程、Socket 编程、网络以及网络安全概念的理解。
尽管该项目最初是在大学期间创建的,但当时并未编写文档或发布到 GitHub 上。后来我重新审视了这个项目,改进了代码,添加了完整的文档,并将其作为我的网络安全作品集的一部分发布到了 GitHub 上。
## 功能
- 扫描目标 IP 地址或域名
- 自动将域名解析为 IP 地址
- 检测开放的 TCP 端口
- 采用多线程扫描以提升性能
- 用户友好的命令行界面
- 显示总扫描时间
- 对初学者友好的 Python 实现
## 使用技术
- Python 3
- Socket 编程
- ThreadPoolExecutor
- Git
- GitHub
- Visual Studio Code
## 项目结构
```
JK-Python-Port-Scanner/
│
├── scanner.py
├── README.md
├── LICENSE
├── .gitignore
├── requirements.txt
│
└── screenshots/
├── scan_localhost.png
└── scan_scanme.png
```
## 工作原理
1. 用户输入目标 IP 地址或域名。
2. 如果提供的是域名,则会将其解析为 IP 地址。
3. 扫描器尝试连接每个 TCP 端口。
4. 在屏幕上显示开放的端口。
5. 扫描完成后显示总扫描时间。
## 安装说明
克隆仓库:
```
git clone https://github.com/Krunal-Jadav/JK-Python-Port-Scanner.git
```
进入项目目录:
```
cd JK-Python-Port-Scanner
```
运行扫描器:
```
python scanner.py
```
## 示例输出
```
==================================================
JK Python Port Scanner Version 1.0
Developed by Krunal Jadav
==================================================
Enter Target Host: scanme.nmap.org
Port 22 is OPEN
Port 80 is OPEN
Scan completed in 8.74 seconds
```
## 展现的技能
本项目展示了我对以下内容的理解:
- Python 编程
- Socket 编程
- TCP/IP 网络
- DNS 解析
- 多线程
- 端口扫描概念
- 命令行应用
- Git 版本控制
- GitHub 工作流
## 未来改进
未来版本计划实现的功能:
- Banner Grabbing
- 服务检测
- UDP 端口扫描
- 将结果导出为 CSV
- 将结果导出为 JSON
- 进度条
- 自定义超时
- 自定义端口范围
- 彩色输出
- 版本检测
## 学习成果
在开发本项目的过程中,我提升了对以下内容的理解:
- TCP 通信
- 客户端-服务器网络
- Socket 编程
- Python 线程
- Git 和 GitHub
- 构建命令行工具
- 编写简洁且易于维护的代码
## 免责声明
本项目仅供教育和学习目的使用。
未经适当授权,请勿使用此工具扫描系统。未经授权的扫描可能会违反组织政策或适用法律。
## 作者
## 与我联系
**Krunal Jadav**
🎓 B.Sc. IT (网络安全)
🛡️ 有志成为 SOC Analyst | Blue Team 学习者 | 有志成为 Purple Team
📧 电子邮件:Krunaljadav3011@gmail.com
💼 LinkedIn:
https://www.linkedin.com/in/krunal-jadav-cyber
🐙 GitHub:
https://github.com/Krunal-Jadav
标签:Python, 插件系统, 数据统计, 无后门, 端口扫描, 网络安全, 网络工具, 隐私保护