ssh auto reconnect (when connection timed out)

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС.

Модераторы: SLEDopit, Модераторы разделов

Аватара пользователя
SLEDopit
Модератор
Сообщения: 4824
Статус: фанат консоли (=
ОС: GNU/Debian, RHEL

ssh auto reconnect

Сообщение SLEDopit »

Есть удаленный хост за натом, где нет возможности пробрасывать порты.
Соотвественно для связи использую ссш форвардинг.

Код: Выделить всё

ssh -N -o ExitOnForwardFailure=yes -R 2222:localhost:22 user@host

аутентификация по ключам.
для автоматического реконнекта в гугле предлагают только скрипты типа:

Код: Выделить всё

while [ ! -f /tmp/stop ]; do ssh -o ExitOnForwardFailure=yes -R 2222:localhost:22 target "while nc -zv localhost 2222; do sleep 5; done"; sleep 5;done
или

Код: Выделить всё

while [ 1 ]; do ssh -R 2222:localhost:22 -N user@host.domain; sleep 120; done
собственно вопрос:
это действительно реализуется только такими скриптами, или есть другие способы?
просто поскольку айпи на удаленном сервере динамический и время от времени там будут происходить реконнекты интернет соединения, то связь будет обрываться. ладно хоть у нас есть скрин =)
UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity. © Dennis Ritchie
The more you believe you don't do mistakes, the more bugs are in your code.
Спасибо сказали:
Kreept
Сообщения: 107
ОС: Linux

Re: ssh auto reconnect

Сообщение Kreept »

Думаю AutoSSH поможет решить данную проблему.
дока -- http://www.opennet.ru/tips/info/2157.shtml
Спасибо сказали:
pelmen
Сообщения: 1268
ОС: debian

Re: ssh auto reconnect

Сообщение pelmen »

из MAN SSH:
-o
ServerAliveInterval
ServerAliveCountMax
TCPKeepAlive
Спасибо сказали: