Проблема, с которой вы сталкиваетесь, означает, что соединение недоступно. Если в конце команды вы увидите список всех соединений, вы, возможно, увидите, что соединение для этого порта больше не находится в режиме LISTEN и теперь оно является TIME-WAIT или ЗАКРЫТЬ-ПОДОЖДИТЕ, это означает, что соединения все еще «живы», но только как запущенный процесс в малине.
Чтобы это работало, вы можете создать скрипт, который проверяет наличие обратного соединения, если не настроил его.
Чтобы решить эту проблему, вы можете добавить код в скрипт, чтобы проверить, есть ли на модуле идентификатор процесса ssh, и если у вас есть файл маркера, вы убьете этот процесс, чтобы снова запустить туннель.
Например, у вас есть пустой файл с именем RESTARTSSH, в своем скрипте вы можете проверить, существует ли этот файл, если да, то найдите идентификатор процесса ssh и уничтожьте его, а затем перезапустите туннель.
Для проверки идентификатора процесса вы можете использовать:
ps -ef | grep ServerAliveInterval | grep -v grep | awk ''