Подтвердить что ты не робот

Возможно ли SSH ControlMaster с Cygwin на Windows?

Кто-нибудь мог использовать контрольный мастер с cygwin в Windows для создания нескольких сеансов без повторного входа в систему? Мне нужно автоматизировать последовательность шагов SSH, но не могу просить пользователя каждый раз вводить требуемый токенированный пароль.

Я сконфигурировал свой cygwin ssh_config следующим образом:

Host *
    ControlMaster auto
    ControlPath /tmp/%[email protected]%h:%p

И я получаю следующее сообщение об ошибке на master, когда я запускаю второе соединение, которое снова запрашивает пароль:

mm_receive_fd: no message header
process_mux_new_session: failed to receive fd 0 from slave

Я видел других с этой проблемой, но я не могу найти решение для этого.

Кто-нибудь сделал эту работу?

4b9b3361

Ответ 1

По-видимому, после долгих поисков можно сделать вывод, что в настоящее время это невозможно. Это были единственные ссылки, которые я нашел:

https://stackoverflow.com/questions/17140457/imitating-a-shared-ssh-session-for-scripts-on-windows  "... но нет реализации OpenSSH для Windows, которая делает это (дескрипторы файлов через сокеты unix не работают в Cygwin)". и

http://gcc.gnu.org/wiki/SSH_connection_caching  "К сожалению, если вы используете OpenSSH в Cygwin, вы не сможете воспользоваться преимуществами кэширования соединений, поскольку Cygwin в настоящее время не поддерживает дескриптор файла, проходящий через сокеты домена unix".

Ответ 2

Для Cygwin это все еще кажется невозможным, но в Windows это возможно. У меня это работает в Windows, используя wsl-ssh-stant и Windows Ubuntu Bash/WSL).

В bash установите socat. Затем запустите wsl-ssh-showant, как он говорит, затем с циклом while и export. Если у вас есть ваш контрольный мастер в настройке .ssh правильно, и создается каталог для ControlPath, он должен работать.

Ответ 3

Конечно, это возможно. Начните свой мастер с

cygstart --hide ssh -M -S /your/socketfile server

после этого вы можете получить доступ с помощью

ssh -S /your/socketfile server …