TeraTermのセッションが勝手に切れる原因と対策|タイムアウトを防ぐ設定ガイド

TeraTermのセッションが勝手に切れる原因と対策|タイムアウトを防ぐ設定ガイド

Amazonのアソシエイトとして、ITナレッジライフは適格販売により収入を得ています。

記事の文字数:5,937 / 総アクセス数:487 views

TeraTermのセッションが勝手に切れる原因と対策を徹底解説。キープアライブ設定で放置切れを即解消し、サーバー側SSH設定やPCの省電力対策で接続安定性を向上させます。不意の切断に悩まされない、ストレスフリーなリモート操作環境を構築するための設定ガイドです。

TeraTermで作業中、急にセッションが切れて困った経験はありませんか?「TeraTerm セッション 切れる」原因の多くは、アプリやサーバー側のタイムアウト設定にあります。本記事では、接続を維持するためのキープアライブ設定やサーバー側の調整方法を初心者にも分かりやすく解説します。この記事を読めば、不意の切断に悩まされることなく、ストレスのない安定したリモート操作環境を構築できます。

記事のポイント

  • TeraTermの「ハートビート(keep-alive)」機能を有効に設定するだけで、放置によるセッション切れを多くの場合で解消できます(SSH接続の場合は[設定]>[SSH]メニューから設定)。
  • クライアント側だけでなくサーバー側のSSH設定(sshd_config)を調整することで、接続の安定性が格段に向上します。
  • PCの省電力モードやファイアウォールの遮断といった、ネットワーク経路上の盲点となる原因と対策がわかります。
  • 記事内のチェックリストを活用すれば、環境によってはセッション切断の頻度を大きく減らし、より安定したリモート作業環境を整えやすくなります。

TeraTermのセッションが頻繁に切れる原因と具体的な解決策

TeraTermを利用してリモートサーバーに接続している際、しばらく操作をしないだけで接続が切断されてしまうことがあります。これは主に、通信がない状態が続くことでタイムアウトと判断され、クライアント、サーバー、あるいは通信経路上のネットワーク機器によってセッションが破棄されることが原因と考えられます。

以下に、接続を維持するための具体的な解決策を解説します。

TeraTermの「設定」からキープアライブ(生存確認)を有効にする

TeraTerm側で最も手軽にできる対策がキープアライブ(Keep-alive) 機能の活用です。これは、一定時間ごとに「まだ接続中である」ことを確認する SSHレベルの生存確認メッセージ(keep-aliveメッセージ) を送信することで、セッションがアイドル状態と判定されるのを防ぐ仕組みです。

送信間隔(秒)の適切な設定値と手順

キープアライブの設定は、接続プロトコルによって設定場所が異なります。

SSH接続の場合(推奨):

  1. TeraTermのメニューから [設定][SSH] を選択します。

alt text

  1. [ハートビート(keep-alive)] の項目に数値を入力します。

alt text

Telnet接続の場合:

  1. TeraTermのメニューから [設定][TCP/IP] を選択します。

alt text

  1. [Keep alive on Telnet] の項目に数値を入力します。

alt text

設定項目推奨値概要
送信間隔(秒)30 ~ 60無通信状態がこの時間を超えると信号を送信します。
SSH のハートビートは 60 秒程度がデフォルトになっているバージョンが多く、
環境に応じて 30~60 秒に調整するのが無難です。
Telnet の Keep alive(TCP/IP メニュー)は別途 300 秒が初期値になっている場合があります。

注意: ほとんどの場合、SSH接続を使用しているため、[設定] > [SSH] から設定してください。TCP/IPメニューのKeep aliveはTelnet専用です。

設定後は、 [設定][設定の保存] をクリックします。通常は保存時のファイル名を 「TERATERM.INI」 としておくのが安全です。TeraTermは起動時にこのファイルを標準の設定ファイルとして読み込むため、多くの環境では TERATERM.INI に保存しておくことで、次回起動時にも設定が反映されます。別名で保存する場合は、起動オプションや設定フォルダの変更など、明示的にそのINIを使う設定が必要になることがあります。

保存場所としては、次のような運用が一般的です。

  • ユーザーのドキュメントフォルダ(例:C:\Users\ユーザー名\Documents など)に TERATERM.INI を保存すると、そのユーザーのデフォルト設定として読み込まれる環境が多いです。
  • TeraTerm のインストールフォルダに TERATERM.INI を置いておく方法もありますが、管理者権限が必要な場合があります。 どこに置くかは運用ポリシー次第ですが、「どのサーバー/どのユーザー用の設定か」が分かるように整理しておくと管理しやすくなります。

サーバー側のSSH設定(sshd_config)によるタイムアウトを調整する

TeraTerm側の設定で改善しない場合、接続先のLinuxサーバー側の設定(SSHデーモン)が影響している可能性があります。

ClientAliveInterval、ClientAliveCountMax、TCPKeepAliveの役割

サーバー側の /etc/ssh/sshd_config ファイルにある以下のパラメータを調整することで、サーバーからクライアントへの生存確認を制御できます。

  • ClientAliveInterval:生存確認を送る間隔(秒)。0を指定すると機能が無効になります。
  • ClientAliveCountMax:応答がない場合に切断するまでの試行回数。
  • TCPKeepAlive:TCP層のSO_KEEPALIVE機能を使用するかどうか(yes/no)。

推奨設定例:

Terminal window
# SSH層でのキープアライブ設定
ClientAliveInterval 60
ClientAliveCountMax 3
# TCP層でのキープアライブ設定
TCPKeepAlive yes

タイムアウト計算: 実際にセッションが切断されるまでの時間は、以下の計算式で求められます。

タイムアウト時間 = ClientAliveInterval × ClientAliveCountMax
例: 60秒 × 3回 = 180秒(3分)

この設定では、60秒ごとに生存確認を送信し、3回連続で応答がない場合(合計180秒後)に接続が切断されます。

設定変更後は、SSHデーモンを再起動して設定を反映させる必要があります。

再起動コマンド(Linuxディストリビューションによって異なります):

Terminal window
# RHEL系(CentOS / Rocky / AlmaLinux など)
sudo systemctl restart sshd
# Debian / Ubuntu 系
sudo systemctl restart ssh
# 古いシステム(SysVinit使用)
sudo service sshd restart

Windows OSやネットワーク機器の省電力・タイムアウト設定を確認する

PC自体のネットワークアダプターの省電力設定が原因で、通信が途切れるケースも散見されます。デバイスマネージャーからネットワークカードのプロパティを開き、「電力の管理」タブで「電力の節約のために、コンピューターでこのデバイスの電源をオフにできるようにする」のチェックを外すことで改善する場合があります。

また、社内LANやVPNを利用している場合、ルーターやファイアウォールに設定されたアイドルタイムアウト時間が短い可能性も考慮すべきでしょう。

ネットワーク経路上のファイアウォールによるセッション遮断を防ぐ

ネットワーク経路上にあるファイアウォールやロードバランサーは、メモリリソースを節約するために、一定時間通信がないTCPセッションを強制的に破棄することがあります。これを防ぐには、前述したキープアライブを短めの間隔(例えば30秒など)に設定し、常に微弱な通信が発生している状態を維持することが有効な対策となります。

よくある設定ミスと対処法

TeraTermのキープアライブ設定でよくある間違いをまとめました。

ミスの内容問題正しい対処法
TCP/IPメニューで設定してしまうSSH接続なのにTelnet用の設定をしているため効果がないSSH接続の場合は[設定]>[SSH]から設定する
設定保存をしていない設定が一時的で、再起動すると元に戻る[設定]>[設定の保存]で必ずTERATERM.INIに保存
別のファイル名で保存次回起動時に設定が読み込まれない通常は「TERATERM.INI」で保存するのが確実。
別名で使いたい場合は、起動オプションや設定フォルダの変更などで、
そのINIを明示的に指定する必要がある。
サーバー側を設定していないクライアント側だけでは片側通行で効果が限定的sshd_configも合わせて調整する
sshdを再起動していないサーバー側の設定変更が反映されていないsystemctl restart sshd(または ssh)を実行

TeraTermのセッション切断に関するよくある質問(FAQ)

TeraTermを利用している中で、設定を見直してもセッションが切れてしまう、あるいは特定の条件下で通信が不安定になるといった疑問を持つ方は少なくありません。ここでは、エンジニアの現場でよく遭遇するトラブルとその解決のヒントをFAQ形式でまとめました。

Q. 何も操作せず放置しているとすぐに切れるのはなぜですか?

A. 主な原因は、通信経路上の機器やサーバーによる「アイドルタイムアウト」です。

SSH接続において、一定時間データのやり取りがない状態を「アイドル状態」と呼びます。この状態が続くと、リソースを確保するために以下のいずれかがセッションを強制終了させることがあります。

  • ファイアウォールやルーター: 通信がないコネクションを「不要なもの」と判断して破棄します。
  • SSHサーバー(sshd): 設定ファイル(sshd_config)で定義された時間を経過すると接続を閉じます。

これを防ぐには、前述のキープアライブ(生存確認) 設定が最も効果的です。数分おきに SSHの生存確認メッセージ(keep-alive) を送信することで、ネットワーク機器に「この通信はまだ継続中である」と認識させることが可能になります。

Q. 接続が切れた後に自動で再接続(リストア)する方法はありますか?

A. TeraTerm標準機能では「自動再接続」は限定的ですが、マクロやサーバー側のツールで補完できます。

TeraTerm自体には、切断を検知して即座に元の画面を復元する強力な自動再接続機能は備わっていません。しかし、以下の方法で作業効率を下げずに対応できる可能性があります。

  1. TeraTermマクロ(.ttl)の活用: ログイン処理を自動化するマクロを作成しておけば、切断後もアイコンをダブルクリックするだけで即座に再ログインが完了します。
  2. サーバー側で「tmux」や「screen」を使用する: これらは仮想端末を管理するツールです。万が一TeraTermのセッションが切れても、サーバー側でプロセスは維持されるため、再ログイン後に tmux attach などのコマンドを打つだけで作業途中の状態から再開できます。
  3. Duplicate Session(セッションの複製): 既存の接続が生きているうちに、別のウィンドウを立ち上げておくことで、リスクを分散させる運用も一般的です。

Q. キープアライブを設定してもセッションが切れる場合の対処法は?

A. ネットワークの物理的な不安定さや、OSの省電力機能が影響している可能性があります。

設定に不備がないのに切れる場合は、以下のチェックリストを確認してみてください。

確認項目対策案
Wi-Fiの瞬断有線LANへの切り替え、または電波強度の確認。
VPNの仕様VPNクライアント自体に設定されたタイムアウト時間の確認。
PCのスリープ設定Windowsがスリープに入るとネットワークも切断されるため、設定を変更。
サーバーのTCPKeepAliveサーバー側の /etc/ssh/sshd_config にある TCPKeepAliveyes に設定。

特に、ノートPCをドッキングステーション経由で接続している場合、ネットワークアダプターの省電力設定が悪影響を及ぼすケースが多いため、デバイスマネージャーの設定を見直すことが推奨されます。

まとめ:TeraTermのセッション維持を確実にするためのポイント

今回のまとめ:振り返りチェックリスト

  • TeraTermの「ハートビート(keep-alive)」を有効化する: 無操作状態でもSSHの生存確認メッセージを定期送信することで、ネットワーク経路上のタイムアウトを防ぐのが第一歩です。
  • サーバー側の「sshd_config」を見直す: クライアント側の設定だけで解決しない場合は、サーバー側の生存確認設定(ClientAliveInterval等)を適切に調整しましょう。
  • アプリ外の要因(OS・ネットワーク)も疑う: Windowsの省電力設定やファイアウォールのセッション維持制限など、環境全体を俯瞰して原因を切り分けることが大切です。
  • アドバイス: まずはTeraTermの設定から「[設定] > [SSH] > ハートビート(keep-alive)」を開き、「送信間隔を60秒」に設定してください。その後、必ず「[設定] > [設定の保存]」で TERATERM.INI という名前で保存しましょう。ファイル名が異なると設定が反映されないので注意が必要です。まずはこの設定を行うだけでも、環境によっては日々のセッション切断が大きく減り、作業ストレスがかなり軽くなることが期待できます。

TeraTerm(テラターム)を利用中に、作業の手を止めた隙に接続が切れてしまう現象は、エンジニアにとって大きなストレスとなります。本記事で解説してきた通り、セッションが切断される原因はクライアント(TeraTerm)サーバー(SSH設定)ネットワーク経路(ファイアウォールやVPN、ルーターなど) のいずれか、あるいはその組み合わせであることが多いです。

セッション切断を防ぐための最終チェックリスト

これまでの対策を振り返り、設定漏れがないか確認してみてください。

カテゴリ対策内容期待できる効果
TeraTerm設定(SSH)「設定」→「SSH」→「ハートビート(keep-alive)」を30~60秒程度に設定し、「設定の保存」でTERATERM.INIに保存。クライアントから定期的にSSHの生存確認メッセージを送信し、アイドル状態を防ぐ。
TeraTerm設定(Telnet)「設定」→「TCP/IP」→「Keep alive on Telnet」を設定(Telnet接続の場合のみ)。Telnet接続時のタイムアウトを防止。
サーバー設定sshd_configClientAliveInterval などを調整。サーバー側からのタイムアウト判定を緩和する。
OS・省電力Windowsのネットワークアダプターの電源管理を見直す。PCがアイドル状態になっても通信を維持しやすくする。
ネットワークファイアウォールやVPNのタイムアウト値を確認。経路上の機器による強制切断を回避する。

特に、TeraTermの設定を変更した後は、必ず「設定の保存」(設定メニュー > 設定の保存)を実行してください。これを忘れると、次回起動時に元の設定に戻ってしまい、再びセッションが切れる原因となり得ます。

快適なリモート作業環境を構築するための一助となれば幸いです。

Linuxユーザにお勧めの本

新しいLinuxの教科書 第2版

難易度
実用性
読みやすさ

一生モノの基礎知識が身につく定番書です。

ゼロからわかる Linuxコマンド200本ノック―基礎知識と頻出コマンドを無理なく記憶に焼きつけよう!

難易度
実用性
習得度

アウトプット重視で記憶に定着しやすい。反復練習でLinux操作が自由自在になります。

エンジニア1年生のための世界一わかりやすいLinuxコマンドの教科書

難易度
実用性
読みやすさ


以上で本記事の解説を終わります。
よいITライフを!

Linuxユーザにお勧めの本

新しいLinuxの教科書 第2版

難易度
実用性
読みやすさ

一生モノの基礎知識が身につく定番書です。

人気記事


記事を評価

Thanks!
目次
Scroll to Top