У меня на работе есть SSHD на сервере и рабочая машинка под виндой. Иногда мне нужно заходить из дома на работу по RDP, а иногда с работы домой по RDP.
Для начала, парочка удобных алиасов:
alias ssh='ssh -o TCPKeepAlive=no -o ServerAliveInterval=15 -o ServerAliveCountMax=10'
alias mars='ssh root@EXTERNAL_IP'
И собственно команда для организации ssh канала, которую я запускаю на домашнем ноутбуке в cygwin:
while true; do mars -L 64012:192.168.200.36:3389 -R 64012:10.11.12.108:3389 -N; done
Если не нужен проброс портов, то просто их не пишите. Уже несколько лет успешно использую такую конфигурацию - разрывов нет ;) Пробовал autossh, но что-то у меня с ним не получилось, иногда приходилось делать kill -9