1.介紹
有時候需要在服務器開發代碼,常規的方法在服務器使用VIM工具開發,或者將服務器的代碼復制一份到本地,修改完了就使用ftp工具替換服務器的文件,這樣開發效率比較低。
可以使用VSCode的Remote-SSH插件,遠程登錄服務器打開服務器中相應的文件夾進行開發。
2.安裝
目前Remote-SSH這個插件僅支持VSCode的Insider版本(2019.5.8),所以你需要下載VSCode的Insider版本然后直接在擴展搜索Remote-SSH即可。
選擇Remote-SSH下載即可。
安裝完畢后側邊欄會出現新的圖標。
3.配置
Remote-SSH非常簡單。首先使用快捷鍵Ctrl+SHIFT+P打開活動欄:
搜索Remote-SSH,點選Connect to Host選項
接着會彈出:
讓你選擇config文件放在哪里,回車即可新建並編輯config文件。
config文件必須放到被授權的rsa秘鑰所在的文件目錄,可以看到我這個目錄下的文件是這樣的:
4.生成密鑰方法
客戶端配置
安裝SSH
生成SSH秘鑰對 :window終端打開 (一直回車就可以,自動生成並保存在默認路徑c:\user\administrator\.ssh)ssh-keygen -t rsa -b 4096
(-b 4096表示生成的rsa秘鑰對的長度是4096個bit)
在輸入該指令后,會讓我們指定秘鑰文件的生成目錄:
此時輸入你想放入的目錄和名字,最后會得到兩個文件,以上圖為例,會在這個目錄下生成:
id-rsa和id-rsa.pub兩個文件, 第一個是私鑰文件,第二個是公鑰文件。
服務器配置
檢測ssh服務是否啟動 : netstat -ntlp | grep ssh
如果ssh服務沒有啟動 :/etc/init.d/ssh resart
添加客戶端公鑰,將客戶端的公鑰文件中的所有內容添加到 sudo gedit /root/.ssh/authorized_keys。(如果不存在就自行創建,該文件配置了允許連入的客戶端的公鑰)
修改配置文件:sudo gedit /etc/ssh/sshd_config,這里邊有很多配置,可以搜索一下各個配置項的含義
這里最重要的是我們要把PubkeyAuthentication配置為 yes 允許使用基於密鑰認證的方式登錄。
可以測試連接
使用默認的ssh秘鑰對連接:ssh username@host -p port
指定秘鑰對的ssh連接 : ssh -i parivate-rsa-path username@host -p port
5.連接成功