セットアップ
SSHで接続できなくなったとき、どこから調べるか
2026年8月20日

レン
昨日まで普通に入れてたのに、今日いきなりSSHで繋がらなくなった…!

プロクラ
落ち着いて。まず、どこで止まっているのかを切り分けよう。原因は大きく4段階のどこかにあって、上から順に確かめれば必ず見つかるよ。
パスワード認証と公開鍵認証の違い
パスワード認証
あなたパスワードを送る →サーバー
合っていれば誰でも入れる。総当たりで試され続ける
公開鍵認証
あなた
秘密鍵🔑鍵は送らない
署名だけを送る →サーバー
公開鍵
秘密鍵🔑鍵は送らない
署名だけを送る →サーバー
公開鍵
秘密鍵は手元から出ない。通信を覗かれても鍵そのものは盗まれない
1. サーバーが動いているか
切り分けは、必ず外側から順に確かめます。鍵の設定を疑う前に、そもそもサーバーが起動しているか、通信がそこまで届いているかを見てください。逆順で進めると、正常な設定を何度も見直すことになり、しかも触っているうちに本当に壊すことがあります。

プロクラ
いちばん手前を疑おう。サーバー自体が止まっていたら、何をしても繋がらない。管理画面で稼働状態を見て、必要なら再起動する。
- 管理画面でサーバーが起動しているか
- 事業者の障害情報が出ていないか
- 料金の未払いで停止されていないか(意外と多い)
2. そこまで通信が届いているか

プロクラ
次は経路。届いていないのか、届いたうえで断られているのかで、原因がまったく違う。
- 応答が返らず、しばらく待たされて失敗する → 届いていない。ファイアウォールで塞がれている可能性が高い
- すぐに拒否される → 届いてはいる。そのポートで受け付ける仕組みが動いていない
- 接続はできるが認証で失敗する → 経路は問題なし。3へ進む

プロクラ
「届いていない」場合、直前に自分でファイアウォールを触っていないか思い出して。事業者側のネットワーク設定と、サーバー内の設定の2か所があるので、両方を見る必要があるよ。
3. 鍵とユーザーが合っているか

プロクラ
認証まで進んでいるなら、原因はほぼこの中にある。エラーの文言もヒントになるよ。
- 秘密鍵ファイルの権限が緩い(本人以外も読める状態だとSSHが使用を拒否する)
- 接続先のユーザー名が違う(rootを禁止した後にrootで繋ごうとしている等)
- サーバー側の公開鍵ファイルを、権限や所有者ごと書き換えてしまった
- SSHのポート番号を変更したのに、変更前の番号で繋ごうとしている

プロクラ
詳しい経過を見たいときは、接続時に詳細表示の指定を付けると、どの鍵を試して、どこで断られたかが流れて出る。当てずっぽうで直すより、これを読んだほうが早いよ。
4. 自分が締め出されていないか

ウィルスン
…ログイン失敗を繰り返す相手を自動で遮断する仕組みを、キミ自身が入れたのだったな。それはワタシにも、キミにも等しく働くのだよ。

プロクラ
そう、自動遮断の設定に自分が引っかかることがある。何度も鍵を試したあとで急に無反応になったら、これを疑おう。
最後の入り口を覚えておく
SSHで入れなくなっても、多くの事業者は管理画面から直接操作できるコンソールを用意しています。これは通信の経路が塞がっていても使えるので、ファイアウォールの設定を間違えたときの最後の手段になります。困ってから探すと焦るので、平常時に場所を確認しておくのが賢明です。

プロクラ
多くの事業者が、管理画面からサーバーの画面へ直接つなぐ手段を用意している。ネットワークを経由しないので、SSHが塞がっていても入れる。ここから設定を戻せば復旧できるよ。
- この機能の場所と入り方を、困る前に一度試しておく
- 設定を変えるときは、今の接続を開いたまま別の窓で新しい設定を試す
- うまくいってから、元の接続を閉じる

レン
届いていないのか、断られているのか。まずそこを分けるんだね。
VPSの料金を比較する
あわせて読みたい
- セットアップroot宛のメールが溜まっている:中身の読み方と対処サーバーが自分自身へ送っている通知の読み方。溜まったまま誰も読まない状態が危険な理由と、必要な通知だけを手元へ届ける設定を解説します。
- セットアップポートが開いているかを確かめる方法外から繋がらないとき、どこで止まっているのかを段階的に確認します。待ち受けているか、サーバー内で通しているか、事業者側で通しているかを順に切り分けます。
- セットアップufwとfirewalld、どちらを使うべきかOSの系統によって既定の道具が違います。両方を有効にしてはいけない理由と、事業者側のフィルターとの役割分担、選ぶときの判断材料を解説します。
- セットアップサーバーで日本語が文字化けする:ロケールの設定ファイル名やコマンドの出力で日本語が崩れる原因を、サーバー側と接続側の両方から確認します。設定する場所と、あえて英語のままにする判断も解説します。
サーバーを触る前に押さえておきたいこと
姉妹サイトの、この記事と相性のいいページです。
- Linuxコマンド入門
ls / cd / grep などを疑似ターミナルで試しながら学べる — prodou.net
- シェルスクリプト入門
サーバー作業の自動化スクリプトを基礎から — prodou.net
- Password Generator
サーバー用に強いパスワードをその場で生成 — toolkitbox.net
- Cron Generator
定期実行のcron式を組み立てる — toolkitbox.net