GitHub - GlassHaven/Haven: 适用于Android的免费SSH、VNC、RDP和SFTP客户端
GitHub - GlassHaven/Haven: 适用于Android的免费SSH、VNC、RDP和SFTP客户端
适用于Android的免费开源远程访问与移动工作空间 — SSH · Mosh · VNC · RDP · SFTP · SMB · 电子邮件 · 云存储、本地Linux shell、网状网络以及基于同意的AI代理端点
"Haven是一个有趣的vibe编码实验。让我们看看能产生什么结果。" — DBP
最左侧:在手机上实时运行的GPU加速Linux OpenGL — Mesa zink on venus通过Venus将Mali GPU传递给Haven cage中的桌面Linux GL应用,无需/dev/dri。
终端 — Mosh / Eternal Terminal / SSH、支持tmux的会话恢复、可配置键盘工具栏、OSC 7/8/9/52/133/777集成。
桌面 — VNC (RFB 3.8 / VeNCrypt)、RDP (IronRDP + EGFX)、GPU加速的原生Wayland合成器,以及多发行版的本地桌面管理器。
文件与云 — 统一浏览器,支持SFTP/SCP、SMB和60多个云提供商;跨文件系统复制/移动、编辑器和图像工具;以及设备端FFmpeg转码、HLS流媒体和DLNA。
连接 — 端口转发 (-L/-R/-D/-J)、SOCKS/HTTP/Tor代理、按应用配置的WireGuard和Tailscale隧道、端口敲门和fwknop SPA,以及SSH密钥(包括FIDO2/SK)。
本地Linux — 通过PRoot实现的Linux用户空间(无需root,任何Android 8+设备):Alpine、Debian、Arch或Void,并行运行。
USB转发 — 通过Android代理连接的USB设备,并将其重新暴露给代理、Linux客户机,或通过USB/IP暴露给远程主机(例如,手机上的YubiKey,触摸手机)。
Reticulum — 通过Reticulum网状网络的rnsh shell、文件传输和-L/-D端口转发,纯Kotlin实现。在没有互联网的情况下也能正常工作的唯一传输方式。
代理传输 (MCP) — 一个可选的MCP服务器,暴露约130个基于同意、可审计的工具;代理甚至可以查看和操作Haven本身,以实现自托管构建→安装→验证循环。
安全 — 生物识别锁、无遥测、加密备份/恢复 (AES-256-GCM)。
完整功能索引请参阅 docs/FEATURES.md。
提供12种语言版本:英语、简体中文、西班牙语、印地语、阿拉伯语(支持RTL)、葡萄牙语、孟加拉语、俄语、日语、韩语、法语和德语。界面跟随设备语言。欢迎社区贡献翻译。
| 渠道 | 链接 |
|---|---|
| F-Droid | F-Droid |
两种构建完全相同 — SSH、Mosh、Eternal Terminal、VNC、RDP、SFTP、SMB、电子邮件和云存储。IronRDP (Rust) 通过 cargo-ndk 从源码构建。rclone (Go) 通过 gomobile 从源码构建。
需要带有Android目标的 Rust、cargo-ndk、Go 1.26+ 和 gomobile:
# Rust (用于RDP)
rustup target add aarch64-linux-android x86_64-linux-android
cargo install cargo-ndk
# Go (用于rclone云存储)
go install golang.org/x/mobile/cmd/gomobile@latest
go install golang.org/x/mobile/cmd/gobind@latest
git clone --recurse-submodules https://github.com/GlassHaven/Haven.git
cd Haven
./gradlew assembleDebug
输出:app/build/outputs/apk/debug/haven-*-debug.apk
- 功能 — 详细功能描述。
- 备份文件格式 — 传输格式、PBKDF2/AES-GCM封装,以及当应用内导入器失败时用于手动解密的Python方法。
- 发布流程 — 版本控制、标签和F-Droid步骤。
- 隐私政策。
- 愿景。
| 库 | 用途 | 许可证 |
|---|---|---|
| IronRDP | RDP协议 | Apache 2.0 |
| JSch | SSH | BSD |
| smbj | SMB | Apache 2.0 |
| ConnectBot termlib | 终端仿真 | Apache 2.0 |
| reticulum-kt | Reticulum网状网络 | Apache 2.0 |
| rnsh-kt | 基于Reticulum的rnsh | Apache 2.0 |
| FFmpeg | 媒体转码 | LGPL/GPL |
| PRoot | Linux用户空间 | GPL 2.0 |
| labwc | Wayland合成器 | GPL 2.0 |
| wlroots | Wayland合成器库 | MIT |
| virglrenderer | GPU虚拟化 | MIT |
| Jetpack Compose | UI框架 | Apache 2.0 |
Haven 构建于上表列出的项目之上——繁重的工作在这个仓库存在之前很久就已经完成了。
Haven 的大部分发展方向来自用户群体,而非路线图:错误报告、边缘情况的截图、长问题线程中的“你试过……吗”评论。Claude Code Opus 编写了大部分实际代码;维护者的角色更接近用户群体与模型之间的信使——倾听、设定议程和检查质量。
少量定期捐款通过 Ko-fi 和 Liberapay 流入。这有助于抵消上述 Claude Code 使用的 Anthropic 账单,并且明确表明这项工作对人们有用。无论是否有捐款,项目都会继续进行。