Я думаю, что вы приняли неправильную сторону: в вашем случае sshd
(на стороне сервера) , вероятно, не происходит сбой и нет устаревших сеансов, поэтому его уничтожение не должно помочь вам, кроме побочного эффекта грубой остановки любого подключенного ssh
клиентского соединения.
Это ssh
клиент, который не завершает соединение при сбое построения механизма перенаправления портов. И это поведение не ошибка.
Вам нужно посмотреть на ExitOnForwardFailure
опцию в руководстве ssh.
Ваш сценарий будет:
for ((;;))
Кроме того, вы можете захотеть затянуть ServerAliveInterval
и ServerAliveCountMax
для клиента, чтобы обнаружить более быстрое разъединение. (И вы должны убедиться, что TCPKeepAlive
это on
что является значением по умолчанию). Обратите внимание, что autossh
это не поможет вам больше, если вы установили эти параметры.