2024-10-01|閱讀時間 ‧ 約 9 分鐘

VSCODE SSH 遠端連線 懶人包

該怎麼遠端使用VSCODE(Visual Studio)?

身為一個懶人,能在家裡就在家裡,能不去實驗室就不去實驗室,但自己的電腦不夠好怎麼辦?

當然最簡單的方式就是使用jupyter notebook,之後會再水一篇。

我們會使用SSH進行連線。

在每個步驟我可能會補充一點,你"可能"遇到的問題。

接下來我會用連松鼠都能懂的方式一步一步教你。

而且Linux (Ubuntu), Windows都能使用此方法操作。

SSH是甚麼?

電腦A : 你要連線的Server

電腦B:你的筆電or桌電

你可以把SSH想像成一個防盜門,這個防盜門要有鑰匙才能把這扇門打開。

SSH的做法是,你要把你的鑰匙拿給防盜門註冊,註冊之後,這扇防盜門在你來的時候就會自動幫你用你的鑰匙開鎖。

所以你的電腦A(Server)內部要有你電腦B的鑰匙資訊,這樣他才能開門。

那我們要怎麼做呢?

Step 1 下載、安裝VSCODE

建議下載網址:https://code.visualstudio.com/download

Step 2 打開VSCODE 點擊Extension部分(紅色框框)

點擊Extesion(擴充功能)

Step 3 搜尋"SS​H" 並且點擊下載

安裝SSH功能

Step 4 設定"SSH Extension",並搜尋"Show login"將其打開

用意:讓你知道你的VSCODE到底有沒有在連線。

打開SSH擴充設定

"Show login"

Step 5 獲得鑰匙(Pubkey)

記得剛剛的SSH解釋嗎?

你的筆電(電腦B)要進入Server裡面(電腦A),所以我們要先

不論你是用哪個作業系統,都請你在VSCODE的原生Terminal中輸入

ssh-keygen -t rsa -b 4096

Windows 系統:

這個時候你會在Windows的下面資料夾看到他生成出來的SSH Key

Windows SSH Key 位置


Linux (Ubuntu) 系統:

  1. 進到你的主目錄,進入.ssh
cd ~ 
cd .ssh
ls

你的SSH Key應該就會生成在這個位置(~/.ssh)。

id_rsa.pub就是你的鑰匙

Step 6 將鑰匙放入主機

接下來就是要把你筆電(電腦B)的鑰匙放入Server(電腦A) 放到~/.ssh/authorized_keys

我們這邊以比較複雜的Ubuntu當主機

此時輸入下列指令

創建.ssh目錄(沒有的話) -- 請記得一定要創在"~"下面也就是你的home下面,這對後面的連線會有影響。
mkdir ~/.ssh 													# 創建.ssh目錄(沒有的話)
chmod 700 ~/.ssh # 給予該目錄權限
touch ~/.ssh/authorized_keys # 創建authorized_keys檔案(放你的PubKey的)
chmod 600 ~/.ssh/authorized_keys # 給予該檔案權限

Step 7 將id_rsa.pub內容複製到authorized_keys裡面

將你的筆電(電腦B)中的id_rsa.pub打開,複製裡面那一長串的亂碼。

把她貼到你的Server(電腦A)的authorized_keys檔案裡面

Step 8 設定VSCODE連線(你的筆電(電腦B))

按下Ctrl+Shift+P,打開VSCODE命令列。

選擇Remote-SSH: Open SSH Configuration File

Remote-SSH: Open SSH Configuration File

Step 9 編輯user/.ssh目錄下的config檔案

編輯ssh config檔案

當你打開config檔案時,應該會長的類似下面這段程式碼

Host <你想要顯示在你電腦上的名稱>
HostName <你連線Server(電腦A)IP地址>
User ​<你Server的電腦名稱>
port <你想指定的port號(可能沒有)>

雷點

到這一步的時候一定很多人霧煞煞。

我都用了阿,怎麼要密碼?我又沒有設密碼?幹嘛跟我要密碼?

VSCODE SSH預設密碼是甚麼?

答案:你的Config裡面輸入錯誤了

User ​<你Server的電腦名稱>

有87趴可能是這一行出錯了!

你電腦的名稱到底是甚麼?

還記得我前面說.ssh目錄要設在哪裡嗎? 設在"~"的下面

你的~是甚麼,那他就要填甚麼。

小技巧:在你的"~"目錄下打出ls -all就能知道了

cd ~
ls -all

紅色區塊就是你的電腦名稱

紅色區塊就是你的電腦名稱,但不是填root。

總結

稍微複習一下SSH怎麼用。

你要連線的電腦(Server)裡面要有一個檔案叫做authorized_keys。

authorized_keys裡面會儲存著你的筆電或桌電的Pub_Key。

所以就是要將本地端的電腦產生一個Pub_key丟給Server上的authorized_keys檔案。沒有這個檔案名就自己建一個,也是可以用的。

然後記得你的.ssh要建立在你的"~"目錄底下才會好用。

你的User就是你的"~"名稱相對於Windows就是你的user名字。

只要以上都用好,應該都可以連線。

第一次寫Blog,也沒有用過,如果有任何問題,或者我可以改進的地方,還請多多指教。








分享至
成為作者繼續創作的動力吧!
© 2024 vocus All rights reserved.