SSH Keyについて

SSH接続には、「パスワード認証」と「鍵認証」の2つの認証方式があります。
このうち鍵認証とは、「公開鍵」と「秘密鍵」という2つの鍵を用いて認証を行う方法であり、第三者による不正なSSH接続を防ぎ、セキュリティを向上させることができます。

公開鍵 サーバー側に登録しておく鍵
秘密鍵 サーバーに接続するユーザーが、自分のPCなどで安全に管理する鍵

「SSH Key」機能では、これらの鍵を自動生成するほか、ローカルPCなどで作成した公開鍵のアップロードも可能です。
登録した公開鍵は、サーバーへ設定することで、そのサーバーへのログイン方法を鍵認証のみに制限することができます。

※秘密鍵を紛失すると、対象のサーバーにログインできなくなります。秘密鍵の管理には十分ご注意ください。

新規申込みやOS再インストール時に、サーバーへ鍵認証を設定する手順です。
この手順で登録する鍵は、rootユーザー用のものです。

1.サーバー申込み画面またはOS再インストール画面を開く

XServerアカウントへログインし、サーバー申込み画面を開く、 または、対象サーバーのVPSパネルへログインし、OS再インストール画面を開いてください。

2.SSH Keyの登録

SSH Keyの項目で「キーを作成する」を選択し、以下の情報を入力してください。

登録方法 「自動生成」と「インポート」のいずれかを選択してください。
  • 自動生成:公開鍵と秘密鍵のペアを自動生成します。秘密鍵は1度だけダウンロードが可能です。
  • インポート:ローカルPCなどで作成した公開鍵を登録できます。
名前 「SSH Key」に登録する公開鍵の名前です。
任意の名前を入力してください。
公開鍵 登録方法で「インポート」を選択した場合に入力が必要です。
登録する公開鍵を入力してください。

SSH Keyの登録画面

※SSH Keyに登録済みの公開鍵を利用したい場合は、「登録済みのキーを選択する」を選択し、対象の鍵の名前を指定してください。

SSH Keyの登録画面

3.設定完了

新規VPS作成またはOS再インストール完了後、 設定した公開鍵のペアとなる秘密鍵を使用して、「SSH接続」を行ってください。

「キーを作成する」を選択した場合

手順2で「キーを作成する」を選択した場合、作成された公開鍵は「SSH Key」メニューから確認できます。

ご利用中のサーバーのログイン方法を「鍵認証」に変更する手順です。

「SSH Key」メニューより、公開鍵と秘密鍵のペアを自動生成、または、既存の公開鍵を登録します。

1.「SSH Key」をクリック

XServerアカウントへログインし、「SSH Key」メニューをクリックしてください。

「SSH Keyメニュー」をクリックするスクリーンショット

2.「SSH Keyの登録」をクリック

「SSH Keyの登録」をクリックしてください。

「SSH Keyの登録」をクリックするスクリーンショット

3.登録内容の入力
名前 「SSH Key」に登録する公開鍵の名前です。
任意の名前を入力してください。
登録方法 「自動生成」と「インポート」のいずれかを選択してください。
  • 自動生成:公開鍵と秘密鍵のペアを自動生成します。秘密鍵は1度だけダウンロードが可能です。
  • インポート:ローカルPCなどで作成した公開鍵を登録できます。
公開鍵 登録方法で「インポート」を選択した場合に入力が必要です。
登録する公開鍵を入力してください。

登録内容を入力しているスクリーンショット

上記入力後、「確認画面へ進む」ボタンをクリックしてください。

4.「登録する」ボタンをクリック

作成内容に誤りがなければ「登録する」ボタンをクリックしてください。

「登録する」ボタンをクリックするスクリーンショット

5.秘密鍵のダウンロード

手順3で「自動生成」を選択した場合、秘密鍵が登録されます。
「ダウンロードする」ボタンをクリックしてください。

「ダウンロードする」ボタンをクリックするスクリーンショット

秘密鍵は1度しかダウンロードできません

秘密鍵は登録時にのみダウンロードできます。
必ずダウンロードして保管してください。

手順3で「インポート」を選択した場合は秘密鍵は生成されませんので、「OK」ボタンをクリックして完了してください。

6.登録完了

SSH Keyの一覧ページで登録したSSH Keyの公開鍵を確認することができます。

SSH Keyの一覧ページのスクリーンショット

登録した公開鍵を、ご利用中のサーバーに設定する手順です。

1.「SSH Key」をクリック

XServerアカウントへログインし、「SSH Key」メニューをクリックしてください。

「SSH Keyメニュー」をクリックするスクリーンショット

2.対象の公開鍵をコピー

SSH Key一覧から使用したい公開鍵を参照し、「表示する」をクリックして内容を表示します。
表示された公開鍵をコピーしてください。(手順4で使用します)

公開鍵の参照画面

3.サーバーへSSH接続

既存の認証方法を使い、rootユーザーとしてSSH接続します。

※コピー&ペーストができるSSHクライアントソフトの使用を推奨します。

4.公開鍵の登録

サーバーのSSH公開鍵管理ファイルに、コピーした公開鍵を登録します。
以下のコマンドを実行して、ファイルを編集してください。

rootユーザー用の公開鍵を登録する場合

nano /root/.ssh/authorized_keys

一般ユーザー用の公開鍵を登録する場合

nano /home/<ユーザー名>/.ssh/authorized_keys

ファイルを開いたら、手順2でコピーした公開鍵を1行に1鍵の形式で書き込みます。

公開鍵の登録

編集が完了したら、以下の手順でファイルを保存してください。

  • 1.「Ctrl」+「x」キーを押す
  • 2.「変更されたバッファを保存しますか?」と表示されたら「y」を押す
  • 3.「書き込むファイル名」に問題がなければ「Enter」キーを押して保存完了
5.パスワード認証の無効化(任意)

SSH接続のログイン方法を鍵認証のみに制限したい場合は、パスワード認証を無効化します。
以下のコマンドで設定ファイルを編集します。

nano /etc/ssh/sshd_config

以下のように内容を編集してください。

1.パスワード認証を無効にする

「PasswordAuthentication」を「no」に設定します。
行の先頭に「#」がある場合は「#」を削除してください。

PasswordAuthentication no
2.rootユーザーのパスワード認証を無効にする

「PermitRootLogin」を「prohibit-password」に設定します。
行の先頭に「#」がある場合は「#」を削除してください。

PermitRootLogin prohibit-password

パスワード認証の無効化

編集が完了したら、以下の手順でファイルを保存してください。

  • 1.「Ctrl」+「x」キーを押す
  • 2.「変更されたバッファを保存しますか?」と表示されたら「y」を押す
  • 3.「書き込むファイル名」に問題がなければ「Enter」キーを押して保存完了

最後に下記コマンドを実行して、パスワード認証無効化の変更をサーバーへ反映させます。

AlmaLinux、Arch Linux、CentOS、Fedora、openSUSE Leap、Oracle Linux、Rocky Linux のOSイメージ または WordPress(KUSANAGI)、Valkey のアプリイメージをご利用の場合

systemctl restart sshd

上記以外のOSイメージ・アプリイメージをご利用の場合

systemctl restart ssh
6.設定完了

設定した公開鍵のペアとなる秘密鍵を使用して、「SSH接続」でログインします。