sshs3

Terminal, files, buckets and pods in one window.

sshs3 runs your own OpenSSH, so ~/.ssh/config, agents and hardware keys work as they do in a shell. Beside it: a dual-pane SFTP and S3 file manager, Kubernetes exec and debugging, and profiles your team shares without a vendor cloud.

$sudo dnf copr enable alun-hub/sshs3 && sudo dnf install sshs3
Free and open source, MIT Linux and Windows
sshs3 with a remote SSH session on the left and two local panes on the right showing a live benchmark
  • Your OpenSSH, not ourssshs3 starts the ssh on your machine, so existing config and agents just work.
  • No sshs3 cloudSync and Team Vault use your own S3 bucket or SFTP server. There are no accounts.
  • Keys stay on the cardFIDO2 keys and smartcards sign on the device. Private keys are never loaded into the app.
  • MIT licensedSource and releases are on GitHub, for Linux and Windows.

Try it in two minutes.

Nothing to migrate. sshs3 uses the ssh you already have.

  1. InstallPick your OS below. There is no account and no sign-up.
  2. Import your hostsIn the Connection Manager choose Import Hosts from ~/.ssh/config. Hosts, ports, users, IdentityFile and ProxyJump arrive in folders.
  3. ConnectOpen a terminal or the file manager on any host. Your agent, jump hosts and security key work as before.

One window for everything you touch on a server.

Built for sysadmins, SREs and developers who move between many hosts and clusters, hop through bastions, and sign in with hardware keys.

Split panes that remember where you were.

Konsole-style recursive splits, each pane with its own connection and isolated session.

  • Local shells next to SSH. On Windows that includes PowerShell, cmd and WSL.
  • Sessions come back. Tabs, layouts and working directories are restored after a restart.
  • Unlocked keys work in local shells. A managed ssh-agent is wired in, so git and ssh use the card you already unlocked.
  • Paths in the output are live. Hover one to peek at the first lines, see an image thumbnail, edit the file, reveal it in the file manager, or drag it to your desktop. On Linux and macOS it reuses the open connection, so a hardware key is touched once and not again for every hover.
Terminal guide
A file listing in the terminal with a path card open for kubernetes.md: preview of the first lines, line count and size, and Edit, Reveal and Copy Path buttons
The tab bar and a three-pane split view: a remote SSH session beside two local shells

Share server profiles with your team. No shared password, no server of ours.

Team Vault keeps your team's SSH and S3 profiles in a bucket you own. Each member opens it with their own YubiKey.

  • Your bucket, your keys. Profiles are encrypted with age before they leave your machine. The storage provider only ever sees ciphertext.
  • Offboarding is one click. Removing a member rotates the vault key and cuts off their access to future updates.
  • Onboarding without secrets in chat. Admins send an encrypted invite. Nobody pastes S3 credentials.
  • No lock-out surprises. sshs3 warns when a vault has only one admin, and a printable recovery key covers a lost token.
  • Organized like a team works. Several vaults at once, with nested folders and search.

There is no sshs3 account system or cloud service in this chain. If sshs3 disappeared tomorrow, your vault would still be in your bucket.

Team Vault guide
Connection Manager with Personal, Prod - Team and Infra tabs, and the Infra team folders Cluster A, Cluster B and K8s
Team Vault settings for the Infra vault: unlocked status, a warning that it has fewer than two admins, and a member list with Demote, Copy invite, Promote and remove buttons

Keys stay on your hardware. Sync stays in your storage.

Nothing here depends on a server we run.

Smartcards and security keys

Sign in with SITHS, Net iD, OpenSC, YubiKey PIV or resident ed25519-sk keys. sshs3 asks for the PIN and shows when the key wants a touch.

  • Choose how long a PIN is remembered: never, per terminal connection, or for the app session.
  • Passwords and keys are stored in the OS keyring (libsecret or DPAPI). Host keys get an explicit trust dialog.
Security guide

Profile and dotfile sync

Back up profiles, dotfile pools and settings to your own S3 bucket or SFTP server, encrypted on your machine with AES-256-GCM before upload.

  • Unlock with a master password or a smartcard. Two machines edited separately merge per record.
  • Keep .bashrc and friends the same on every server you log in to.
Sync guide
The smartcard PIN dialog, the FIDO2 PIN dialog, and the banner that says Touch your security key to continue

These are the real prompts. One unlocked card works for ssh, SFTP, sync and Team Vault.

Smaller things you will notice.

  • Keyboard firstMove between panes, tabs and dialogs with Ctrl+Shift+arrows. Enter opens, Esc backs out.
  • Snippets and clipboard historySaved commands, and an encrypted history of what you copied, scoped globally or per host.
  • Your ~/.ssh/config, kept in stepsshs3 maintains one marked block there, so plain ssh <profile> works from any terminal.
  • Git signing without GPGRegister keys on GitHub or GitLab and turn on SSH commit signing. Git guide
  • Windows ships completeThe installer bundles an X server for forwarded GUI apps, and local tabs can run PowerShell, cmd or WSL.
  • Several windowsDrag a tab to another monitor. The session keeps running while it moves.
  • Re-run with sudoWhen a command fails with a permission error, press Enter to run it again with sudo.

Install sshs3.

Free for Linux and Windows.Latest release on GitHub

The COPR repository follows every release, so dnf upgrade keeps you current.

$sudo dnf copr enable alun-hub/sshs3 && sudo dnf install sshs3

COPR currently provides Fedora 44 on x86_64. On other releases use the RPM. If you install from COPR, turn off the in-app update check.

Every release has checksums and a build attestation you can verify. How to verify a download. sshs3 is under active development, so expect rough edges and tell us when you find one.

Questions

Can I transfer files directly between SSH / SFTP and S3?
Yes. Open an SSH/SFTP connection in one pane and an S3 bucket (or MinIO, Ceph, Cloudflare R2) in the other. Drag and drop, queue transfers, or synchronize folders between your servers and object storage without intermediary local downloads. See the file manager guide and the S3 guide.
Which S3 object storage providers are supported?
Any S3-compatible API: Amazon S3 (with AWS SSO device-flow login for short-lived credentials), MinIO, Ceph, Cloudflare R2, Wasabi, Backblaze B2 and NetApp StorageGRID. You can edit bucket policies and manage CORS, tags and object versioning in the UI.
How does sshs3 handle OpenSSH configuration and security?
sshs3 runs your system's native OpenSSH client instead of a reimplementation, so your ~/.ssh/config aliases, ProxyJump bastions and ssh-agent just work. It also supports FIDO2 / YubiKey and PKCS#11 smartcards with in-app PIN entry. See the security guide.
How does Team Vault work, and is there an sshs3 cloud backend?
There is no sshs3 cloud backend and no user account database. Team Vault stores encrypted profile data in an S3 bucket you own. Each member unlocks it with their own YubiKey via age-plugin-yubikey. When an admin removes a member, the vault key is rotated and re-encrypted for the remaining members. Read the Team Vault guide.
Is sshs3 free and open source?
Yes. sshs3 is released under the MIT license. The source and builds are on GitHub, with packages for Linux (AppImage, .deb, .rpm) and Windows (installer and portable).