IntelliJのSSH接続が5分で切れる原因と解決方法(keep-aliveで解決)

2026年4月14日

背景

IntelliJでリモートサーバーに接続して作業していると、何もしていない状態で約5分後にSSH接続が切れる問題が発生しました。

  • ファイル編集中は問題なし
  • 放置すると突然切断
  • 再接続は可能

最初は「サーバー側の設定が原因では?」と疑いました。

環境

  • OS:Windows(PowerShell)
  • クライアント:IntelliJ IDEA
  • 接続方法:SSH(Deployment / SFTP)
  • サーバー:さくらVPS系

原因

原因は、IntelliJ側のSSH接続でkeep-aliveが未設定だったことでした。

  • 通信が発生しない(アイドル状態)
  • 約5分後にネットワーク機器(NAT / ファイアウォール)が接続を切断

試したこと(時系列)

① ~/.ssh/config を確認

cat ~/.ssh/config

対象接続は .ssh/config を使っていないことが判明 → ここを変更しても効果なし

② keep-alive設定を追加(無効)

ServerAliveInterval 60 ServerAliveCountMax 10

→ IntelliJの接続には反映されず

③ サーバー設定を確認

sudo sshd -T | grep clientalive

結果:

clientaliveinterval 3600 clientalivecountmax 3

サーバーは最大1時間以上切断しない設定 → 5分切断と一致しない

④ IntelliJ側の設定を確認

以下の設定にkeep-alive項目を発見:

  • Settings
  • Tools
  • SSH Configurations
  • または
  • Build, Execution, Deployment → Deployment → Connection

解決手順

① keep-aliveを設定

Send keep-alive messages every = 10秒

② 動作確認

  • 何も操作せず10分以上放置
  • 接続が切れないことを確認

なぜそうなるか

SSH接続が切れる原因は「サーバー」だけではありません。

  • IntelliJ:keep-alive未設定
  • → 完全なアイドル状態
  • → ネットワーク機器が「未使用」と判断
  • → 約5分で切断

一方でサーバーは3600秒以上維持する設定 → 切っているのはサーバーではない

まとめ

  • 原因:IntelliJのkeep-alive未設定
  • 切断元:ネットワーク機器(NAT / FW)
  • 対策:keep-alive設定

補足(実運用)

  • 10秒でも解決するが過剰
  • 30秒〜60秒がバランス良い

より詳しい判断軸や、他パターンとの違いについてはnoteでまとめています。

  • なぜ5分でネットワークを疑うのか
  • サーバー起因との見分け方
  • 切り分けの優先順位

↓ 同じミスした人向けにまとめました。

この記事はこんな人向け IntelliJでSSH接続がすぐ切れて困っている サーバー設定を疑っているが原因が分からない 「数分放置すると切れる」現象に悩んでいる…
note.com