Adeolu-Noah-Agboola/Port_Scanner

GitHub: Adeolu-Noah-Agboola/Port_Scanner

基于Python Socket编程的TCP端口扫描器,用于识别开放端口和服务,支持日志自动记录与集中存储。

Stars: 0 | Forks: 0

# Python TCP 端口扫描器 ## 概述 本项目是一个基于 Python 的 TCP 端口扫描器,旨在识别远程主机上的开放端口和运行中的服务。该扫描器通过尝试连接指定范围的端口并记录结果以供后续分析,从而自动化网络侦察。 开发该项目是为了加深对网络服务、系统暴露以及基础设施管理和安全环境中常用诊断技术的理解。 扫描结果会自动写入日志文件,并且该日志文件可以上传到 Web 服务器进行集中存储和审查。 ## 功能特性 - 对远程主机进行 TCP 端口扫描 - 识别开放的网络服务 - 自动记录扫描结果 - 将扫描日志上传到 Web 服务器 - 可配置的目标主机和端口范围 - 轻量级且易于运行 ## 技术栈 - Python 3 - Socket 编程 - 网络诊断 - 文件日志记录 - Web 服务器集成 ## 扫描器工作原理 端口扫描器使用 Python 的 socket 库尝试与目标主机的特定端口范围建立 TCP 连接。 对于指定范围内的每个端口: 1. 尝试建立 TCP 连接 2. 如果连接成功,则识别该端口为开放状态 3. 将结果记录在结构化的日志文件中 4. 日志文件可选择上传到 Web 服务器 此过程模拟了网络诊断和安全测试中使用的侦察技术。 ## 示例输出 ``` Starting scan on target: 192.168.1.10 Port 22 : OPEN Port 80 : OPEN Port 443 : OPEN Port 8080: CLOSED ``` 将生成包含所有扫描结果的日志文件。 ## 项目结构 ``` Port_Scanner/ │ ├── port_scanner.py ├── scan_log.txt └── README.md ``` - **port_scanner.py** – 用于执行扫描的主要 Python 脚本 - **scan_log.txt** – 生成的文件,包含扫描结果 - **README.md** – 项目文档 ## 安装说明 克隆仓库: ``` git clone https://github.com/Adeolu-Noah-Agboola/Port_Scanner.git ``` 进入项目目录: ``` cd Port_Scanner ``` 运行扫描器: ``` python port_scanner.py ``` ## 使用场景 本项目可用于: - 网络诊断 - 服务发现 - 学习 Socket 编程 - 基础设施故障排查 - 安全测试实践 ## 未来改进 潜在的增强功能包括: - 多线程扫描以提升性能 - 服务 Banner 抓取 - 与漏洞扫描器集成 - 改进报告和可视化 ## 教育背景 本项目是作为网络和安全实践课程的一部分而开发的。它补充了涉及以下内容的其他实验: - Linux 系统管理 - 使用 Wireshark 进行数据包捕获和流量分析 - 网络协议实验 - 在虚拟化环境中进行安全测试 ## 免责声明 本工具仅供教育目的和经授权的安全测试使用。在扫描网络或系统之前,请务必确保您已获得明确许可。
标签:Awesome, Cronjob, ETW劫持, PE 加载器, Python, TCP连接, Web服务器集成, 二进制发布, 套接字编程, 密码管理, 开源工具, 情报分析, 插件系统, 数据统计, 无后门, 日志记录, 服务发现, 端口扫描, 系统管理, 网络安全, 网络诊断, 隐私保护