透過 VPN 連接到雲端 VPS

透過 VPN 連接到雲端 VPS

問題陳述:如何透過 VPN/隧道等安全網路透過 SSH 連接到我的 Digital Ocean Cloud VPS?

詳細背景:
1.我的伺服器:CentOS 7 Droplet,在 eth0 上有公用 IP,在 eth1 上有私有 IP
2.SSH 客戶端(透過 SSH 金鑰):Windows 7 或 VirtualBox CentOS 7 虛擬機器上的 MobaXterm

情況? 每次我重新啟動路由器或根據其 DHCP 策略(以第一個出現者為準

如何設定一個機制來連接到在我的 VPS 防火牆中永久列入白名單的 IP 或 FQDN (類似於 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. 同一 VPS 上的 VPN 伺服器(成為單點故障
  2. 第二個 Linux VPS 設定如下跳箱|堡壘主機由於第一個 VPS 不是生產級伺服器,加上維護 2 個 VPS 對我來說在經濟上不可行。

可能的選擇

  1. 可靠的 VPN 服務,免費供個人使用。
  2. SSH 隧道或任何其他替代方案。

如果需要更多背景信息,請告訴我並指導我實現這一目標的理想方法。

答案1

你可以透過 Tor 建立 SSH 連線隧道

為此,請將 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。您的洋蔥主機名稱將被產生並可在 中找到/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

相關內容