Conecte-se ao servidor (não possui IP externo) via SSH

Conecte-se ao servidor (não possui IP externo) via SSH

Eu tenho um pequeno PC configurado como um servidor Ubuntu e configurei o ssh-server para poder conectar-me a ele via ssh. O problema começa aqui porque não tenho nenhum IP externo fornecido pelo meu ISP (todos os dispositivos possuem 1 IP externo) e não consigo alterá-lo. Então, com base na pesquisa que fiz, criei uma instância AWS de nível gratuito e criei o OpenVPN lá.

Então eu tenho um trabalho assim:

  1. PC1
  2. Instância AWS com IP externo que hospeda servidor OpenVPN
  3. PC2

PC1 e PC2 estão conectados ao servidor OpenVPN na AWS e então posso me conectar ao PC1 por SSH usando PC2.
Quais são minhas opções (se houver) para conectar-se ao PC1 via SSH usando PC2 sem a necessidade de PC2 estar conectado ao OpenVPN ou talvez haja alguma opção para conectar-se apenas ao OpenVPN para conexão ssh e o resto do tráfego não usar o openVPN?

Responder1

Não sei nada sobre OpenVPN. Do meu lado, eu uso um túnel SSH. O básico é bastante simples, mas uma configuração completa pode ser um pouco difícil de fazer. Dito isto, você pode ter qualquer número de túneis de computadores (o que é rápido, desde que você não tente usar todos os túneis ao mesmo tempo).

ssh -fNR 2222:localhost:22 aws-computer

É aws-computerum nome em meu ~/.ssh/configarquivo que define a chave a ser usada e o nome de usuário/senha.

Agora, quando eu ssh no meu, aws-computerposso usar:

ssh -p 2222 pc1

e ele se conecta como se eu tivesse uma conexão SSH única/normal.

Você pode repetir o tunelamento quantas vezes quiser, o que significa que, no final, você pode fazer um ssh pc2no pc1 e outro ssh pc1no pc2. É apenas um pouco de configuração para que tudo funcione.

Host aws-computer
  HostName <ip-address-or-domain-name>
  User name
  Port 22
  PasswordAuthentication no
  HostbasedAuthentication no
  IdentitiesOnly yes
  IdentityFile /home/name/.ssh/tunnel_keys/tunnel_rsa

Nota: eu uso um subdiretório para chaves extras (chaves diferentes das habituais), dessa formaEu posso ter qualquer número deles.

A principal limitação é que você precisa usar portas diferentes (ou seja, você não pode ter dois serviços em um computador usando uma porta). A outra limitação é que um dos computadores deve ter um endereço IP estático ou você precisa disponibilizar um Servidor de Nomes de Domínio que registre os IPs. Esse DNS não é muito seguro, pois outra pessoa pode ficar com o “seu” IP antigo e seus sistemas podem tentar se conectar através de um computador de terceiros.

informação relacionada