ssh接続でpassphraseを毎回入力するのは嫌だ
WindowsのCygwin環境からsshコマンドを叩いたときの話。
前書き
SSHサーバをこしらえて、セキュリティの観点から認証方法を公開鍵認証(RSA)にしたのだけど、SSHサーバに接続する都度『id_rsaのpassphraseを入力してね』と聞かれて面倒くさい。
Macなら一度passphraseを入力してしまえば、基本的に聞かれることはないのにどうしたものかと調べてみたら、Cygwinでも使える便利なものがありました。
便利ツール
その名も「keychain」というツール。(Macのそれとは違うみたい)
これはLinux/Gentooディストリビューションの親戚Funtooのプロジェクトで開発されているツールのようでCygwinにも入れることができました。keychainを使うことでターミナルがpassphraseの情報を記憶してくれるようになるっぽいです。
導入方法
- gitにkeychainのソースがあるのでgit cloneするかzipをダウンロードする
- 展開した(Makefileがある)ディレクトリに移動してmakeする
$ cd keychain
$ make - 「keychain」という実行可能形式のファイルができるので、/usr/binにコピーする
$ cp keychain /usr/bin/
- Cygwin起動時に自動実行するように ~/.bashrc に以下を追記する
if [ -e /usr/bin/keychain ]; then eval `/usr/bin/keychain --eval --agents ssh id_rsa` fi
- 端末を開き直すか、source ~/.bashrc で起動スクリプトを読み込む