ssh (4) keychain¶
keychainとは¶
SSH接続やsshfsマウントにおいて、何回もパスワードを入力するのを回避できる.
keychain は、ssh-agent のラッパーツールであり、鍵の永続登録と環境変数の復元が可能.
keychainのインストール¶
sudo apt install keychain
基本構成:.zshrcへの設定¶
設定は、シェルの初期化ファイル(~/.zshrc や ~/.bashrc)に記述.
シェル起動時に自動で ssh-agent を起動し,秘密鍵を読み込む.
eval $(keychain --quiet --agents ssh id_ed25519)
source ~/.keychain/$HOST-sh
--quiet:メッセージを非表示にする.
--agents ssh:ssh-agentのみを使用する(デフォルト).
id_ed25519:対象の鍵ファイル(拡張子なし).複数列挙可能.
鍵の登録と確認¶
鍵の登録¶
初回またはWSL再起動後に,鍵の入力が求められる.
登録済み鍵の確認:¶
ssh-add -l
起動後に SSH_AUTH_SOCK が正しく設定されていれば, ssh や sshfs による認証はパスフレーズなしで行われる.
注意事項¶
コマンド keychain はWSLのセッションが保持されている限り,有効な ssh-agent セッションを維持する.
WSLのシャットダウンやWindowsの再起動後は, 再度1回だけパスフレーズの入力が必要 である.
鍵ファイルのパーミッション( 600 )と .ssh ディレクトリのパーミッション( 700 )も適切に設定すること.