デフォルトの設定のままSSH接続をしていると、すぐタイムアウトしてしまうため、サーバーの設定を変更することにしました。ちなみに、私はSSH接続をするときは「vSSH」というSSHクライアントを使っています。

設定手順

sshd_configを編集します。

vi /etc/ssh/sshd_config

今回は「ClientAliveInterval」と「ClientAliveCountMax」の設定を編集します。set numberで行数を確認すると、126行目と127行目に該当がありました。

:set number

vssh2

ClientAliveIntervalはサーバーがクライアントに向かってつながっているか確かめるメッセージを送って、それがタイムアウトになる時間を秒数で設定します。デフォルトは0です。0だとメッセージを送らないようになっています。

#ClientAliveInterval 0

ClientAliveCountMaxは、タイムアウトになった際に試してみる回数です。最初の試行を入れて「3」で、ClientAliveIntervalが「60」の場合、合計で60x3の180秒待つことになります。デフォルトは3です。

#ClientAliveCountMax 3

この2つを編集します。例えば、ClientAliveIntervalを60として、ClientAliveCountMaxを5に設定。そしてコメントアウトを外した場合、最大5分(60秒 * 5回)までタイムアウトされないようになります。

最後にsshdを再起動して、設定を反映します。

systemctl restart  sshd.service

以上です。