Neecool/Syntecxhub_Project-1_TCP-Port-Scanner.

GitHub: Neecool/Syntecxhub_Project-1_TCP-Port-Scanner.

一个基于 Python 标准库构建的零依赖多线程 TCP 端口扫描器,用于网络安全基础学习与授权范围内的端口探测。

Stars: 0 | Forks: 1

# TCP 端口扫描器 ## Syntecxhub 实习项目 学习 Python 中的 socket 编程、多线程和网络安全基础知识! 涵盖 TCP 连接扫描、并发线程、端口范围过滤和实时日志记录。 **技术栈:** Python(标准库:`socket`、`threading`、`argparse`、`logging`) ## 简介 本项目作为我在 **Syntecxhub 实习(第 1 周,项目 1)** 的一部分而开发,提供了 TCP 端口扫描器的实际实现。 它演示了如何建立网络连接、处理底层 socket 错误,以及如何使用基于线程的并发来大幅提升扫描速度。 该工具设计轻量、无依赖,并且对于初学者和安全爱好者来说都具有高度的可配置性。 ## 功能 - **单个/多个主机扫描** – 扫描任何 IP 地址或域名。 - **灵活的端口选择** – 定义范围 (`1-1024`) 或列表 (`80,443,8080`)。 - **多线程架构** – 使用并发线程来加速扫描过程(线程限制可配置)。 - **全面的日志记录** – 将所有结果(开放/关闭/超时/错误)写入带有时间戳的日志文件 (`port_scan_results.log`)。 - **超时配置** – 调整连接超时以适应不同的网络条件。 - **优雅的异常处理** – 捕获 DNS 错误、拒绝连接和超时而不会导致崩溃。 - **用户友好的摘要** – 完成后打印开放端口和总体统计信息的清晰摘要。 ## 使用的技术 - **Python 3.x** - **标准库**: - `socket` (核心网络通信) - `threading` (并发) - `argparse` (命令行界面) - `logging` (调试和结果存储) - `ipaddress` (验证) *(零外部依赖!)* ## 如何运行该项目? ### 前置条件: - 系统已安装 Python 3.6+。 - 具备基础的命令行知识。 ### 设置与执行: **1. 克隆代码库(或导航至项目文件夹):** git clone https://github.com/neecool/Syntecxhub_Project-1_TCP-Port-Scanner.git cd Syntecxhub_Project-1_TCP-Port-Scanner **2. 运行扫描器(无需安装!):** 基础扫描(扫描 localhost 的默认端口 1-1024): python port_scanner.py localhost 扫描特定 IP 地址: python port_scanner.py 192.168.1.1 扫描特定范围的端口(例如 1 到 1000): python port_scanner.py example.com -p 1-1000 仅扫描特定的常用端口: python port_scanner.py scanme.nmap.org -p 22,80,443,8080 提高速度(更多线程)并自定义超时: python port_scanner.py localhost -T 200 -t 2 查看详细输出(每个端口的详细日志): python port_scanner.py localhost -v ## 道德免责声明 重要提示:此工具仅供教育、网络故障排除和授权的安全测试目的使用。 在大多数司法管辖区,扫描您不拥有或未获得明确书面测试许可的网络、基础设施或设备是非法的。 开发者、Syntecxhub 和贡献者对任何滥用本软件或由此造成的损坏概不负责。请负责任地使用,并仅限于您自己的系统(例如 localhost 或实验环境)。 ## 主要收获(实习) 在 Syntecxhub 的第 1 周,构建这个项目帮助我理解了: Socket 编程基础:如何使用 connect_ex() 在代码级别执行 TCP 握手。 并发与多线程:高效管理线程池以同时扫描数百个端口。 CLI 参数解析:使用 argparse 构建用户友好的命令行工具。 实时日志记录:日志记录对于调试和合规性的重要性。 异常处理:编写健壮的代码,优雅地处理网络超时、DNS 故障和拒绝连接。 ## 开发者 Nikulkumar Suthar Syntecxhub 实习生 ## 致谢 感谢 Syntecxhub 提供这次宝贵的实习机会和具有挑战性的项目。 感谢 Python Software Foundation 维护了强大的标准库。 感谢开源社区持续的启发和学习资源。
标签:DNS查询工具, Python, Socket编程, 插件系统, 无后门, 端口扫描器, 网络安全, 网络工具, 逆向工具, 隐私保护