![](/img/trans.png)
[英]Kubernetes how to correctly mount windows path in wsl2 backed environment
[英]How to Use sshuttle on Windows WSL2
我們有一個 Jenkins 服務器,只能從雲上的 VPC 內部訪問。 在 Mac 和 Linux 上,我使用sshuttle
與堡壘實例建立 ssh 連接(充當代理)並在瀏覽器中打開 Jenkins 控制台。 一切正常。
現在我在 Windows 上,並試圖在 WSL2 上做同樣的事情。 如果我之前沒記錯的話, sshuttle
在 WSL1 上不起作用(失敗並出現一些錯誤消息),但我設法在 WSL2 上運行它而沒有任何問題。 ssh 連接已建立,我可以訪問我的 Jenkins(使用curl
)。
然后我嘗試通過 WSL2 在 Windows 上訪問我的 Jenkins:
1.我找到了WSL2的IP地址和端口ssh隧道:
# lsof -i -n | grep ssh
sshuttle 1234 rad 5u IPv4 39270 0t0 TCP *:socks (LISTEN)
ssh 5678 rad 3u IPv4 40252 0t0 TCP 172.25.236.84:57578->bastion:ssh (ESTABLISHED)
2. 我配置了 Firefox (v77) 的網絡代理設置來使用我的 ssh 隧道:
Manual proxy configuration
SOCK host: 172.25.236.84
Port: 1080
SOCKS V5 (tested with V4 as well)
但加載頁面失敗,Firefox 上出現“連接已重置”錯誤。 我通過 Powershell 測試了 SOCKS 端口已打開並響應(使用Test-NetConnection
)。
1.知道問題是什么嗎? 如何讓它發揮作用?
2. 如果不行,是否有其他解決方案(例如 Docker 等)?
謝謝。
我不確定,但我的猜測是sshuttle
實際上並沒有充當 SOCKS 代理,這就是連接被重置的原因。
I managed to access my Jenkins on Windows machine using ssh SOCKS proxy: ssh -D 0.0.0.0:1080 rad@bastion
and configured Firefox to use the SOCKS proxy.
有趣的是,為此您甚至不需要 WSL。 Windows 10 似乎有 OpenSSH,你可以使用它。 只需打開 CMD 並輸入ssh -D 1080 rad@bastion
並設置 Firefox 以使用 localhost 作為代理。
如果有任何更好的解決方案或任何評論/關注(除了 DNS over SOCKS),請分享。
謝謝。
作為 WSL(2) 的替代方案,您可以運行常規 SSH 隧道。
例如:
ssh -N -L 127.0.0.1:5432:some_domain_to_forward:5432 user@jumpbox_ip
然后只需連接到 127.0.0.1:5432
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.