Submarine
0.4远程桌面,支持共享剪贴板和速度选项

你的所有服务器,都在一个加密应用里

Submarine 是一款适用于 Windows、macOS、Linux 和 Android 的 SSH、SFTP、RDP、VNC 和 Telnet 客户端。你的服务器、密码和密钥会在你的设备上加密保存;只有你愿意时,它们才会在你的设备之间同步。

  • 无广告
  • 无跟踪
  • 无付费版
  • 无需账户
WindowsmacOSLinuxAndroid
电脑上的 Submarine:左边是 SSH 终端,右边是双栏文件浏览器
在你的设备上加密 SSH · SFTP · RDP · VNC · Telnet 仅在你愿意时同步

一个应用,取代

终端SFTP 客户端隧道管理器RDP 应用VNC 查看器Telnet 客户端Submarine
功能

管理服务器所需的一切,都在一个窗口里

连接、传输、转发、监控和共享,在你用的每台电脑上,也在你的手机上。

终端

标签页、分屏、真彩色、10,000 行回滚缓冲区、配色方案和 Nerd Fonts。用 Ctrl+Shift+F 搜索终端中显示的内容,用 Ctrl+Shift+R 搜索你输入过的命令。

Wall

多台服务器并排显示,还能同时向所有服务器输入。

双栏 SFTP

拖放、文件夹比较、远程文件编辑、压缩包、sudo,还支持没有 SFTP 的服务器。

RDP 和 VNC0.4 新增

在标签页中使用远程桌面,支持共享剪贴板、速度和画质选项,还有一个显示连接状况的标记。

Telnet0.4 新增

用于老式交换机和路由器,并明确标记为未加密。

隧道

本地、远程和 SOCKS 转发,每个连接都有实时日志。

密钥与 SSH agent0.4 新增

你的 ~/.ssh/config、SSH agent、硬件密钥、OpenSSH 证书、跳板机和代理。

加密配置文件

AES-256-GCM 加密,密钥由 Argon2id 生成。如果你愿意,可以用 Windows Hello 或指纹解锁。

按需同步

在你的设备之间同步,每个条目在发送前都会先在设备上加密。

共享配置文件

与你的团队共享服务器。每个成员都会收到一份为其本人封装的配置文件密钥。

监控

CPU、内存、磁盘和网络,服务器宕机时发出提醒,还有服务和 Docker。

命令和笔记

保存你常用的命令,并在终端中粘贴或运行它们。

Android

在手机上使用同一个配置文件,终端带按键栏。

导入

从 PuTTY、MobaXterm 和 OpenSSH 导入你的服务器。

深入了解

为你每天的工作而设计

跟得上你节奏的终端

标签页、分屏,以及 Wall:它把多台服务器并排显示,还能同时向所有服务器输入。

  • 用 Ctrl+Shift+F 搜索终端中显示的内容,用 Ctrl+Shift+R 搜索你输入过的命令(Mac 上为 Cmd+Shift)。普通的 Ctrl+F 和 Ctrl+R 仍留给 shell 使用。
  • 右键点击 + 按钮,可以打开一个使用单独登录、走单独连接的终端:只这一次,或者对该服务器始终如此。
  • 真彩色、10,000 行回滚缓冲区、配色方案和 Nerd Fonts。
Wall:三台服务器在同一个窗口中并排显示

文件,并排管理

双栏 SFTP,可以在你的电脑和服务器之间拖放文件。

  • 比较两个文件夹:有差异的、较新的,或只存在于一侧的文件都会被标记出来。
  • 实时编辑远程文件,并在服务器上打包和解压压缩包。
  • 通过 sudo 以 root 身份操作,即使服务器没有 SFTP 也可以。
  • 在你修改本地文件夹的同时,把它镜像到服务器上(在电脑上)。
比较本地文件夹和远程文件夹:有差异的文件会被标记出来

隧道,无需命令行

本地、远程和 SOCKS 转发:每条转发都可以命名,可以按需随应用一起启动。

  • 经过隧道的每个连接都有实时日志。
  • 和其他连接一样,可以经由跳板机和代理。
端口转发面板:三条隧道及其状态

兼容你已有的工具

读取你的 ~/.ssh/config,可从 PuTTY、MobaXterm 和 OpenSSH 导入。

  • 使用你的 SSH agent:Pageant、Windows 的 OpenSSH agent、1Password、硬件密钥。
  • OpenSSH 证书、跳板机,以及 HTTP 和 SOCKS 代理。
  • 当保存的密码不对,或者没有保存密码时,密码提示框会提供 Save password(保存密码)选项。登录成功后,密码就会保存下来。
新建服务器的表单,可从 ~/.ssh/config 导入

出了问题,及时知道

通过 SSH 监控 CPU、内存、磁盘和网络,服务器宕机时会通知你。

  • 服务器上无需安装任何东西。
  • 服务器信息、服务和 Docker 容器都集中在一处。
监控:三台服务器的实时图表

登录凭据,加锁保存

密码和密钥保存在加密的配置文件中,只有你的密码才能打开它。

  • AES-256-GCM 加密,密钥由 Argon2id 从你的密码生成。密码从不保存。
  • 可以用 Windows Hello 解锁,在 Android 上可以用指纹解锁。在你开启之前,此功能是关闭的。
  • 锁定配置文件会关闭所有连接,包括仍在登录中的连接。
加密配置文件中保存的登录凭据和 SSH 密钥

手机上也能用

在 Android 上使用同一个配置文件,加密方式也相同。

  • 终端带按键栏,提供 Ctrl、Alt、Esc、Tab 和方向键。
  • 文件传输和隧道。
  • 远程桌面,支持触控、缩放、共享剪贴板、连接标记和速度选项。手机不会与 RDP 服务器共享任何文件。
Android 手机上的 Submarine:带按键栏的 SSH 终端
0.4 新增

远程桌面,就在你的终端旁边

VNC 和内置 RDP 客户端在标签页中打开,可以直接连接,也可以经由你的某台 SSH 服务器连接。RDP 也可以在你电脑自带的 RDP 应用中打开。

Submarine 标签页中通过 RDP 连接的远程桌面,工具栏上有 Paste、连接标记(Good,6 ms)、Files 和 Settings
Submarine 标签页中的 VNC 桌面,标记为未加密
远程桌面标签页的 Speed and quality(速度和质量)面板

看清连接状况

标签页中的标记会显示 Good(良好)、Fair(一般)、Weak(较弱)或 Not answering(无响应),以及延迟。它的面板会显示每个方向传输了多少数据;连接较弱时,它会建议你使用更少的数据。

画面清晰,或更省数据

你可以选择颜色、分辨率,对 VNC 还可以选择画面的更新频率;也可以直接选一个快捷选项,例如 Less data(更少数据)。隐藏的标签页会暂停画面,因此没人看时不会传输任何内容。

共享剪贴板

你在远程桌面上复制的文本会来到你的剪贴板;而你的剪贴板内容只在你粘贴时才会发过去。VNC 只能传输纯文本。

通过 RDP 共享文件

内置 RDP 客户端可以共享一个文件夹或整个驱动器,也可以设为只读。只能在电脑上使用,手机上不行。这个选择只保存在本设备上,从不同步。

用你的 RDP 应用,无需输入密码

经由 SSH 服务器连接时,你的 RDP 应用每次都会连接到同一个本地地址,因此它记住的内容(受信任的证书、保存的登录信息)都能再次找到。在 Windows 上,“远程桌面连接”还会收到保存的密码,密码经过加密,放在一个文件中,文件被读取后即删除。

经由你的 SSH 服务器

RDP、VNC 和 Telnet 都可以经由你的某台 SSH 服务器连接。未加密的连接会有明显标记。

内置 RDP 客户端是实验性功能,在你为某台服务器选择它(Open in: Submarine's tab)之前是关闭的。在此之前,RDP 会在你电脑上的 RDP 应用中打开。在 Android 上,使用的是内置客户端。

从设计上保护隐私

你的数据属于你。我们无法读取。

你的数据在保存之前、在离开你的设备之前,都会先加密。我们会准确公开我们的服务器能看到和不能看到的内容。

在你的设备上加密

配置文件使用 AES-256-GCM 加密。密钥由你的密码通过 Argon2id 生成。密码本身从不保存,也从不发送。

同步是可选的

如果你开启同步,每个条目都会先在你的设备上加密。服务器只保存加密后的版本。不过,它确实能看到一些相关信息,例如你的邮箱地址和你何时同步,我们把这些信息全部列了出来。

不跟踪

没有广告,没有统计分析,没有崩溃报告。应用只与以下对象通信:你的服务器、同步服务器(如果你已登录),以及用来检查新版本的 GitHub。

工作原理,以及如何亲自验证

免费

真的免费

没有付费版,没有试用期,没有广告,也无需账户。

  • Submarine 是免费的开源软件,采用 MIT 许可证。
  • 你不需要账户。账户只用于可选的设备间同步。
  • 同步服务同样免费,但有合理的限额:每个账户最多 5 MB 加密数据、20,000 个条目和 100 个配置文件。
  • 源代码是公开的。你可以阅读它、自己构建应用,或者使用你自己的同步服务器。
下载

获取 Submarine

所有下载都来自本项目在 GitHub 上的发布版本。

Windows

Windows 10 和 11 · 安装程序(.exe 或 .msi)

下载

macOS

Apple Silicon(M1 及更新机型)· .dmg

下载

Linux

.deb、.rpm、Arch 软件包和 AppImage

下载

Android

Android 7.0 及更高版本 · .apk

下载

本页介绍的是 0.4 版,它正处于最后测试阶段,尚未发布。在它发布之前,“下载”按钮提供的是 0.3.8 版。0.3.8 版有终端、文件传输、隧道、监控和同步,但没有远程桌面、Telnet、Windows Hello 和指纹解锁、SSH agent、文件夹比较,以及 0.4 新增的其他功能。从 0.4 版开始,Windows 还会提供便携版 .zip。

校验下载文件

  • 从 0.4 版开始,每个发布版本都附带一个 SHA256SUMS 文件,其中包含每个下载文件的校验和。
  • 从 0.4 版开始,Android 应用使用作者的密钥签名。其证书的 SHA-256 指纹为 e9e350dc9f8628bee461be3424c0c2b2180f00685cc380de80c86808ae669f1c。
  • Windows 和 macOS 版本目前还没有代码签名,因此第一次打开时,系统可能会发出警告。
帮助

问题与解答

Submarine 真的免费吗?

是的。应用免费且开源,采用 MIT 许可证,没有付费版,也没有广告。同步服务同样免费,但受上述限额约束。

我需要账户吗?

不需要。没有账户也能使用所有功能。只有当你想在设备之间同步配置文件时,才需要账户。

同步服务器能读取我的密码吗?

不能。每个条目在上传前都会先在你的设备上加密,服务器永远拿不到密钥。不过,它确实能看到你数据的一些相关信息,例如你的邮箱地址、你何时同步,以及你有多少个条目。安全页面列出了所有这些信息。

如果我忘了配置文件密码怎么办?

那么任何人都无法打开这个配置文件,我们也不能。密码无法找回,因为它从未保存在任何地方。请把它妥善保管。

我能使用 RDP、VNC 和 Telnet 吗?

可以,从 0.4 版开始。VNC 在标签页中显示屏幕,并共享剪贴板(纯文本)。RDP 会在你电脑上的 RDP 应用中打开,或者用实验性的内置客户端在标签页中打开;内置客户端会共享剪贴板,在电脑上还能共享一个文件夹或驱动器。在 Submarine 标签页中,两者都会显示连接状况,并让你用画质换取更少的数据量。Telnet 在终端标签页中打开。三者都可以经由 SSH 服务器连接,Telnet 和普通 VNC 会标记为未加密。

远程桌面会从我的电脑获得什么?

当你向它的标签页粘贴时,它会得到剪贴板中的文本;在此之前,它什么也得不到。在 Share the clipboard(共享剪贴板)开启期间,在服务器上复制的文本会来到你的剪贴板。只有当你在电脑上为内置 RDP 客户端选择了文件夹或驱动器时,它才能得到文件。这些选择保存在你的设备上,从不同步,因此与你共享配置文件的人都无法开启它们。

支持哪些系统?

Windows 10 和 11、Apple Silicon 上的 macOS(M1 及更新机型)、Linux(.deb、.rpm、Arch、AppImage),以及 Android 7.0 或更高版本。

我能使用自己的同步服务器吗?

可以。在应用中打开 Cloud sync(云同步),更改同步服务器即可。我们服务器的代码没有公开,所以你自己的服务器需要提供相同的 API,这个 API 在应用的源代码中有说明。

如何删除我的账户?

在应用中(0.4 及以上版本):Cloud sync → Delete account…。你也可以在删除账户页面上操作。