SSH 鍵:作成と追加
鍵ペアの生成方法、サーバーのコントロールパネルでの公開鍵の追加、保存するとサーバーが再起動する理由、Windows Server で鍵が機能しない理由について説明します。
更新日 2026年8月23日
SSH キーは 2 つのファイルのペアです。秘密鍵は手元に置き、公開鍵はマシン上に配置します。パスワードと違い、総当たり攻撃を受けることはありません。
キーペアを作成する
コマンドは Windows Terminal、PowerShell、macOS、Linux のいずれでも同じです。
ssh-keygen -t ed25519 -C "artem@laptop"
ファイルについて尋ねられたら Enter を押します(既定は ~/.ssh/id_ed25519)。キーにはパスフレーズを設定してください。ノートパソコンが盗まれた場合、パスフレーズのないキーはマシンへの即時アクセスを許してしまいます。
2 つのファイルが作成されます。
| ファイル | 内容 |
|---|---|
id_ed25519 | 秘密鍵。絶対に共有せず、どこにもアップロードしないでください |
id_ed25519.pub | 公開鍵。これをコントロールパネルに貼り付けます |
公開鍵を表示するには次のコマンドを実行します。
cat ~/.ssh/id_ed25519.pub
表示される行はこのようになります。ssh-ed25519 AAAAC3Nza... artem@laptop
コントロールパネルでキーを追加する
/hosting/vds/m/<id> でマシンのコントロールパネルを開き、「アクセス」タブの「SSH キー」サブセクションでキーをフィールドに貼り付け、「キーを保存」をクリックします。
キーを保存すると、稼働中のマシンが再起動します。 キーは起動時の初期セットアップで適用されるため、再起動なしでは反映されません。再起動に耐えられないものはすべて切断されます。開いている接続、保存されていないデータ、自動起動のないサービスなどです。本番マシンではタイミングを選び、キーを 1 つずつではなくリストをまとめて編集してください。
キーリストは完全に置き換えられます。すべてのキーを送信してください。仕事用のパソコンのキーがすでにあった状態で新しいキーだけを保存すると、古いキーは機能しなくなります。フィールドを空にするとすべてのキーが削除されます。
形式は 1 行につき 1 つのキーです。
ssh-ed25519 AAAAC3Nza... artem@laptop
ssh-ed25519 AAAAC3Nza... artem@work
行全体を、先頭の種類と末尾のコメントも含めて、改行を入れずに貼り付けてください。
/hosting/vds/new で注文する際にキーを指定することもできます。その場合、マシンのプロビジョニング時にキーが追加されるため、余分な再起動は発生しません。
Windows Server には SSH キーがありません
キーのフィールドは Linux マシンに適用されます。Windows Server 2022 と 2025 は SSH サーバーなしでプロビジョニングされます。ログインは RDP 経由で、コントロールパネルに表示されるパスワードを使って Administrator として行います。そのようなマシンに保存されたキーは何も解除しません。そのため注文ウィザードにはそのフィールドが表示されません。
接続方法と最初の数分間で行うことは、記事Windows Server への RDP による初回ログインで、アクセスの保護は記事RDP のセキュリティ: ポート、パスワード、制限で解説しています。
ログインをテストする
現在のセッションを閉じずに、新しいターミナルウィンドウから次のコマンドを実行します。
ssh root@203.0.113.10
パスワードを求められなければ、キーは機能しています。求められた場合は、以下のエラー表を参照してください。
毎回アドレスを入力するのを避けるには、~/.ssh/config ファイルを設定してください。
パスワードログインを無効にする
テストが成功した後にのみ実行してください。
nano /etc/ssh/sshd_config
PasswordAuthentication no
PermitRootLogin prohibit-password
systemctl restart ssh
問題が発生しても、コントロールパネルのテキストコンソールからマシンにアクセスできます。これは SSH とは独立して動作します。
よくあるエラー
| 症状 | 原因 |
|---|---|
| 依然としてパスワードを求められる | .pub ではなく秘密鍵をコントロールパネルに貼り付けたか、キーの名前が正しくなくクライアントが読み込んでいない |
UNPROTECTED PRIVATE KEY FILE | パーミッションが広すぎます。chmod 600 ~/.ssh/id_ed25519 を実行してください |
| キーが機能していたのに機能しなくなった | コントロールパネルのリストがこのキーを含めずに上書きされた |
| 再インストール後にキーが機能しなくなった | マシンが再構築され、キーが反映されませんでした。「SSH キー」を開いてリストを再度保存してください |
パスワードを無効にした後に Permission denied (publickey) | キーがマシンに届いていません。パネルのコンソールからログインし、/root/.ssh/authorized_keys を確認してください |
詳細出力による診断は次のコマンドで行います。
ssh -v root@203.0.113.10
出力には、クライアントが提示したキーとサーバーが返した応答が表示されます。
PuTTY ユーザーは専用形式のキーが必要です。PuTTY からの接続を参照してください。