# SSH-Port-Forwarder **Repository Path**: spider1462/ssh-forward-ui ## Basic Information - **Project Name**: SSH-Port-Forwarder - **Description**: 利用ssh协议的端口转发可交互程序。 - **Primary Language**: Python - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-10-24 - **Last Updated**: 2025-11-01 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # SSH Port Forwarder 使用说明 ## 功能介绍 这是一个基于Python的SSH端口转发工具,提供了两种不同的用户界面实现: 1. 基于Tkinter的传统图形界面版本 2. 基于Toga跨平台GUI框架的现代化版本 可以方便地在本地和远程主机之间建立端口映射。 ## 主要特性 1. 图形化用户界面(支持多种GUI框架) 2. 支持多个端口映射配置 3. 实时显示端口转发状态 4. 简单易用的操作流程 ## 项目结构 ``` ssh_port_forwarder/ ├── ssh_port_forwarder.py # Tkinter版本主程序 ├── run.py # 启动脚本(自动安装依赖) ├── requirements.txt # 依赖库列表 └── togaVersion/ # Toga版本目录 ├── main.py # Toga版本主程序 └── ssh_forwarder.py # SSH连接和端口转发实现 ``` ## 使用方法 ### 1. 安装依赖库 在运行程序前,请先安装所需的Python库: ```bash pip install -r requirements.txt ``` ### 2. 启动程序 #### Tkinter版本(传统界面): ```bash python ssh_port_forwarder.py ``` 或使用启动脚本(自动处理依赖): ```bash python run.py ``` #### Toga版本(跨平台GUI): ```bash cd togaVersion python main.py ``` ### 3. 配置远程主机信息 在界面中填写以下信息: - **IP地址**: 远程SSH服务器的IP地址 - **端口**: SSH服务监听的端口号(默认为22) - **用户名**: 登录远程服务器的用户名 - **密码**: 登录远程服务器的密码 ### 4. 配置端口映射 点击"添加转发规则"按钮来配置端口转发规则: - **本地端口**: 本地要监听的端口号 - **远程主机**: 要转发到的目标主机地址(可以是IP或域名) - **远程端口**: 目标主机上要连接的端口号 ### 5. 启动和停止转发 点击"启动端口转发"按钮启动所有配置的端口转发。程序会建立SSH连接并创建端口映射。 点击"停止端口转发"按钮可以停止所有的端口转发连接。 ## 注意事项 1. 确保远程主机支持SSH服务 2. 请确保防火墙允许相应的端口通信 3. 密码在界面中以星号显示,保证安全性 4. 建议使用密钥认证而非密码认证来提高安全性 5. 如果遇到连接问题,请检查网络连通性和SSH配置 ## 界面说明 - **远程主机配置区域**: 输入SSH服务器的连接信息 - **端口映射区域**: 配置本地监听端口和目标地址/端口 - **按钮区域**: 控制程序运行状态 - **端口映射列表**: 显示所有已添加的端口转发规则及其当前状态 ## 依赖库说明 本程序使用以下Python库: - `paramiko`: 用于SSH连接和端口转发功能 - `toga` (Toga版本): 用于跨平台GUI界面(仅在运行Toga版本时需要) ## 其他 项目由qwen3 coder生成。