mapear conexão ssh através de localhost

mapear conexão ssh através de localhost

Não tenho certeza se o que estou tentando fazer é possível, mas estou tentando fazer uma conexão SSH passar pelo host local com encaminhamento de porta.

A razão pela qual quero fazer isso é que tenho alguma configuração em um provedor de nuvem onde uma instância obtém um endereço IP diferente toda vez que é inicializada e isso significa que preciso alterar algumas configurações em meu ambiente de desenvolvimento a cada execução. Eu queria saber se posso de alguma forma guiá-lo através de alguma configuração estática de localhost, eu poderia torná-lo um pouco menos tedioso.

Então, no momento, posso conectar da seguinte maneira e adicionei algum encaminhamento de porta como:

ssh [email protected] -L2222:localhost:2222

Minha esperança era poder fazer algo como:

ssh luca@localhost -p 2222

mas isso vem com o erro:

ssh_exchange_identification: read: Connection reset by peer

Estou surpreso, não é uma conexão recusada ou tempo limite ou algo assim, então me pergunto se isso é algum problema de configuração.

Responder1

Tenho algumas configurações em um provedor de nuvem em que uma instância obtém um endereço IP diferente toda vez que é inicializada e isso significa que preciso alterar algumas configurações em meu ambiente de desenvolvimento a cada execução. Eu queria saber se posso de alguma forma guiá-lo através de alguma configuração estática de localhost, eu poderia torná-lo um pouco menos tedioso.

O método usual para resolver este problema é... DNS. Crie um subdomínio com TTL muito baixo e atualize seus registros A/AAAA para apontar para a nova instância sempre que ela for recriada. Alguns provedores de nuvem podem até conseguir automatizar isso.

(Se o DNS global não funcionar, então /etc/hosts também funcionaria.)

Então, no momento, posso conectar da seguinte maneira e adicionei algum encaminhamento de porta como:

ssh [email protected] -L2222:localhost:2222

Seu servidor remoto provavelmente não está configurado para escutar conexões SSH na porta 2222. Ele está configurado apenas para a porta padrão 22. Portanto, a opção de encaminhamento que você deseja é:

-L 2222:localhost:22

Aqui 2222está a porta que estará aberta no seu computador e localhost:22é o destino final ao qual o servidor tentará se conectar.

Estou surpreso, não é uma conexão recusada ou tempo limite ou algo assim, então me pergunto se isso é algum problema de configuração.

O encaminhamento SSH -Lnão funciona no nível do pacote como o encaminhamento de porta do seu roteador. Funciona no nível TCP – o clienteem siescuta conexões e, sempre que recebe uma, solicita ao servidor que se conecte ao destino final.

Portanto, existem 3 conexões encadeadas: cliente nº 2 → cliente nº 1 → servidor → destino.

Isso significa que se o servidor não conseguir se conectar, o cliente nº 1 (realizando o encaminhamento) não poderá produzir um erro "Conexão recusada" para o cliente nº 2 porque a conexão local foi de fatoaceitaramjá. A única coisa que pode fazer é fechar a conexão existente sem transferir nenhum dado. Daí "Conexão redefinida por peer".

informação relacionada