Ubuntuでufw設定後にSSH接続できなくなった時の対処法
- 作成日 2026.06.05
- 更新日 2026.06.09
- ubuntu
UbuntuでUFW(Uncomplicated Firewall)を有効化した後、SSH接続ができなくなるトラブルは非常によく発生します。多くの場合はSSHポートの許可設定漏れが原因です。本記事では、SSH接続できなくなった場合の確認方法と復旧手順を詳しく解説します。
なぜSSH接続できなくなるのか
UFWを有効化すると、許可ルールに一致しない通信は拒否されます。
例えば以下のように設定した場合です。
sudo ufw enableSSHの許可設定がない状態で有効化すると、22番ポートへの接続も遮断されます。
その結果、サーバーへSSH接続できなくなります。
まずはコンソールアクセスを確保する
SSH接続できない場合は、サーバー管理画面からコンソールへ接続します。
代表例
・VPS管理画面のWebコンソール
・クラウドサーバーのシリアルコンソール
・物理サーバーの直接ログイン
SSHで接続できない状態では、まずサーバーへ直接アクセスできる手段を利用します。
UFWの状態を確認する
ログイン後に現在の設定を確認します。
sudo ufw status numbered表示例
Status: active
To Action From
-- ------ ----
80/tcp ALLOW Anywhere
443/tcp ALLOW AnywhereSSHの許可ルールが存在しない場合は接続できません。
SSHポートを許可する
標準SSHポートの場合
sudo ufw allow 22/tcpまたは
sudo ufw allow ssh確認
sudo ufw status表示例
22/tcp ALLOW Anywhereルール追加後に再度SSH接続を試します。
SSHポートを変更している場合
sshd_configでポート変更している場合は、そのポートを許可する必要があります。
設定確認
grep ^Port /etc/ssh/sshd_config例
Port 2222許可設定
sudo ufw allow 2222/tcp許可後に接続を確認します。
一時的にUFWを無効化する
緊急時はUFWを停止して接続を復旧できます。
sudo ufw disable確認
sudo ufw status表示例
Status: inactiveSSH接続できるようになったら設定を見直します。
現在のSSH待受ポートを確認する
SSHサービスが正常に動作しているか確認します。
sudo ss -tlnp | grep sshまたは
sudo ss -tlnp | grep ssh表示例
LISTEN 0 128 0.0.0.0:22待受ポートとUFWルールが一致しているか確認します。
SSHサービスの状態を確認する
UFW以外の原因も考えられます。
確認
systemctl status ssh正常な例
Active: active (running)停止している場合
sudo systemctl restart sshサービスが起動していることを確認します。
UFWログを確認する
ファイアウォールでブロックされているか確認します。
sudo grep UFW /var/log/syslogリアルタイム確認
sudo tail -f /var/log/syslogブロックログ例
[UFW BLOCK] IN=eth0 OUT=
SRC=xxx.xxx.xxx.xxx
DST=xxx.xxx.xxx.xxx
PROTO=TCP SPT=xxxxx DPT=22DPT=22が表示される場合はSSH通信が遮断されています。
安全なUFW設定手順
SSH切断を防ぐためには、必ずSSH許可後にUFWを有効化します。
正しい手順
sudo ufw allow ssh
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable設定確認
sudo ufw statusSSH許可を確認してからログアウトすることが重要です。
リモートサーバーでの注意点
VPSやクラウド環境では以下の順序を推奨します。
- SSHポートを許可
- UFW設定を確認
- 別ターミナルで新規SSH接続テスト
- 問題なければ既存セッションを終了
この方法なら接続不能になるリスクを最小限にできます。
まとめ
UbuntuでUFW設定後にSSH接続できなくなった場合は、まずコンソールからログインし、「sudo ufw status numbered」で設定内容を確認します。
多くの場合はSSHポートの許可漏れが原因であり、「sudo ufw allow ssh」または使用中のポート番号を許可することで解決できます。緊急時は「sudo ufw disable」で一時的にファイアウォールを停止し、設定を見直してから再度有効化すると安全です。
今後同様のトラブルを防ぐためにも、UFWを有効化する前にSSH許可ルールを設定し、別セッションで接続確認を行う運用をおすすめします。
-
前の記事
UbuntuでIPアドレスを確認する方法 2026.06.05
-
次の記事
Ubuntuでswapメモリを追加する方法 2026.06.06
コメントを書く