Cisco Digital Network Architecture Center (DNA Center) バージョン 1.3.9 および 2.1 以降では /etc/sshd_config に ClientAliveInterval, ClientAliveCountMax が設定され idle timeout が 300 秒となっています。
// DNA Center 側設定
[Fri Jan 22 09:23:39 UTC] maglev@192.0.2.31 (maglev-master-192-0-2-31) ~
$ sudo cat /etc/ssh/sshd_config | grep ClientAlive
[sudo] password for maglev:
ClientAliveInterval 300
ClientAliveCountMax 0
// クライアント側動作
% ssh -p 2222 maglev@192.0.2.31
Welcome to the Cisco DNA Center Appliance
maglev@192.0.2.31's password:
Welcome to the Maglev Appliance
<snip>
[Fri Jan 22 09:35:33 UTC] maglev@192.0.2.31 (maglev-master-192-0-2-31) ~
$ Connection to 192.0.2.31 closed by remote host.
Connection to 192.0.2.31 closed.
[2021-01-22 18:40:34] ~/
%
5 分以上操作を行わないが SSH ターミナルの接続を維持したい場合は、セキュリティ上のリスクを理解した上でクライアント側で keepalive を送信するようにしてください。
ターミナル出力が長時間発生しない処理の実行などの場合は SSH が idle timeout することで DNA Center 上での bash およびその子プロセスが終了するため処理が異常終了する場合があります。
Mac/Linux 標準ターミナル
// オプション 1: CLI での ServerAliveInterval 指定
ssh -p 2222 -o ServerAliveInterval=30 maglev@192.0.2.31
// オプション 2: ~/.ssh/config での全ホストへの ServerAliveInterval 指定
% cat .ssh/config
Host *
ServerAliveInterval 30
ServerAliveCountMax 3
TCPKeepAlive yes
% ssh -p 2222 maglev@192.0.2.31
オプション 3: ~/.ssh/config での特定ホストへの ServerAliveInterval 指定
% cat .ssh/config
Host 192.0.2.31
User maglev
Port 2222
ServerAliveInterval 30
TCPKeepAlive yes
% ssh 192.0.2.31
ターミナルアプリケーションをご使用の場合は、各アプリケーションでの keepalive 機能を利用できます。
iTerm2
Tera Term