博客專欄

        EEPW首頁 > 博客 > VScode 的遠程開發(fā),體驗后爽翻

        VScode 的遠程開發(fā),體驗后爽翻

        發(fā)布人:電子禪石 時間:2022-11-28 來源:工程師 發(fā)布文章
        一、配置免密遠程登錄

        因為是要遠程登錄,那么需要通過使用ssh進行密鑰對登錄,這樣每次登錄服務(wù)器就可以不用輸入密碼了。

        先來一句官方介紹:

        ssh 公鑰認證是一種方便、高安全性的身份驗證方法,它將本地“私有”密鑰與遠程主機上與用戶關(guān)聯(lián)的“公共”密鑰進行匹配,從而實現(xiàn)免密登錄。

        接下來介紹如何生成密鑰并將其添加到遠程主機。

        我是linux用戶,就只介紹linux下的配置哈,mac和Windows用戶可以查看 官方文檔。


        1、首先檢查本地是否有已生成ssh密鑰對,Linux用戶查看是否存在公鑰文件 ~/.ssh/id_rsa.pub和私鑰文件~/.ssh/id_rsa。

        如果沒有,則用如下命令生成,一路回車即可:

        ssh-keygen -t rsa -b 4096


        2、然后將本地公鑰文件id_rsa.pub 的內(nèi)容添加到遠程主機用戶目錄下 .ssh 文件夾內(nèi)名為 authorized_keys 的文件中。

        不用去復(fù)制粘貼,使用命令ssh-copy-id來完成,輸出結(jié)果如下:

        ~$ ssh-copy-id remote_user@remote_id
        /usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
        /usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
        remote_user@remote_id's password: 
        
        Number of key(s) added: 1
        
        Now try logging into the machine, with:   "ssh 'remote_user@remote_id'"
        and check to make sure that only the key(s) you wanted were added.

        操作完后登錄服務(wù)器就可以不用輸入密碼了,你們可以取試試。


        二、配置VS Code遠程開發(fā)插件

        在VS code中,使用ctrl+shift+x快捷鍵打開插件搜索窗口,輸入插件Remote Development,并點擊安裝。


        使用cmd+shift+p快捷鍵打開命令輸入窗口,輸入Remote-SSH:Connect to Host...,第一次使用時需要選擇Add New SSH Host配置一下,myserver是我自己配置的,選擇這個就可以直接登錄服務(wù)器了。


        然后就照著如下格式輸入登錄服務(wù)器的命令:


        -A 表示開啟認證代理連接轉(zhuǎn)發(fā)功能,其實我也不知道啥意思......

        輸入完成后選擇第一個配置文件:


        右下角出現(xiàn)如下提示表示成功:


        這一步就算完成了,我再多說兩句。

        上一步是把登錄服務(wù)器的信息添加到配置文件.ssh/config中的,該文件格式為:

        Host alias
          HostName host_id
          User user_name
          Port 22
          ForwardAgent yes
        • HostName:遠程主機的IP地址

        • User:遠程主機的用戶名

        • port:遠程主機的端口號,不填寫的話,ssh默認端口號為22,如果要用其他端口號,可以在這里更改

        • ForwardAgent:這個是VS code自己添加的,可以不用管


        上面配置文件第一行Host alias,我們可以將alias更改為任何別名,因為我們平時登錄服務(wù)器使用的命令為ssh name@server_id,如果記不住服務(wù)器IP地址,則可以設(shè)置別名來方便記憶。

        比如我第一行為Host myserver,則登錄服務(wù)器時使用命令ssh myserver即可。

        最后再接著使用cmd+shift+p快捷鍵打開命令輸入窗口,輸入Remote-SSH:Connect to Host...,選擇你配置的那個別名即可連接到服務(wù)器。

        也可以通過如下方式連接服務(wù)器:


        會新彈出VS code窗口,左下邊多了一個遠程圖標(biāo),表示處于遠程模式。


        連接成功后,通過File->Open->File/Folder打開文件或者文件夾,然后就可以像編輯本地文件一樣編輯遠程文件了。


        最后啰嗦一句,當(dāng)使用 ssh name@server_id 遠程登錄服務(wù)器時,出現(xiàn)錯誤提示:Permission denied (publickey).

        這是因為服務(wù)器默認禁用了ssh密碼登錄權(quán)限。修改方法如下:

        1. 在服務(wù)器上的終端輸入:sudo vim /etc/ssh/sshd_config,打開該文件。

        2. 找到PasswordAuthentication,將其后的 no 改為 yes。

        3. 重啟ssh服務(wù):sudo service sshd restart


        然后就可以進行遠程開發(fā)啦,我也是剛用這個功能,以后遇到什么坑再進行補充。

        關(guān)鍵是連接上以后,打開文件夾就是打開的是遠程目錄的文件夾。這是最方便的。



        *博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。



        關(guān)鍵詞: vscode

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 香港| 济源市| 婺源县| 娱乐| 柞水县| 邹平县| 盱眙县| 永平县| 大悟县| 忻城县| 和田县| 米泉市| 汾阳市| 大港区| 大名县| 北宁市| 金山区| 苏尼特右旗| 汾阳市| 苗栗市| 大邑县| 宜章县| 尤溪县| 稷山县| 永胜县| 江都市| 通江县| 建阳市| 福贡县| 肇州县| 普定县| 临西县| 桂平市| 时尚| 文登市| 内江市| 攀枝花市| 朝阳市| 荆门市| 汝阳县| 原阳县|