投稿日:2025/11/30最終更新日:2026/3/22
WindowsのsshconfigにUnix形式のパスを書きたくなかったのです
Windowsって本当にクソOSですよね。\って何なんでしょうか。
真に批判されるべきメガテックはGoogleでもAppleでもMetaでもなく、Microsoftだと思います。
異端思想はさておき、WindowsのVSCodeからLinuxにSSHして作業はしたいです笑
ですが、sshconfigにUnix形式のパスを書きたくないし、ましてや\形式のパスなんてもっと書きたくないです。
そんな中、BitwardenがSSH-Agent機能を持っていることを知ったため、利用してみることにしました。
テキスト形式で秘密鍵を保存する必要がなくなり、鍵がプロセス間で渡されることもないため、セキュリティも向上します。
私は課金してBitwarden Premiumを利用していますが、SSH-Agent機能は無料プランでも利用可能です。
知らない方のために解説しておくと、Bitwardenはオープンソースのパスワードマネージャーです。
個数無制限、クロスプラットフォーム(TorBrowser含め)対応、オープンソースという、非常に優れたパスワードマネージャーです。
課金すればTOTPもクラウド同期でき、ブラウザ拡張から入力可能です。独自のAuthenticatorアプリがあり、そこからクラウドのパスワードプロファイルにTOTPを追加可能で神です。
サーバーのセルフホストも可能です。
EUの規制に準拠したエンドポイントと切り替えも可能です。
Bitwardenアプリから追加します。

「アイテムの追加 > SSHキー」から追加すると、自動で鍵が生成されるので保存します。

アプリ内の鍵の詳細画面から、公開鍵をコピー可能です。
それを~/.ssh/authorized_keysに追記するのみでOKです。
echo "公開鍵" >> ~/.ssh/authorized_keysBitwarden CLIから直接公開鍵を取得したかったのですが、まだ対応していないようです。
公式手順はこちらです。
まず、BitwardenアプリでSSH-Agentを有効化します。

自分の場合、特別な設定無しで動作しました。
本来は、サービスから、OpenSSH Authentication Agentのスタートアップ起動を無効化する必要があるようです。
確認したところ、自分は最初から無効化されていました。

Macの場合、SSH-AgentとしてBitwardenを利用する設定を行う必要があります。
echo "export SSH_AUTH_SOCK=/Users/username/.bitwarden-ssh-agent.sock" >> ~/.zshrc自分の場合、Hostとして登録していたのでsshconfigに秘密鍵へのパスが書いてありました。それを削除します。
未登録の場合はこのステップは不要です。
VSCodeからSSHしようとすると、初回はBitwardenがポップアップして鍵の利用確認が出ます。


承認すると、SSH接続が成功します。 次回からは、Bitwardenのロック(Bitwardenアプリでのログイン)を解除するだけで接続可能です。
BitwardenをSSH-Agentとして利用することで、秘密鍵の保管・sshconfigに変なパスの記述もなしにSSH接続が可能になりました🎉