vscode使用remote-ssh免密連接服務(wù)器
你還在使用XShell、Hyper、FinalShell等等SSH客戶端軟件嗎,作為前端的我們,一直在用的功能強大的開發(fā)工具vscode,早已實現(xiàn)SSH連接功能(借助官方提供的插件)。而且更加好用,可以直接打開服務(wù)器上的文件,直接在vscode中修改、保存。
按照下面的步驟安裝配置,去發(fā)現(xiàn)新大陸吧!
安裝remote-ssh插件

新建ssh連接
點擊遠程資源管理器、右上角切換到遠程(隧道/ssh)、新建遠程:

在窗口上方彈出的命令框中輸入:ssh name@ip,name是你服務(wù)器的用戶名,如果沒有創(chuàng)建用戶則填root,ip是你的服務(wù)器ip地址(例如:ssh root@192.168.1.1):

回車后會彈出選擇更新配置文件,點擊第一個路徑,會在本地電腦對應(yīng)目錄(/User/xxx/.ssh)下自動生成一個config文件:

回車點擊打開配置,會打開生成的config文件:


上面的每個字段代表的含義:
Host 服務(wù)器別名,可以自定義,默認是ip地址 HostName 服務(wù)器IP地址 Port 端口號(端口可以不指定,默認都是22) user 填寫登錄使用的用戶名,我這就是root #編輯完成后保存退出
在 config 文件配置完成并保存后,在VSCode的遠程資源管理器中已經(jīng)出現(xiàn)剛配置的遠程服務(wù)器,此時點擊紅框按鈕連接即可

此時沒有意外的話就可以連接上了遠程服務(wù)器了。
配置免密連接
上面配置完后,就可以使用了,但有個問題就是每次連接都需要輸入密碼,如何免密連接呢?一臺機器想要免密訪問其他機器,需要把自己的公鑰內(nèi)容發(fā)送到別的機器的authorized_keys中去,并在本機config文件中配置私鑰文件位置。
免密連接配置流程:
在本機(就是你的電腦本地)生成新的密鑰對
使用命令ssh-keygen生成新的密鑰對。你可以選擇在生成密鑰對時為其指定不同的文件名。請注意,-f 后的id_rsa_linux 和 id_rsa_windows 只是示例文件名,你可以根據(jù)需要選擇其他文件名。
# 本機為 Mac 或 Linux,請使用命令: ssh-keygen -t rsa -b 2048 -f ~/.ssh/id_rsa_linux ? # 本機為 Windows,請使用命令: ssh-keygen -t rsa -b 2048 -f C:\Users\YourUsername\.ssh\id_rsa_windows
輸入命令后一路回車,不用填寫任何內(nèi)容:

系統(tǒng)會在你指定的路徑(本例子為 /Users/YourUsername/.ssh)下生成兩個文件,分別是id_rsa_linux.pub和id_rsa_linux,前者為生成的公鑰,后者為私鑰。
添加公鑰到遠程服務(wù)器
將生成的公鑰( id_rsa_linux.pub的內(nèi)容)添加到你遠程服務(wù)器的 authorized_keys 文件中,以免密連接。
(1) 若你本機是Windows:
手動復(fù)制公鑰文件 (id_rsa_linux.pub) 的內(nèi)容,然后登錄到遠程服務(wù)器,并將內(nèi)容粘貼到 authorized_keys 文件的最下面一行。如下是我生成的id_rsa_linux.pub文件內(nèi)容:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDebsGnaUFOS0P1F3MqAY6NXUwOv4mspwVzr
在遠程服務(wù)器上,authorized_keys 文件通常存儲在用戶的 .ssh 目錄中。具體路徑可能為 ~/.ssh/authorized_keys。
如果你的.ssh目錄或者 authorized_keys 文件不存在,你可以在服務(wù)器終端使用以下命令創(chuàng)建它:
# 創(chuàng)建目錄 mkdir ~/.ssh # 進入目錄 cd ~/.ssh # 創(chuàng)建 authorized_keys 文件 touch authorized_keys # 打開 authorized_keys 文件,并將你的公鑰內(nèi)容粘貼到其中 vim authorized_keys # 保存并關(guān)閉文本編輯器。
(2)如果你本機是Mac或Linux:
ssh-copy-id 命令通常用于將你的公鑰復(fù)制添加到遠程服務(wù)器的 authorized_keys 文件中。-i 選項用于指定身份文件(即你的公鑰文件)。在本機執(zhí)行如下命令:
# 1. 輸入命令: ssh-copy-id -i id_rsa_linux.pub name@ip # 2. 輸入密碼并回車,公鑰內(nèi)容就添加到服務(wù)器authorized_keys文件中了
確保公鑰文件 (id_rsa_linux.pub) 在本地機器上的正確位置,并且你有讀取該密鑰的權(quán)限。同時,確保遠程服務(wù)器上的用戶 有一個 .ssh 目錄,并且 authorized_keys 文件有正確的權(quán)限(通常是目錄權(quán)限為 700,authorized_keys 文件權(quán)限為 600)。
配置 SSH 客戶端:
將添加公鑰到遠程服務(wù)器后,最后一步便是配置你的主機。
打開你的 SSH 客戶端(本機)配置文件(也就是前面生成的config文件,一般在/Users/YourUsername/.ssh/config),添加配置(IdentityFile 私鑰文件路徑),以指定使用哪個私鑰文件。
Host 192.168.1.1 HostName 192.168.1.1 User root IdentityFile /Users/zhangqdmacmini/.ssh/id_rsa_linux
這樣,當(dāng)你使用 ssh 連接服務(wù)器時,SSH 客戶端將自動選擇相應(yīng)的私鑰文件,就可以實現(xiàn)免密登錄了。
到此這篇關(guān)于vscode使用remote-ssh免密連接服務(wù)器的文章就介紹到這了,更多相關(guān)vscode remote-ssh免密連接 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Git中smart Checkout與force checkout的區(qū)別及說明
這篇文章主要介紹了Git中smart Checkout與force checkout的區(qū)別及說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-08-08
游戲開發(fā)進階Unity網(wǎng)格(Mesh\動態(tài)合批\骨骼動畫\蒙皮)
本篇文章是進階篇文章主要講解游戲開發(fā)進階,主要包含的技術(shù)有Mesh,動態(tài)合批,骨骼動畫,蒙皮下面一起進入Unity網(wǎng)格探險之旅吧2021-09-09
詳解phpstudy linux web面板(小皮面板)V0.2版本正式發(fā)布
小皮面板,是由phpStudy官方團隊針對Linux服務(wù)器開發(fā)推出的一款服務(wù)器環(huán)境搭建以及管理工具。這篇文章主要介紹了phpstudy linux web面板(小皮面板)V0.2版本正式發(fā)布,需要的朋友可以參考下2019-10-10

