Submarine
0.4Remote desktops with a shared clipboard and speed choices

All your servers in one encrypted app

Submarine is an SSH, SFTP, RDP, VNC and Telnet client for Windows, macOS, Linux and Android. Your servers, passwords and keys are encrypted on your device, and they sync between your devices only if you want them to.

  • No ads
  • No tracking
  • No paid plan
  • No account needed
WindowsmacOSLinuxAndroid
Submarine on a computer: an SSH terminal on the left and the two-pane file browser on the right
Encrypted on your device SSH · SFTP · RDP · VNC · Telnet Sync only if you want it

One app instead of

a terminalan SFTP clienta tunnel manageran RDP appa VNC viewera Telnet clientSubmarine
Features

Everything for your servers, in one window

Connect, transfer, forward, watch and share, on every computer you use and on your phone.

Terminal

Tabs, split view, true colour, 10,000 lines of scrollback, colour schemes and Nerd Fonts. Search what it shows with Ctrl+Shift+F, and the commands you typed with Ctrl+Shift+R.

The Wall

Many servers side by side, and typing into all of them at once.

Two-pane SFTP

Drag and drop, compare folders, edit remote files, archives, sudo, and servers without SFTP.

RDP and VNCNew in 0.4

Remote desktops in a tab, with a shared clipboard, speed and quality choices, and a mark that shows how the link is doing.

TelnetNew in 0.4

For old switches and routers, clearly marked as not encrypted.

Tunnels

Local, remote and SOCKS forwarding, with a live log of every connection.

Keys and agentsNew in 0.4

Your ~/.ssh/config, SSH agents, hardware keys, OpenSSH certificates, jump hosts and proxies.

Encrypted profile

AES-256-GCM with an Argon2id key. Unlock it with Windows Hello or your fingerprint, if you like.

Sync, if you want it

Between your devices, each item encrypted on the device before it is sent.

Shared profiles

Share servers with your team. Each member gets the profile's key sealed to them.

Monitoring

CPU, memory, disk and network, an alert when a server goes down, services and Docker.

Commands and notes

Keep the commands you run often and paste or run them in a terminal.

Android

The same profile on your phone, with a key bar for the terminal.

Imports

Bring your servers over from PuTTY, MobaXterm and OpenSSH.

A closer look

Made for the work you do every day

A terminal that keeps up

Tabs, split view and the Wall, which shows many servers side by side and can type into all of them at once.

  • Search what the terminal shows with Ctrl+Shift+F, and the commands you typed with Ctrl+Shift+R (Cmd+Shift on a Mac). Plain Ctrl+F and Ctrl+R stay with the shell.
  • Right-click the + button for a terminal with its own login, on a connection of its own: once, or always for that server.
  • True colour, 10,000 lines of scrollback, colour schemes and Nerd Fonts.
The Wall: three servers side by side in one window

Files, side by side

Two-pane SFTP with drag and drop between your computer and the server.

  • Compare two folders: files that differ, are newer or exist on one side only are marked.
  • Edit remote files live, and pack and unpack archives on the server.
  • Work as root through sudo, even on servers without SFTP.
  • Mirror a local folder to a server as you change it (on a computer).
Comparing a local folder with a remote one: files that differ are marked

Tunnels without the command line

Local, remote and SOCKS forwarding with names, started together with the app if you like.

  • A live log of every connection that goes through a tunnel.
  • Through jump hosts and proxies, like any other connection.
The port forwarding panel with three tunnels and their status

Works with what you already have

Reads your ~/.ssh/config and imports from PuTTY, MobaXterm and OpenSSH.

  • Uses your SSH agent: Pageant, the Windows OpenSSH agent, 1Password, hardware keys.
  • OpenSSH certificates, jump hosts, and HTTP and SOCKS proxies.
  • When a saved password is wrong, or none is saved, the password prompt offers Save password. It is kept once the login works.
The form for a new server, with import from ~/.ssh/config

Know when something breaks

Watches CPU, memory, disk and network over SSH and tells you when a server goes down.

  • Nothing to install on the server.
  • Server info, services and Docker containers in one place.
Monitoring: three servers with live charts

Your logins, locked

Passwords and keys live in an encrypted profile that only your password opens.

  • AES-256-GCM, with a key made from your password by Argon2id. The password is never stored.
  • Unlock with Windows Hello, or with your fingerprint on Android. Off until you turn it on.
  • Locking the profile closes every connection, even one that is still logging in.
Saved logins and SSH keys in the encrypted profile

On your phone as well

The same profile on Android, with the same encryption.

  • A terminal with a key bar for Ctrl, Alt, Esc, Tab and the arrows.
  • File transfer and tunnels.
  • Remote desktops with touch, zoom, the shared clipboard, the connection mark and the speed choices. A phone shares no files with an RDP server.
Submarine on an Android phone: an SSH terminal with a key bar
New in 0.4

Remote desktops, right next to your terminals

VNC and the built-in RDP client open in a tab, directly or through one of your SSH servers. RDP can also open in your computer's own RDP app.

A remote desktop over RDP in a Submarine tab, with Paste, the connection mark (Good, 6 ms), Files and Settings in its bar
A VNC desktop in a Submarine tab, marked as not encrypted
The Speed and quality panel of a remote desktop tab

See how the link is doing

A mark in the tab says Good, Fair, Weak or Not answering, with the delay. Its panel shows how much data goes each way, and on a weak link it offers to use less data.

A sharp picture, or less data

Choose the colours, the resolution and, for VNC, how often the picture is updated, or pick a quick choice such as Less data. A hidden tab pauses its picture, so nothing is sent while nobody is looking.

A shared clipboard

Text you copy on the remote desktop comes to your clipboard, and yours goes there only when you paste. VNC carries plain text only.

Shared files over RDP

The built-in RDP client can share a folder or a whole drive, read only if you like. On a computer, not on a phone. The choice stays on this device and is never synced.

Your RDP app, without typing the password

Through an SSH server, your RDP app connects to the same local address every time, so what it remembers (a trusted certificate, a saved login) is found again. On Windows, Remote Desktop Connection also gets the saved password, encrypted, in a file that is deleted once it is read.

Through your SSH servers

RDP, VNC and Telnet can all go through one of your SSH servers. Connections that are not encrypted are clearly marked.

The built-in RDP client is experimental, and off until you choose it for a server (Open in: Submarine's tab). Until then, RDP opens in your computer's RDP app. On Android, the built-in client is the one used.

Private by design

Your data is yours. We can't read it.

Your data is encrypted before it is saved, and before it leaves your device. We publish exactly what our server can and cannot see.

Encrypted on your device

Profiles are encrypted with AES-256-GCM. The key is made from your password with Argon2id. The password itself is never stored or sent.

Sync is optional

If you turn it on, every item is encrypted on your device first. The server keeps only the encrypted version. It does see some details around it, such as your email address and when you sync, and we list them all.

No tracking

No ads, no analytics, no crash reports. The app talks only to your servers, to the sync server if you sign in, and to GitHub to check for a new version.

How it works, and how to check it yourself

Free

Free. Really.

No paid plan, no trial, no ads, and no account needed.

  • Submarine is free and open source under the MIT license.
  • You don't need an account. An account is only for the optional sync between your devices.
  • The sync service is free as well, within fair limits: 5 MB of encrypted data, 20,000 items and 100 profiles per account.
  • The source code is public. You can read it, build the app yourself, or use a sync server of your own.
Download

Get Submarine

All downloads come from the project's releases on GitHub.

Windows

Windows 10 and 11 · installer (.exe or .msi)

Download

macOS

Apple Silicon (M1 and later) · .dmg

Download

Linux

.deb, .rpm, Arch package and AppImage

Download

Android

Android 7.0 and later · .apk

Download

This page describes version 0.4, which is in its last tests and not released yet. Until it is, the Download buttons give version 0.3.8. Version 0.3.8 has the terminal, file transfer, tunnels, monitoring and sync, but not the remote desktops, Telnet, Windows Hello and fingerprint unlock, SSH agents, folder compare and the rest of what 0.4 adds. From 0.4, Windows also gets a portable .zip.

Check your download

  • From version 0.4, every release has a SHA256SUMS file with the checksum of each download.
  • From version 0.4, the Android app is signed with the author's key. Its certificate's SHA-256 fingerprint is e9e350dc9f8628bee461be3424c0c2b2180f00685cc380de80c86808ae669f1c.
  • The Windows and macOS builds are not code-signed yet, so your system may warn you the first time you open them.
Help

Questions and answers

Is Submarine really free?

Yes. The app is free and open source under the MIT license, with no paid plan and no ads. The sync service is free too, within the limits above.

Do I need an account?

No. Everything works without one. You only need an account if you want to sync profiles between your devices.

Can the sync server read my passwords?

No. Every item is encrypted on your device before it is uploaded, and the server never gets the key. It does see some details around your data, such as your email address, when you sync, and how many items you have. The security page lists all of them.

What if I forget my profile password?

Then nobody can open that profile, not even us. There is no recovery, because the password is never stored anywhere. Keep it somewhere safe.

Can I use RDP, VNC and Telnet?

Yes, from version 0.4. VNC shows the screen in a tab and shares the clipboard (plain text). RDP opens in your computer's RDP app, or in a tab with the experimental built-in client, which shares the clipboard and, on a computer, a folder or a drive. In a Submarine tab, both show how the connection is doing and let you trade picture quality for less data. Telnet opens in a terminal tab. All three can go through an SSH server, and Telnet and plain VNC are marked as not encrypted.

What does a remote desktop get from my computer?

Clipboard text when you paste into its tab, and nothing before that. Text copied on the server comes to your clipboard while Share the clipboard is on. Files only if you choose a folder or a drive for the built-in RDP client, on a computer. These choices are kept on your device and never synced, so nobody you share a profile with can turn them on.

Which systems does it run on?

Windows 10 and 11, macOS on Apple Silicon (M1 and later), Linux (.deb, .rpm, Arch, AppImage) and Android 7.0 or later.

Can I use my own sync server?

Yes. In the app, open Cloud sync and change the sync server. Our server's code is not published, so a server of your own has to offer the same API, which is described in the app's source code.

How do I delete my account?

In the app (version 0.4 and later), use Delete account… in Cloud sync. You can also do it on the delete account page.