パスワードログインは真新しいサーバーの最も弱い部分です。ボットはインターネットをスキャンし、四六時中ポート 22 を推測で叩きます。パスワードを SSH 鍵ペア に置き換えれば、その攻撃面は完全に消え、あらゆる新規 VPS で最初にやる価値のあることです。ここに全工程を数コマンドで。
SSH 鍵の仕組み
ペア を生成します:自分のコンピュータに残る秘密鍵と、サーバーに置く公開鍵。サーバーは接続してくる相手に問いかけ、対応する秘密鍵の持ち主だけが答えられます。公開鍵は自由に配れます — 守るのは秘密鍵です。
1. 鍵ペアを生成(自分のコンピュータで)
ssh-keygen -t ed25519 -C "you@example.com"
# デフォルトパスを受け入れるには Enter (~/.ssh/id_ed25519)
# 追加の安全のため passphrase を設定、または空のまま
これで 2 つのファイルが作られます:~/.ssh/id_ed25519(秘密 — 決して共有しない)と ~/.ssh/id_ed25519.pub(公開)。
2. 公開鍵をサーバーにコピー
まだパスワードでログインできるなら、簡単な方法:
ssh-copy-id root@YOUR.SERVER.IP
ssh-copy-id がない?手動で:
cat ~/.ssh/id_ed25519.pub | ssh root@YOUR.SERVER.IP \
"mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"
3. 何かを変える前に鍵をテスト
新しい ターミナルを開いてログイン — サーバーのパスワードは聞かれないはずです:
ssh root@YOUR.SERVER.IP
うまくいったら、次の手順の間このセッションを開いたままにし、ミスでロックアウトされないように。
4. パスワードログインをオフに
サーバーで /etc/ssh/sshd_config を編集:
sudo sed -i 's/^#\?PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config
sudo systemctl restart ssh # 一部のディストリではサービス名は sshd
これ以降は鍵だけが入り、ポート 22 の絶え間ない総当たりのノイズは単に跳ね返ります。
正直な注意
- 鍵が動く前に決してパスワードを無効化しない。 まず 2 つ目のターミナルで鍵ログインを確認 — これがロックアウトを防ぐ唯一のルールです。
- 秘密鍵をバックアップし、1 台の紛失がロックアウトにならないよう 2 つ目の鍵(ノート PC と予備)も検討を。
- それでもロックアウトされたら、プロバイダーのコンソールが戻してくれます — EQVPS はまさにこのために各 VPS にブラウザコンソールを付けています。
次のステップ
SSH 鍵は堅牢なサーバーの第一歩。ファイアウォールと組み合わせましょう — UFW ファイアウォールの設定方法とfail2ban の設定方法を参照 — そして何かを公開する前に新規 VPS のセキュリティチェックリストを通してください。KYC なし・暗号資産払いの VPSでは、鍵はアクセスを本当に自分のものに保つ手段でもあります。
コメント
まだコメントはありません。最初になりましょう。