Declaração do problema:Como me conecto ao meu VPS Digital Ocean Cloud via SSH em uma rede segura, como VPN/túnel?
Contexto detalhado:
1.Meu servidor:um Droplet CentOS 7 com IP público em eth0 e IP privado em eth1
2.Clientes SSH (através de chaves SSH):MobaXterm no Windows 7 OU VirtualBox CentOS 7 VM
Situação? O endereço IP WAN público do meu computador doméstico muda sempre que reinicio meu roteador ou com base na política DHCP (o que vier primeiro)
Como configuro um mecanismo no qual me conecto a um IP ou FQDN que está permanentemente na lista branca no Firewall do meu VPS (algo semelhante aos grupos de segurança da AWS) antes de iniciar uma sessão SSH sem configurar um segundo VPS Linux apenas para fins de VPN? O fluxo abaixo deve torná-lo bastante mais claro:
SSH Clients from my PC(_Random Src IPs_) --> VPN / Tunnel (_1+ IPs white-listed in VPS Firewall_) -->[SSH] --> VPS
Opções NÃO são possíveis
- Servidor VPN no mesmo VPS (torna-se um único ponto de falha)
- Uma segunda configuração Linux VPS como umCaixa de salto | Anfitrião Bastiãojá que o primeiro VPS não é um servidor de nível de produção e manter 2 VPS não é economicamente viável para mim.
Opções possíveis
- Um serviço VPN confiável e gratuito para uso pessoal.
- Tunelamento SSH ou qualquer outra alternativa.
Por favor, deixe-me saber se mais contexto for necessário e me oriente sobre a maneira ideal de conseguir isso.
Responder1
Você poderiatunele sua conexão SSH através do Tor.
Para fazer isso, configure o servidor SSH para escutar apenas no host local e coloque algo assim em /etc/tor/torrc
:
HiddenServiceDir /var/lib/tor/ssh_hidden_service/
HiddenServicePort 22 127.0.0.1:22
HiddenServiceVersion 3 # If you're using tor 0.3.2 or above.
Em seguida, reinicie o Tor. Seu nome de host cebola será gerado e pode ser encontrado em /var/lib/tor/ssh_hidden_service/hostname
.
Configure seu cliente SSH para usar Torcolocando algo assim em ~/.ssh/config
:
Host mydomain
HostName mydomain.com
CheckHostIP no
ProxyCommand connect-proxy -4 -S localhost:9050 $(tor-resolve %h localhost:9050) %p
Você precisará instalar o pacote connect-proxy. Ou você poderia usarnetcat como ProxyCommand.