LinuxSSHで公開鍵認証を有効化するのには、鍵ペアの生成や鍵の配送に手間がかかります。鍵を配送するのはちょっと面倒だし、初心者にとっては手順が複雑で分かりづらい点もあると思います。そこで、ファイル転送ソフトや鍵ペア生成機能がない環境で、なるべく手っ取り早く公開鍵認証を有効化する手順を紹介します。簡単さ最重視なので、セキュリティ上完璧な方法ではありません。(暗号化されているとはいえ、秘密鍵が通信路上を流れます)環境が整っている場合はもっと簡単な方法があります。)コマンド例はCentOSを想定しています。鍵ペアの生成(サーバ側で実行)これらのコマンドは、SSHでログインしたいサーバ上の、ログインしたいユーザーの権限で実行してください。<任意のコメント>#鍵ファイルの保存場所を指定する。(/home/username/.ssh/id_rsa):#秘密鍵にかけるパスフレーズを入力。鍵を区別できる適当なコメントを入力しておくと、あとで鍵がごっちゃになって区別がつかなくなるのを防止できます。続いて、公開鍵をSSHで接続したいサーバに登録します。この操作も、ログインしたいユーザーの権限で行ってください。続いて、秘密鍵をSSH接続する端末(クライアント)へコピーします。いう名前のファイルを作成し、秘密鍵ファイルの中身をコピペすれば、秘密鍵ファイルを転送しなくても同じ秘密鍵が用意できます。ペーストすればOKです。ここで表示された文字列が漏洩することは、秘密鍵ファイルが漏洩することと同じなので、扱いには十分注意してください。秘密鍵の配送が済んだら、サーバ側の秘密鍵は不要なので忘れずに削除してください。設定変更sshdの設定を変更して、公開鍵認証を有効化します。パスワード認証が有効になっているとせっかく公開鍵認証を有効化した意味が薄れるので無効化します。チャレンジレスポンス認証とは、単純なパスワード認証にリプレイ攻撃への耐性を追加した認証方式で、デフォルトでは有効化されていますが、これも無効化します。この操作はrootで行ってください。nosshdを再起動して設定を反映します。最後に、お使いのSSH接続クライアントの設定を変更して、先ほど作成した秘密鍵を使用して接続するようにしてください。Term)新しい接続から、各項目を設定してOKを押すと以下の画面が出る。ユーザー名にはログインするユーザー名を指定。パスフレーズには、鍵ペアの生成で指定した秘密鍵のパスフレーズを指定。秘密鍵をクリックして秘密鍵ファイルを指定。作成した鍵ペアを使って正常に接続できることを確認したら、公開鍵認証の有効化は完了です。コメントをキャンセル質問・感想などお気軽にどうぞ。*が付いている項目は入力必須です。メールアドレス以外の項目が公開されます。スパム防止のため、コメント反映まで少々時間がかかります。完全初心者がブログを1ヶ月、気楽に運営した結果リンクGitHubアカウントを開設しました!当ブログ内で取り上げたコードなどを上げています。