前言
主要是想使用VSCode的SSH功能,而遠端主機並不是直接對外暴露SSH連線的,但可以透過Sockets Proxy連線,這時候要如何使用Windows內建的SSH Client進行連線呢?於非Windows系統可以使用設定檔並透過netcat(nc)來進行連線,但Windows上沒有這種東西。
在Linux/Mac或其他類Unix系統
如在Linux或者Mac上都可以使用netcat(nc),實際做法可以編輯家目錄的ssh設定檔/home/$USER/.ssh/config
,加入以下設定:
Host <host>
HostName <host>
ProxyCommand nc -X 5 -x <proxy_host>:<proxy_port> %h %p
Port <port>
User <username>
當然必須先安裝nc就是了,而如Proxy是使用SSH的話可將ProxyCommand改成以下設定:
ProxyCommand ssh -q -x <ssh_proxy_host> -W %h:22
Windows
可使用類似的軟體,透過scoop安裝connect:
scoop install connect
SSH設定檔的ProxyCommand改成以下:
ProxyCommand connect -S <proxy_host>:<proxy_port> %h %p