Planteamiento del problema:¿Cómo me conecto a mi VPS Digital Ocean Cloud a través de SSH a través de una red segura como una VPN/túnel?
Contexto detallado:
1.Mi servidor:un Droplet de CentOS 7 con una IP pública en eth0 y una IP privada en eth1
2.Clientes SSH (a través de claves SSH):MobaXterm en Windows 7 o VirtualBox CentOS 7 VM
¿Situación? La dirección IP WAN pública de mi computadora personal cambia cada vez que reinicio mi enrutador o según su política DHCP (lo que ocurra primero)
¿Cómo configuro un mecanismo mediante el cual me conecto a una IP o FQDN que está permanentemente en la lista blanca del Firewall de mi VPS (algo similar a los grupos de seguridad de AWS) antes de iniciar posteriormente una sesión SSH sin configurar un segundo VPS de Linux solo para fines de VPN. El siguiente flujo debería dejarlo bastante claro:
SSH Clients from my PC(_Random Src IPs_) --> VPN / Tunnel (_1+ IPs white-listed in VPS Firewall_) -->[SSH] --> VPS
Opciones NO posibles
- Servidor VPN en el mismo VPS (se convierte en un único punto de falla)
- Una segunda configuración de VPS Linux como unCaja de salto | Anfitrión del bastiónDado que el primer VPS no es un servidor de producción, además mantener 2 VPS no es económicamente viable para mí.
Opciones posibles
- Un servicio VPN confiable y gratuito para uso personal.
- Tunneling SSH o cualquier otra alternativa.
Avíseme si se necesita más contexto y guíeme sobre la forma ideal de lograrlo.
Respuesta1
Tú podríastuneliza tu conexión SSH a través de Tor.
Para hacer eso, configure el servidor SSH para escuchar solo en localhost y coloque algo como esto en /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.
Luego reinicia Tor. Su nombre de host cebolla se generará y podrá encontrarlo en /var/lib/tor/ssh_hidden_service/hostname
.
Configure su cliente SSH para usar Torponiendo algo como esto en ~/.ssh/config
:
Host mydomain
HostName mydomain.com
CheckHostIP no
ProxyCommand connect-proxy -4 -S localhost:9050 $(tor-resolve %h localhost:9050) %p
Necesitará instalar el paquete connect-proxy. O podrías usarnetcat como ProxyCommand.