Unix(CentOS)/Windowsサーバーにログインする場合、一般的に、パスワードを必要とします。
パスワードだらけの世の中、「簡単に」かつ「安全性を高く保って」、サーバーのログインをする。
それが、「公開鍵/秘密鍵」を用いたログイン。
2つの鍵を作成して、それが、合わないと「認証」されない(ログインできない)。
公開鍵は、サーバー側において、秘密鍵は、手元のPCにおいておく。
さくらインターネットでの公開鍵/秘密鍵ログイン
2020/04/02から、さくらのVPSにおいて、インストール時に、「公開鍵」を登録できるようになりました。
さくらのVPS コントロールパネルで「SSH公開鍵の登録」ができる機能を追加しました
公開鍵/秘密鍵の作成
どこで作成するか
さくらインターネット、さくらVPSでは、「作成」は、まだ、できません。
さくらクラウドでは、「作成」もできます。
最初の「作成」だけは、他のサーバーか、手元のwindows/mac上で作成をすることになります。
いずれ、鍵の作成ができるようになるでしょう。
公開鍵は、サーバー側に登録されます。
秘密鍵は、手元のPCに保存をしておきます。
秘密鍵の紛失には注意を!
「作成」もできるサーバでは、「秘密鍵」を「再ダウンロード」できる業者もあります。(お名前.comなど)
カゴヤ・ジャパンや、さくらクラウドのように「再ダウンロード」が、「できない」ところもあります。
「再ダウンロードができない」場合は、「秘密鍵」を紛失したら、ログインできなくなりますので、ご留意ください。
その場合、面倒ですが、救済方法があります。
イメージバックアップ(AWSでいうAMI)を作成して、再度、そのイメージバックアップから、「新しい鍵ペア」でサーバーを構築し直します。(カゴヤ・ジャパンでの救済方法)
Linux(CentOS)での鍵作成
稼働中の他のLinux (CentOS) での作成方法は・・・
$ ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/xxxx/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/xxxx/.ssh/id_rsa. Your public key has been saved in /home/xxxx/.ssh/id_rsa.pub.
↑「ssh-keygen」コマンドで、作成をします。
/home/xxxx/.ssh/id_rsa
↑に、秘密鍵
/home/xxxx/.ssh/id_rsa.pub
↑に、公開鍵が作成されます。
$ cat .ssh/id_rsa.pub ssh-rsa xxxxx(長い英数字)
↑「ssh-rsa」で始まる長い英数字が表示されます。
秘密鍵は、コピー&ペースト、もしくは、ダウンロードをして、手元のPCに保存をして、ログイン時に設定をします。
OSインストール時、公開鍵の登録
OSをインストールする場合、新規にサーバーを契約する場合、「公開鍵」を登録するか聞かれます。
↑「登録をする」を選び、したの「テキストエリア」に「ssh-rsa …」のところに、「ssh-rsa」で始まるテキストファイルを貼り付けます。
「グレーで「ssh-rsa …」とあるのは、「ssh-rsa」で始まるテキスト(文字列)を貼り付けてね。
という意味です。
↑貼り付けて登録をします。
複数台のマシンを管理していて、公開鍵を毎回貼り付けるのは、面倒という場合は、
↑「公開鍵」というメニュー」から、公開鍵の「鍵追加」を選びます。
↑適当に名前をつけて、「ssh-rsa」で始まるテキストファイルを貼り付けます。
↑サーバーの新規登録、もしくは、OSの再インストール時に、「一覧から選択」をして、さきほどつけた公開鍵の名前を選びます。
OS上での設定
# vi /etc/ssh/sshd_config PasswordAuthentication yes ↓ PasswordAuthentication no # systemctl restart sshd
↑シャドウパスワードでの認証を不可にする。
つまり、秘密鍵/公開鍵でのログインのみを許可にする。
これで、安全性がアップされます。