comando ssh bastion host proxy

1

Esta é uma situação estranha em que o mesmo comando funciona quando inserido diretamente no shell, mas não quando é um ProxyCommand no arquivo de configuração ssh.

Então, isso funciona:

 $ ssh -A -R 40022:git.some.pt:22 -t -t [email protected] ssh -t -t -R 40022:localhost:40022 [email protected]

Mas isso não acontece:

em ~ / .ssh / config

Host destination
  ProxyCommand ssh -A -R 40022:git.some.pt:22 -t -t [email protected] ssh -t -t -R 40022:localhost:40022 [email protected]

$ ssh destination
Bad packet length 218783296.
Disconnecting: Packet corrupt

Alguma ideia do porquê?

    
por Sofia 14.04.2015 / 18:17

1 resposta

1

Você precisa permitir que sua linha de comando ssh se conecte a um servidor ssh em algum lugar. Seu ProxyCommand existente não faz isso - ele fornece todos os meios para efetuar login em algum lugar e não resta mais nada para seu ssh inicial.

Isso parece funcionar razoavelmente bem para mim, e acho que acertei sua corrente (obviamente, é mais difícil para eu testar com os mesmos nomes de host que você usa). Observe que ele usa nc em vez de ssh no host bastion, embora:

Host destination.net
        User user
        ProxyCommand ssh -A [email protected] nc %h %p
        ForwardAgent yes
        RemoteForward 40022 git.some.pt:22

Eu também tenho procurado executar /usr/sbin/sshd -i no final de ssh -p %p user@%h (em vez de nc %h %p ), como sugerido por man ssh_config , mas não consigo fazer isso funcionar. Talvez você tenha mais sorte.

    
por 14.04.2015 / 23:29

Tags