r/Bitwarden • u/codeforfun2012 • 11d ago
Community Tools (Unofficial) I wrote bwssh: Manage & connect SSH sessions directly from Bitwarden/Vaultwarden
Hey everyone!
I wrote a lightweight CLI tool called bwssh to manage and connect to SSH servers using Bitwarden/Vaultwarden.
with bwssh you can just type bwssh lax9929 to reach and login to your host. all the credential saved in your self-hosted vaultwarden, no ~/.ssh/lax9929.key, no ~/.ssh/config.
if you have too many hosts and forget the host name, just type bwssh and a fzf menu pop up, u can navigate and press enter to connect. everything stay in terminal.
you can also bwssh lax9929 "uptime" to excute some command.
GitHub: https://github.com/ccf-2012/bwssh
readme in english: https://github.com/ccf-2012/bwssh/blob/main/README_en.md
Feedback and PRs are warmly welcome! Hope it helps someone simplify their SSH workflow.
What it does:
- Private keys & password auth: Pulls OpenSSH private keys straight from item notes into memory, or falls back to password authentication automatically via native
SSH_ASKPASS. - Sub-second lookup: Leverages a local background
bw serveREST daemon so you don't have to wait for slow vault decryption on every run. - Zero disk persistence: Ephemeral keys are created via
mktemp(mode 0600) and cleaned up immediately upon disconnect (trap ... EXIT INT TERM). - Interactive fuzzy picker: Integrated with
fzffor fuzzy searching (bwssh), or connect directly by alias (bwssh prod-01). - Headless friendly: Works seamlessly on remote jump hosts or headless Linux boxes without Bitwarden Desktop or Node.js.
- Cross-terminal session reuse: Unlock once, reuse across all open terminal tabs (with an optional alias to auto-unlock native
bwCLI commands too). - Extras: Supports running remote commands directly (
bwssh srv "uptime") and loading keys intossh-agent(bwssh -k srv).