2008.03.05
パスワードなしSSH接続
SSHを利用する場合通常パスワードを用いて認証を行いますが
公開鍵を使ってホストの証明を行い
この鍵を事前に承認しておいて、鍵が一致すればパスワードの入力をせずに接続することができます。
今回サーバ再構築のときに方法をまた調べたのでついでにメモメモ。
公開鍵暗号方式には一般的に使われるものとして
RSAとDSAがありますが、個人的趣味ではRSAのほうが好きです。
ということでRSAを使った認証方法を記載します。
なにはともあれキーを生成。
リモートに接続するユーザで作成してください。
$ ssh-keygen
キーの保存場所とファイル名を聞かれますが変えたかったら変えてください。
ここでは「id-rsa」というファイルが作成されたと仮定します。
パスフレーズについては入力せずにそのまま[Enter]を。
どうにかして公開キー(上記コマンドで生成された鍵ファイルのid-rsa.pubと名前がついた方)を
リモートホストにコピーします。これは好きな方法で勝手にどうぞ。
続いてリモートホストにログインし、そのキーに対する接続の許可を設定します。
接続を許可するユーザでログインしてください。
$ cd .ssh/ $ touch authorized_keys $ chmod 600 authorized_keys $ cat ~/id-rsa.pub >> authorized_keys $ rm ~/id-rsa.pub
これでキーを作成したホストから
リモートホストの許可したユーザへSSH接続する場合にパスワードが不要になります。
この「authorized_keys」という設定ファイルに書かれているキーと一致すれば
接続を許可してくれるみたいです。
他のホストからに対しても同様の形で追加していけば大丈夫です。
あとauthorized_keysはアクセス許可が600じゃないとうまくいかないようなので注意です。
Trackback URL
Comment & Trackback
Comment feed
Comment