ssh公開鍵認証設定

どこでも腐るほど解説はされてると思うし、VALUE SERVERで特別なこともないとは思いますが、念の為記事にしておきました。

対称鍵の作成

VALUE SERVERではなく今ログインしている端末(Linuxを想定)で、公開鍵認証で使用する公開鍵とその対象鍵である秘密鍵を同時に作成します。

$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/ユーザー名/.ssh/id_rsa): 

作成した鍵を格納するファイルパスを聞かれるのでそのままEnterを押しておきます。

Enter passphrase (empty for no passphrase):

次にパスフレーズを聞かれます。これは秘密鍵に掛けるパスワードのようなものです。秘密鍵を単独で盗まれてもそこに鍵がまだかかっているような形になります。セキュリティ的にはあるべきですが、理由があればなくても構いません。

Enter same passphrase again:

再度聞かれるので、同じものを入力します。すると、最終的に

  • $HOME/.ssh/id_rsaに秘密鍵
  • $HOME/.ssh/id_rsa.pubに公開鍵

が作られます。

VALUE SERVERに公開鍵を設置

ssh-copy-idというコマンドを使うのが簡単です。下で、xxxxxxxx@xxx.valueserver.jpは、VALUE SERVERのユーザ名とホスト名を@で繋いだ文字列です。

$ ssh-copy-id xxxxxxxx@xxx.valueserver.jp
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/home/ユーザー名/.ssh/id_rsa.pub"
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
xxxxxxxx@xxx.valueserver.jp's password: 

VALUE-SERVERのパスワードを聞かれるので、従来どおりに入れてください。正しいパスワードで認証されれば、公開鍵をVALUE SERVERに設置してくれます。

VALUE SERVERに公開鍵認証でログイン

いつもどおりログインするだけです。パスワードの代わりにパスフレーズを使うだけ。パスフレーズを設定していなければ、何も聞かれずにログインできます。

user@user-pc:~$ ssh xxxxxxxx@xxx.valueserver.jp
Last login: Wed Jan 22 00:00:00 2020 from somedomain.net

xxxxxxxx@xxx:~$

参考までに公開鍵は、VALUE SERVERの、$HOME/.ssh/authorized_keys に保存されています。

参考

How to Use SSH Public Key Authentication – ServerPilot