パスワード管理アプリといえば1Passwordが有名ですが、同じような機能があって無料で使えるBitwardenも便利です。
BitwardenでもSSHエージェントが使えるので、SSHエージェントを使ってサーバーのログインを捗らせましょう!
BitwardenでSSHキーを作成
BitwardenサイドバーのSSHキーを押して、+ボタンを押すとSSHキーを作成してくれます。
すでにSSHキーがある場合はインポートすることも可能ですので、いずれかの方法でキーをBitwardenに入れてください。
BitwardenのSSHエージェントを有効にする
公式サイトにもある通り、AppStoreでBitwardenをインストールした場合とDMGファイルで直接インストールした場合で若干変わります。
ターミナルで↓のコマンドを入力します。
・AppStoreの場合(は自分のユーザー名に変更する)
export SSH_AUTH_SOCK=/Users/<user>/Library/Containers/com.bitwarden.desktop/Data/.bitwarden-ssh-agent.sock
・DMGの場合(<userは自分のユーザー名に変更する)
export SSH_AUTH_SOCK=/Users/<user>/.bitwarden-ssh-agent.sock
Bitwardenのアプリ内の設定からSSHエージェントを有効にします
参考 : https://bitwarden.com/help/ssh-agent/#tab-macos-6VN1DmoAVFvm7ZWD95curS
ssh-add -Lで動作確認
ssh-add -L
を実行して、Bitwardenに登録したSSHキーの公開鍵が表示されていればOKです。
もし、The agent has no identities.
と出る場合は、BitwardenのSSHエージェントが設定されていないため、BitwardenのSSHエージェントを有効にするの手順をもう一度行ってください。
実際にSSHログインしてみる(ハマった)
ssh root@123.456.789
でログインすると、Bitwardenのダイアログが出てきて認可すればSSHログインができます。
しかし、私の場合だと何度やってもPermission denied (publickey).
のエラーで弾かれてしまいました。
sudo ssh root@123.456.789
でやってみたところ無事にログインできたので、もしログインに苦戦している場合はsudoつけて実行してみてください。
(ちゃんと権限も600にしているはずなんですが原因は不明です...)
ターミナルの設定ファイルにSSHエージェントのコマンドを追加する
ターミナルを開くたびに毎回BitwardenのSSHエージェントを有効にするの手順を行うのも面倒なので、ターミナルの設定ファイルに追加してしまいましょう。
-
zshの場合
vim ~/.zshrc
で設定ファイルを開く -
bashの場合
vim ~/.bashrc
で設定ファイルを開く
その後、BitwardenのSSHエージェントを有効にする で実行したコマンドを追加
以上で完了です。