提供對隔離遠端伺服器的 Internet 訪問
假設我在數據倉庫中有一台伺服器。我可以從我的 PC 遠端連接到它,但它無法訪問 Internet。
是否可以配置 SSH 連接或任何其他配置,使遠端伺服器可以通過我的 PC 進行 Internet 連接?
雖然之前的答案是正確的,但它並不完整,所以我想自己回答這個問題,它對我有用,所以我可以幫助其他有同樣需要的人。(我的電腦是windows,我的伺服器是Linux)
- 下載並安裝 Windows 的 squid 代理。跟著這些步驟
http://www.mrcnit.com/how-to-setup-squid-proxy-server-in-windows-7810-or-windows-server/ 2. 在連接到你的 linux 機器之前,使用 putty SSH 到你的 linux 機器,轉到“源埠”中的 Connection->SSH->Tunnels 選項(如果你的伺服器資訊保存在 putty 中,請記住先載入它) ”欄位在“目標”欄位中輸入 3128 在下面的選項中輸入 localhost:3128,選擇“遠端”點擊“添加”點擊“打開” 3. 連接到遠端 linux 框後,輸入以下命令
導出 http_proxy=“http://127.0.0.1:3128”
從現在開始,您執行的每一個 wget 或 curl 都會使用您的 SSH 反向連接通過您的 PC 連接訪問 Internet。
- 如果您使用的是 Linux PC 並希望為您的 Linux 伺服器提供 Internet 訪問權限,那麼您將不會使用 putty,而是使用您自己的 ssh 客戶端。在這種情況下,編輯文件(或創建)~/.ssh/config 並輸入以下內容
主機 * ServerAliveInterval 30 遠端轉發 3128 127.0.0.1:3128 遠端轉發 52698 127.0.0.1:52698
這將創建到您的 linux PC 的反向連接
我希望這能像我曾經一樣照亮一些迷失的靈魂……
是的,使用您的 PC 作為代理。有很多方法可以在您的 PC 上設置代理,並且伺服器可以通過多種方式訪問您的 PC 以使用該代理。這一切都取決於你的想法。這裡舉兩個例子。
- 一種選擇是在您的 PC 上使用 openssh 為要連接的伺服器提供 socks5 代理。伺服器使用帶有“-D”開關的 ssh 連接到您的 PC。Firefox 和其他人可以輕鬆連接到它。這可能會給你一些內部使用襪子代理終端中的命令
- 我過去使用的一個輕量級 http 代理是 tinyproxy。它甚至可以在帶有 openwrt 的 TP-Link 路由器上執行。訪問 http 代理通常比 socks5 代理更容易,儘管 socks5 代理更強大。
Openssh 的優勢在於它預裝在基本上任何 linux 電腦上。