# ssh-client **Repository Path**: shiningrise/ssh-client ## Basic Information - **Project Name**: ssh-client - **Description**: 使用rust开发的ssh-client - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 0 - **Created**: 2026-09-23 - **Last Updated**: 2026-10-01 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # SSH Client 一个基于 Rust 和 egui 开发的跨平台 SSH 客户端应用。 # 项目开源网址 - https://gitee.com/shiningrise/ssh-client # 程序界面 ![](https://wxy-blog.oss-cn-hangzhou.aliyuncs.com/wxy-blog/2026/20260924083056538.png) ![](https://wxy-blog.oss-cn-hangzhou.aliyuncs.com/wxy-blog/2026/20260924083119696.png) ## 功能特性 - **多会话管理**:支持同时打开多个 SSH 会话标签页 - **终端模拟**:完整的 VT100/ANSI 终端模拟,支持256色 - **SFTP 文件传输**:支持文件上传、下载、目录浏览 - **内置编辑器**:支持语法高亮的文本编辑器 - **端口转发**:支持本地、远程和 SOCKS5 代理端口转发 - **主密码保护**:支持使用主密码加密存储服务器凭据 - **sudo 提权**:支持通过 sudo 执行特权操作 ## 支持平台 - Windows - Linux - ARM64 (如 Raspberry Pi) ## 构建依赖 - Rust 1.70+ - Cargo ## 编译构建 ### Linux ```bash cargo build --release ``` ### Windows ```bash cargo build --release --target x86_64-pc-windows-gnu ``` ### ARM64 Linux ```bash ./build_arm64.sh ``` ## 配置说明 配置文件默认为 `servers.json`,可通配命令行参数指定: ``` ssh-client --config /path/to/config.json ``` ### 服务器配置格式 ```json { "servers": [ { "name": "服务器名称", "host": "192.168.1.1", "port": 22, "user": "username", "password": "password", "key": "/path/to/private/key" } ] } ``` ## 使用说明 ### 基本操作 1. **连接服务器**:点击顶部工具栏的"+"按钮添加新服务器 2. **文件传输**:连接后右侧面板显示 SFTP 文件浏览器 3. **端口转发**:通过"转发"菜单配置端口转发规则 ### 快捷键 - `Ctrl+Shift+T`:新建标签页 - `Ctrl+W`:关闭当前标签页 - `Ctrl+Tab`:切换标签页 ## 项目结构 ``` src/ ├── main.rs # 程序入口 ├── app.rs # 主应用逻辑和 UI ├── ssh.rs # SSH 连接和会话管理 ├── term.rs # 终端模拟器 ├── termwin.rs # 终端渲染 ├── editor.rs # 内置编辑器 ├── config.rs # 配置管理 ├── crypto.rs # 加密和凭据保护 ├── portfw.rs # 端口转发 └── worker.rs # 后台任务处理 ``` ## 许可证 MIT License