Como criar um agente de tunelamento SSH via HTTPS?

Como criar um agente de tunelamento SSH via HTTPS?

Como permitir o SSH quando a rede está bloqueada em todas as portas, exceto HTTP e HTTPS?

Estou curioso para saber como posso criar um túnel SSH que me permita fazer SSH via 443 e funcione mesmo depois que o servidor for reiniciado?

Estou tentando usar o Laravel Forge para configurar o servidor. Porém se as portas SSH estiverem bloqueadas, o Laravel forge não funcionará. Portanto, estou tentando encontrar uma maneira de permitir o SSH para o Laravel Forge por meio de um agente de tunelamento.

Responder1

Bem, se a porta 443 for usada pelo servidor web, você não poderá reutilizá-la para outra coisa (na verdade, existem maneiras de fazer essas coisas). O que eu sugeriria é que o servidor criasse uma conexão SSH de saída para outra caixa, muito provavelmente que a política de firewall permitirá isso.

Faça algo assim:

ssh -L 2222:localhost:22 some.other.server

(Talvez até torne-o persistente usando um serviço.https://gist.github.com/drmalex07/c0f9304deea566842490)

Em seguida, faça login em some.other.server e faça o seguinte:

ssh -p 2222 webserveruser@localhost

Ou deixe sua automação se conectar a esta porta.

Para dar um passo adiante, você pode usar a opção de salto para pular diretamenteatravéso servidor intermediário. Seu .ssh/config poderia ser parecido com isto.

Host intermediate.server
  HostName intermediate.server
  User someuser
  IdentityFile ~/.ssh/id_rsa


Host webserver
  HostName localhost
  User someuser
  Port 2222
  IdentityFile ~/.ssh/id_rsa
  ProxyJump intermediate.server

efetivamente permitindo que você faça isso:

ssh webserver

Tenho que amar ssh!

informação relacionada