Подключение через VPN к облачному VPS

Подключение через VPN к облачному VPS

Постановка задачи:Как подключиться к моему Digital Ocean Cloud VPS через SSH через защищенную сеть, например VPN/туннелирование?

Подробный контекст:
1.Мой сервер:CentOS 7 Droplet с публичным IP на eth0 и частным IP на eth1
2.SSH-клиенты (через SSH-ключи):MobaXterm на Windows 7 или VirtualBox CentOS 7 VM

Ситуация? Публичный WAN IP-адрес моего домашнего компьютера меняется каждый раз, когда я перезапускаю маршрутизатор или в соответствии с его политикой DHCP (что наступит первым)

Как настроить механизм, при котором я подключаюсь к IP-адресу или полному доменному имени, которые постоянно находятся в белом списке брандмауэра моего VPS (что-то похожее на группы безопасности AWS) перед последующим запуском сеанса SSH без настройки второго Linux VPS только для целей VPN? Следующий поток должен прояснить ситуацию:

SSH Clients from my PC(_Random Src IPs_) --> VPN / Tunnel (_1+ IPs white-listed in VPS Firewall_) -->[SSH] --> VPS

Варианты НЕВОЗМОЖНЫ

  1. VPN-сервер на том же VPS (становится единой точкой отказа)
  2. Вторая настройка Linux VPS, напримерJumpbox | Хост Bastionтак как первый VPS не является сервером производственного уровня, а обслуживание двух VPS для меня экономически нецелесообразно.

Возможные варианты

  1. Надежный VPN-сервис, бесплатный для личного использования.
  2. SSH-туннелирование или любая другая альтернатива.

Пожалуйста, дайте мне знать, если понадобится дополнительный контекст, и подскажите, как лучше всего этого добиться.

решение1

Вы могли бытуннелируйте ваше SSH-соединение через Tor.

Для этого настройте SSH-сервер на прослушивание только локального хоста и добавьте в него что-то вроде этого /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.

Затем перезапустите Tor. Ваше onion-имя хоста будет сгенерировано и его можно будет найти в /var/lib/tor/ssh_hidden_service/hostname.

Настройте свой SSH-клиент для использования Torпоместив что-то вроде этого в ~/.ssh/config:

Host mydomain
    HostName mydomain.com
    CheckHostIP no
    ProxyCommand connect-proxy -4 -S localhost:9050 $(tor-resolve %h localhost:9050) %p

Вам нужно будет установить пакет connect-proxy. Или вы можете использоватьnetcat как ProxyCommand.

Связанный контент