相信大部分同窗都有使用過 Visual Studio Code
這個編輯器,它提供的 Remote - SSH
擴展容許咱們在任何遠程計算機、虛擬機或運行 SSH 服務器的容器上打開遠程文件夾,並充分利用 VS Code
的功能集。linux
當咱們鏈接到服務器時,就能夠與遠程文件系統中的任何位置的文件和文件夾進行交互,就像在操做本機同樣。windows
這很酷,並且頗有用。bash
搭建前的環境。服務器
Windows 10 18362.418
系統的電腦。Ubuntu 18.04 LTS
系統的電腦。固然你均可以在虛擬機上安裝它們,若是是學習的話這也是推薦的作法。ssh
在本次搭建過程當中選擇了以 Ubuntu
做爲服務端。編輯器
使用 PowerShell
安裝 OpenSSH
,首先以管理員身份啓動 PowerShell
。 若要確保能夠安裝 OpenSSH
功能,先執行如下操做:學習
# command Get-WindowsCapability -Online | ? Name -like 'OpenSSH*' # This should return the following output: Name : OpenSSH.Client~~~~0.0.1.0 State : NotPresent Name : OpenSSH.Server~~~~0.0.1.0 State : NotPresent
若是顯示的是 State
不是 NotPresent
而是 Installed
, 那麼表示已經安裝了。不然繼續,安裝客戶端功能:網站
# Install the OpenSSH Client Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0 # should return the following output: Path : Online : True RestartNeeded : False
可選的更新一下軟件列表:加密
$ sudo apt update
安裝 SSH server:spa
$ sudo apt install openssh-server
查看是否啓動:
$ service ssh status
若是沒有啓動則手動啓動:
$ service ssh start
在 Windows
上生成新的 SSH 密鑰:
$ ssh-keygen -t rsa -b 4096
接下來爲遠程主機設置基於 SSH 密鑰的身份驗證,須要執行如下命令:
rem 按提示替換 REMOTEHOST 的值,形如:username@IP SET REMOTEHOST=your-user-name-on-host@host-fqdn-or-ip-goes-here scp %USERPROFILE%\.ssh\id_rsa.pub %REMOTEHOST%:~/tmp.pub ssh %REMOTEHOST% "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat ~/tmp.pub >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys && rm -f ~/tmp.pub"
若是遇到 The authenticity of host 192.168.xxx.xxx can't be established.
這個錯誤(一般咱們在爲 Github 新添加密鑰後,第一次克隆倉庫時會遇到類似的提示),你能夠根據提示進行確認,就像是這樣:
Are you sure you want to continue connecting (yes/no)?yes # 輸入 yes 後回車
或者,你也能夠選擇加上 -o StrictHostKeyChecking=no
參數。也就是說,對應的上面第四行應該改爲下面的格式:
scp -o StrictHostKeyChecking=no %USERPROFILE%\.ssh\id_rsa.pub %REMOTEHOST%:~/tmp.pub
前往 Download Visual Studio Code - Mac, Linux, Windows 下載並安裝(僅須要在 Wondws 上安裝),安裝的步驟比較簡單,這裏就不細說了。
安裝完成後在擴展程序中搜索並安裝 Remote Development
插件。
插件安裝完後左下角會出現一個綠色的圖標,點擊選擇會在命令窗口彈出幾個選項,在下拉選項中選擇 Remote SSH:Connect to Host
。
而後在新的輸入框中輸入遠程用戶和 IP 地址(格式:your-user-name-on-host@host-fqdn-or-ip-goes-here),回車。
順利的話,那麼已經能夠開始遠程開發工做了。
預祝使用愉快。
輕拍【滑稽】。。。