VPSにSSH公開鍵をアップロードして安全にアクセスする方法

SSHキーを使用することで、VPSへの接続が安全でパスワード不要になり、管理が簡素化されると同時にセキュリティが強化されます。このガイドでは、VPSにSSH公開鍵をアップロードする手順を、実用的な例とヒントを交えて簡単に説明します。

はじめに

SSHキーを用いた認証は、パスワードログインをプライベート/パブリックキーのペアに置き換え、ブルートフォース攻撃のリスクを減少させます。このプロセスは、VPS専用サーバーを安全かつ効率的に管理するのに最適です。

前提条件

始める前に、以下を確認してください:

  • あなたはすでにユーザー名とパスワードでVPSにアクセスできる状態です。

  • あなたのローカルマシンにSSHキーのペアが生成されています。

  • sshがあなたのローカルマシンにインストールされています(Linux、macOS、またはWSLまたはPuTTY/Pageantを使用したWindows)。

ステップ1: 既存のSSHキーを確認する

ローカルマシンで次のコマンドを実行します:

ls ~/.ssh

id_rsa.pubまたはid_ed25519.pubというファイルがあるか確認してください。ない場合は、新しいキーのペアを生成します:

ssh-keygen -t ed25519 -C "your_email@example.com"

プロンプトに従い、Enterを押してデフォルトのファイル位置を受け入れます。

ステップ2: 公開鍵をVPSにアップロードする

次のコマンドを使用して、簡単にキーをアップロードできます:

ssh-copy-id

userをあなたのVPSのユーザー名(例:rootまたはubuntu)に、your_vps_ipを実際のVPSのIPアドレスに置き換えます。VPSのパスワードを最後にもう一度入力するよう求められます。ssh-copy-idがない場合は、手動で鍵をアップロードできます:

cat ~/.ssh/id_ed25519.pub | ssh user@your_vps_ip "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"

ステップ3: 接続をテストする

鍵がアップロードされたら、ログインを試みます:

ssh user@your_vps_ip

パスワードを入力せずに接続できるはずです

オプション: パスワード認証を無効にする

セキュリティを高めるために、パスワードログインを完全に無効にすることができます(キーによるアクセスが機能していることを確認した後に):

  1. VPSに接続します。

  2. SSH設定ファイルを編集します:

sudo nano /etc/ssh/sshd_config
  1. 次を見つけて変更または追加します:

PasswordAuthentication no
  1. SSHサービスを再起動します:

sudo systemctl restart ssh

注意してください — 鍵が正しく機能していない場合、アクセスできなくなる可能性があります。

結論

VPSにSSH公開鍵をアップロードすることで、安全でパスワード不要のアクセスが可能になり、管理が簡素化され、セキュリティが向上します。AvaHostの信頼性の高いVPSホスティングを利用すれば、上記の手順と例—ssh-copy-idまたは手動アップロードを使用して—設定が簡単になります。プライベートキーを安全に保管し、十分にテストし、最大の保護のためにパスワード認証を無効にすることを検討してください。