- 追加された行はこのように表示されます。
- 削除された行は
このように表示されます。
!!!技術的雑談-PuTTY-keygenでパスワード無しログイン
!!環境
*クライアント:WindowsXPsp2 + PuTTY0.53(日本語パッチ版)
*サーバ:とりあえずRedHat Linux Enterprise Edition(多分OpenSSH2が動いているサーバなら何でもいい)
!!やりたいこと
PuTTYでいつもサーバにログインしているが、ユーザ名・パスワードを打ち込むのがめんどくさい。
ついでに、ショルダークラックされたらイヤ。
!!対処
SSH公開鍵認証使いましょう。
PuTTY付属(?)のputtygen.exeでSSHの公開鍵を作れます。
大体puttygen.exeでGoogleさんに聞けばやり方は書いてあると思いますが、陥りやすい罠をさらしておきます。
!公開鍵の置き方
puttygen.exeで鍵ペアを作ると、非標準な形式でキーファイルが作られます。
~/.ssh/authorized_keysに書き込む公開鍵の形式は1行ですが、puttygen.exeの公開鍵は複数行に改行されています。
書き込む際は'''行の先頭に「ssh-ras」と半角スペースを1つあけて、'''puttygen.exeで作った公開鍵ファイルの内容を1行にまとめて書き込みます。
つまり
---- BEGIN SSH2 PUBLIC KEY ----
Comment: "hogehoge"
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
qqqqqq==
---- END SSH2 PUBLIC KEY ----
と、なっているファイルを、
ssh-rsa xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzqqqqqq== hogehoge
と、変換して書き込めばOK。
ちなみに、~/.sshのパーミッションは'''700'''にしておかないとsshdに無視されます。
!PuTTY側の設定
New Sessionのダイアログの設定で、
*Connection→Dataの「Auto-Login username」にUNIXユーザ名を入力
*Connection→SSHのプロトコルを「2 Only」にしておく(少なくともSSH2が選ばれるように)
*Connection→SSH→Authの「private key file for authentication」の欄にputtygen.exeで作った'''秘密鍵'''ファイルを設定。
これをやらないと自動ログインにならない。
特にユーザ名の設定を忘れると数時間頭をひねることになる。
!pagent.exe
これもPuTTY付属。
秘密鍵を食わせておくと、勝手にPuTTY上の認証をしてくれる。
タスクトレイに常駐します。
秘密鍵(.ppk)のダブルクリックでも起動します。
!!履歴
2005/10/18 -- 初版
[[技術的雑談]]へ戻る
!!突っ込み
{{comment}}
[[技術的雑談]]へ戻る
{{trackback}}
[[技術的雑談]]へ戻る