sshで鍵交換(キー交換)を行い、パスワードなしでLinuxサーバーにログインする方法

サーバー

sshでLinuxサーバーにログインする際に、パスワードなしでログインしたいことがあります。

今回、公開鍵を交換する方法でパスワードなしでログインする方法を調査しました。

スポンサーリンク
スポンサーリンク

公開鍵、秘密鍵の作成と事前設定

やりたいことはこんなことです。

WS000394

これを実現する方法を調べてみました。

まず、ログインする側のサーバーAで公開鍵と秘密鍵を作成します。

ユーザーXXXのホームディレクトリで以下のコマンドを実行します。

結果として、以下のように秘密鍵と公開鍵が作成されました。

秘密鍵 /home/xxx/.ssh/id_rsa

公開鍵 /home/xxx/.ssh/id_rsa.pub

次に、ログインされる側のサーバーBのユーザーYYYに、作成した公開鍵を登録します。

YYYのホームディレクトリにて、.sshというフォルダを作成し、.ssh/authorized_keysというファイルを作成します。

authorized_keysの中身は、

/home/xxx/.ssh/id_rsa.pub

をそのままコピペしておきます。

注意点として、.sshのディレクトリの権限を必ず

にしておく必要があります。

このように設定しておかないと、パスワードなしでログインすることが出来ません。

sshdの設定

次に、サーバーBでsshdの設定を行います。

rootユーザーで、/etc/ssh/sshd_configを開きます。

このようになっていた場合、コメントをはずしておきます。

以下のコマンドで、sshdを再起動します。

CentOS 6の場合

CentOS 7の場合

パスワードなしでLinuxサーバーにsshログインできるか試してみる

サーバーAのユーザーXXXにて以下のコマンドを実行してみます。

これで無事にノンパスワードでsshログイン出来ることが確認できました。

さくらのVPSサーバー

↓月額685円からの低価格&高パフォーマンスのVPS、さくらのVPSはコチラ

SSDプランが月々685円から使える!さくらのVPS