コンテンツにスキップ

WSL から 1Password を使って SSH 接続する方法

1Password は SSH 鍵の管理ができます。ここでは WSL (Windows Subsystem for Linux) 環境から、1Password に保存した SSH 鍵を使ってリモートサーバーに接続するポイントについて記述します。

設定手順とポイント

1Password の WSL 連携の公式ドキュメントに従い、1Password に SSH 鍵を保存して、Windows 側で 1Password の SSH エージェントを設定します。SSH 鍵の管理だけが目的なら 1Password CLI は不要で、1Password アプリケーションだけで完結します。ポイントとなる点は次のとおりです。

  • SSH 関連の設定は Windows 側の%USERPROFILE%/.ssh/configを編集する点に注意。
  • WSL からの全ての SSH リクエストを 1Password で扱うには、ssh.exeの利用と 1Password エージェントの稼働が必須。

公式ドキュメントにも記載がありますが、WSL から 1Password の SSH 鍵を利用するには、SSH クライアントとして Windows 側のssh.exeを使う必要があります。

エイリアスの設定

毎回ssh.exeと書かずに済むよう、~/.bashrcや~/.bash_aliasesにエイリアスを設定する方法も、任意の設定として公式ドキュメントに載っています。

alias ssh='ssh.exe'
alias ssh-add='ssh-add.exe'

rsync など他コマンドでの利用

rsync のように SSH を内部で使うコマンドでも、同様に Windows 側のバイナリを使う必要があります。例えば rsync の場合は、-eオプションでssh.exeを次のように指定します。

rsync -e ssh.exe source/ user@remote:/destination/

まとめ

WSL 環境から 1Password に保存した SSH 鍵を利用するには、Windows 側のssh.exeを使うことがポイントです。ssh.exeを使えば、WSL 環境でも 1Password の SSH エージェントを使って SSH 認証できます。