Com um nc compatível com OpenBSD, adicione esta entrada de anfitrião à configuração do cliente SSH, por exemplo ~/.ssh/config:

Host work-through-proxy
    HostName ssh.example.com
    User alex
    ProxyCommand nc -X connect -x proxy.example.net:8080 %h %p

Use ssh work-through-proxy para essa rota. O auxiliar pede ao proxy HTTP um CONNECT para ssh.example.com e passa o fluxo aceite ao SSH. Apontar o SSH diretamente para a porta do proxy enviaria o handshake para um serviço que espera HTTP.

Substitua o endpoint, o destino e a conta. Para um destino SSH acessível publicamente onde é permitido um intermediário público, a lista de proxies HTTP oferece candidatos para verificar o acesso a esse anfitrião e porta; escolha um endpoint que não exija conta de proxy para o comando mostrado. Estas opções OpenBSD nc dependem da implementação; outro executável chamado nc pode não as suportar.

O proxy pode exigir o seu próprio início de sessão ou negar a porta SSH pedida. Um 407 diz respeito a essa troca com o proxy. Depois de o túnel abrir, o SSH continua a verificar o anfitrião de destino e a autenticar o utilizador; uma chave SSH rejeitada é outra falha.

Mantenha o ProxyCommand sob a secção Host pretendida e, quando necessário, use o caminho de autenticação de proxy suportado pelo auxiliar escolhido. O comando fornece um fluxo, não permissão através do intermediário. Se apenas forem permitidos destinos HTTPS, obtenha um acordo de acesso SSH aprovado em vez de assumir que outra grafia do comando altera a política.

Artigos relacionados