SSHを使ってあるサーバーにログインする時、何も操作していないアイドル状態が続いたら接続をクローズしたい場合があります。そのような場合はサーバーの/etc/ssh/sshd_configで接続をクローズする時間を指定します。
設定ファイルと設定
以下は、サーバーがRaspberry Pi Raspbian(9.4 stretch)の設定例です。
$sudo vi /etc/ssh/sshd_config
ClientAliveInterval 5
ClientAliveCountMax 0
ClientAliveCountMaxに0を設定し、ClientAliveIntervalに、タイムアウトする時間(秒数)を指定します。上記設定の場合、5秒間何も入力がないと、SSHの接続がクローズします。
SSHのサービスを再スタートさせると、/etc/ssh/sshd_configの設定変更が反映されます。
systemctl restart ssh
確認
SSHの設定が反映されたかどうかは、sshd -Tで確認できます。
$sshd -T | grep client
clientaliveinterval 5
clientalivecountmax 0
サーバーにsshでログインしてから何も操作をしない時間がタイムアウト時間を超えると、次のようなメッセージを出力してSSHがクローズします。
Connection to 192.168.xx.xx closed by remote host.