目錄
- 問(wèn)題背景:
- 環(huán)境準(zhǔn)備:
- 配置步驟:
- 1.在本地配置服務(wù)器的免密登錄
- 2.VScode上的配置
問(wèn)題背景:
在開(kāi)發(fā)或者做實(shí)驗(yàn)的過(guò)程中,我們經(jīng)常會(huì)用到遠(yuǎn)程服務(wù)器或者Github的項(xiàng)目,而我服務(wù)器上的項(xiàng)目只能在Jupyter Notebook上編寫(xiě)(或許可以在其他IDE上寫(xiě),但我不知道)。而我們喜歡用的IDE比如Pycharm、輕量級(jí)的VScode,如何在本地的IDE上使用服務(wù)器的項(xiàng)目且快速、方便地寫(xiě)代碼呢?這就是今天要詳細(xì)介紹的VScode配置免密ssh+remote,一旦連接成功,我們就可以在本地自己喜歡的IDE上操作遠(yuǎn)程服務(wù)器端的項(xiàng)目了。
環(huán)境準(zhǔn)備:
1.Win10
2.VScode(VSCodeUserSetup-x64-1.36.1)友情提供下載地址VScode官網(wǎng)下載。強(qiáng)烈推薦VScode,比Pycharm好用得多得多得多,因?yàn)樗禽p量級(jí)的!下載只需要幾十M!
3.有一臺(tái)遠(yuǎn)程可用的服務(wù)器
配置步驟:
1.在本地配置服務(wù)器的免密登錄
這樣做的目的是,每次用VScode打開(kāi)遠(yuǎn)程服務(wù)器的時(shí)候,就不用輸入一些繁瑣的IP、密碼等一類的信息了。
1)cmd打開(kāi)命令提示符
2)在cmd下輸入
ssh-keygen -t rsa -b 4096
生成SSH密鑰和公鑰(如下圖紅框所示)
![](/d/20211017/f616b3b655ea5863db3e62c0d21f52b1.gif)
(我記得此后連敲三下Enter就完成了,密鑰id_rsa和公鑰id_rsa.pub文件都默認(rèn)保存在(C:\User\用戶/.ssh)文件夾下)
![](/d/20211017/c615d523a0b0f6dda6ff0974c75ca659.gif)
3)將公鑰文件id_rsa.pub傳到遠(yuǎn)程服務(wù)器的authorized_keys文件中
在cmd下輸入⬇️:
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"
* 解釋一下:
第一行作用相當(dāng)于設(shè)置變量名,REMOTEHOST設(shè)置格式為“你在服務(wù)器的用戶名@服務(wù)器的ip地址”
例如我在服務(wù)器的用戶名是“l(fā)py”,遠(yuǎn)程服務(wù)器的ip為49.52.10.120,那么我的第一行代碼就是
SET REMOTEHOST=lpy@49.52.10.120
第二行scp命令的詳細(xì)知識(shí)可以參考scp使用說(shuō)明,它是Linux系統(tǒng)下基于ssh登陸進(jìn)行安全的遠(yuǎn)程文件拷貝命令。知道這條命令的作用之后,我們就能知道前半部分是本地公鑰文件的位置,后半部分是遠(yuǎn)程服務(wù)器端當(dāng)前目錄下名為tmp.pub的文件,我們要把本地的公鑰拷貝到這個(gè)臨時(shí)文件里。
%USERPROFILE%就是本地主機(jī)的用戶名,在C:\Users這里找,%REMOTEHOST%是我們剛剛已經(jīng)SET過(guò)的哦,就不用管它啦。
至此我們?cè)诿钐崾痉@里的工作已經(jīng)全部完成啦,是不是很簡(jiǎn)單!!接下來(lái)我們繼續(xù)哦~
2.VScode上的配置
1)首先打開(kāi)已經(jīng)下載好的VScode,下載插件Remote-SSH,步驟如下。
![](/d/20211017/a9bb11e201e6d94627215f206d9c8545.gif)
插件下載完畢后,我們可以發(fā)現(xiàn),功能列多了一個(gè)圖標(biāo)
![](/d/20211017/e7a3704120a683e1484336107a465a6b.gif)
2.同時(shí)按Ctrl+Shift+p顯示如下
![](/d/20211017/35890cc6f150924b1ceaf44da65eceef.gif)
我們選第一行的內(nèi)容得到下面的頁(yè)面,繼續(xù)選擇第一行內(nèi)容
![](/d/20211017/902ad419529276758fed848e787d56a9.gif)
我們可以得到config文件,內(nèi)容如下
Host name-of-ssh-host-here
User your-user-name-on-host
HostName host-fqdn-or-ip-goes-here
舉個(gè)例子,我的設(shè)置為
![](/d/20211017/71e1248f36c773cb5435c5816f4cb6b3.gif)
保存即可(現(xiàn)在可以看到你配置的機(jī)器啦 csffm2)
![](/d/20211017/da0030a584108977cd2f63f6df282117.gif)
3)點(diǎn)擊紅框處的圖標(biāo)
![](/d/20211017/82aecf3715177f44f06665d807b412d1.gif)
等待VS Code建立連接后就可以通過(guò)File > Open或File > Open Workspace直接打開(kāi)遠(yuǎn)程機(jī)器上的文件或文件夾進(jìn)行開(kāi)發(fā)調(diào)試?yán)瞺
![](/d/20211017/0e996e525ef89227b7f24a67d643e201.gif)
左下角表面我已經(jīng)連接成功
中間方框就是我服務(wù)器上的項(xiàng)目,完成!Yeap??!補(bǔ)充一點(diǎn)就是,師兄說(shuō)VScode這里建立的是服務(wù)器端的一個(gè)映射,也就是說(shuō)這里的環(huán)境是服務(wù)器端的,你在服務(wù)器端下載的所有開(kāi)發(fā)包,在VScode這里都是可以用的,而且如果你之后還會(huì)在VScode下載其他包的話,服務(wù)器端也是會(huì)有的。
參考鏈接:https://code.visualstudio.com/docs/remote/troubleshooting#_installing-a-supported-ssh-client
VScode里面,若左邊工具欄沒(méi)有了小電腦的標(biāo)志
最好的解決辦法就是uninstall后install,因?yàn)椴寮苄∷赃@樣的操作是最快最省事兒的!Python也是,如果解釋器找不到了就重裝一下。
到此這篇關(guān)于Win10下配置VScode遠(yuǎn)程開(kāi)發(fā)ssh-remote(免密登錄)的文章就介紹到這了,更多相關(guān)vscode ssh-remote配置免密登錄 內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- VSCode遠(yuǎn)程SSH免密登錄配置實(shí)現(xiàn)
- VSCode使用ssh密鑰免密遠(yuǎn)程登錄服務(wù)器的方法