SSHで接続できないのは初心者が最もよくつまずくポイントです。慌てて再インストールせず、このチェックリストを外側から順に確認しましょう。ほとんどのケースは数分で解決します。

1. まず、どこで失敗しているかを見極める

  • Connection timed out(タイムアウト):そもそも到達できない → ネットワーク/ポート/ファイアウォールの問題。
  • Connection refused(拒否):マシンには届くがSSHが待ち受けていない → サービス停止かポート違い。
  • Permission denied(認証拒否):接続できたがログインに失敗 → パスワード/鍵/ユーザー名の問題。

2. ネットワークとポート(タイムアウトの場合)

  • IPにpingしてオンラインか確認(pingを遮断するデータセンターもあるので参考程度に)。
  • SSHポートを確認(デフォルト22、変更されている場合も):ssh -p ポート番号 user@IPで接続。
  • ローカル回線/ISPが22番を遮断していないか?別のネットワークを試すか、事業者に確認を。

3. ファイアウォール(いちばんの犯人)

  • クラウドファイアウォール:コンソールのセキュリティグループでSSHポートの開放を忘れるのが原因の第1位です。
  • システムファイアウォール:ufw / iptablesが22番をブロック。初心者はufwを有効化するとき全拒否にして22番の許可を忘れ、自分を締め出しがちです。

4. 認証(Permission deniedの場合)

  • ユーザー名は正しいか?root、それともubuntu / admin?クラウド事業者によりデフォルトが異なります。
  • 鍵認証:秘密鍵はchmod 600が必要で、対応する公開鍵がサーバーの~/.ssh/authorized_keysにあること。
  • サーバーがパスワードログインを無効化(PasswordAuthentication no)している場合、鍵でしか入れません。

5. 最終手段

  • クラウド事業者のWebコンソール / VNCで直接ログインし、SSHを迂回して設定修正やポート開放を行う。
  • 連続失敗でfail2banに一時的にBANされた?数分待つか別のIPで試す。
  • それでもだめならスナップショットのロールバックか初期化を(先にデータをバックアップ)。