Простой способ сделать это - использовать Netcat. Команда nc -z localhost 19999
проверит, есть ли что-то в локальном порте 19999 прослушивания, поэтому вы можете использовать: nc -z localhost 19999 || ssh -fN -R 19999:localhost:22 -i aws-mycert.pem ubuntu@my.dyndns.com
для воссоздания туннеля, если это необходимо.
Однако, это только проверяет, что туннель работает, но он может быть устаревшим. Лучшее решение - использовать autossh . Просто установите его на свой компьютер и используйте:
autossh -M 0 -o "ServerAliveInterval 30" -o "ServerAliveCountMax 3" -fN -R 19999:localhost:22 -i aws-mycert.pem ubuntu@my.dyndns.com
Тогда вам просто нужно запустить эту команду при запуске сервера, что зависит от вашего дистрибутива.
Подробнее об использовании autossh вы можете узнать по адресу https://www.everythingcli.org/ssh-tunnelling-for-fun-and-profit-autossh/.