shyamsundaryadav62/portscanner

GitHub: shyamsundaryadav62/portscanner

一个使用 Python socket 库构建的简易 TCP 端口扫描器,帮助用户探测目标主机开放的网络端口。

Stars: 0 | Forks: 0

# Python 端口扫描器 一个使用 Python 构建的简单 TCP 端口扫描器。此工具使用 Python 内置的 `socket` 库,扫描目标主机在指定范围内开放的 TCP 端口。 ## 功能 * 扫描目标主机的 TCP 端口 * 将域名解析为 IPv4 地址 * 显示扫描开始时间 * 简单且适合初学者的代码 * 对无效主机和网络错误进行异常处理 * 使用 **pyfiglet** 生成 ASCII 横幅 ## 使用的技术 * Python 3 * Socket 库 * Pyfiglet ## 安装说明 克隆仓库: ``` git clone https://github.com//Port-Scanner.git cd Port-Scanner ``` 安装所需的包: ``` pip install pyfiglet ``` ## 用法 通过提供目标主机名或 IP 地址来运行扫描器: ``` python portscanner.py scanme.nmap.org ``` 或者 ``` python portscanner.py 127.0.0.1 ``` ## 示例输出 ``` -------------------------------------------------- Scanning target: 45.33.32.156 Scanning started at: 2026-07-09 19:41:36 -------------------------------------------------- Port 22 is open Port 80 is open ``` ## 项目结构 ``` Port-Scanner/ │── portscanner.py │── requirements.txt └── README.md ``` ## 工作原理 1. 从命令行接收主机名或 IP 地址。 2. 将主机名转换为 IPv4 地址。 3. 创建 TCP socket。 4. 扫指定范围内的端口。 5. 显示所有开放的端口。 6. 优雅地处理无效主机和与网络相关的错误。 ## 要求 * Python 3.x * pyfiglet ## 未来改进 * 多线程扫描 * 自定义端口范围 * 服务/Banner 检测 * 将扫描结果保存到文件 * 更快的扫描速度 * 使用 argparse 实现命令行选项 ## 免责声明 本项目仅用于教育目的和授权的安全测试。请仅扫描您拥有或获得明确测试许可的系统。 ## 作者 **Shyam Sundar Yadav**
标签:Python, Socket编程, 插件系统, 数据统计, 无后门, 端口扫描, 网络安全, 逆向工具, 隐私保护