GCP03 - SSH連線至VM

前言
有了VM,有了固態ip,是時候連上我們的VM了
連上的方法用的是SSH,這篇會來講解有哪些設定要調,最後才能成功連上VM
SSH設置
流程 :
1. 更改 SSH 設定允許 Root 登錄和密碼驗證
2. 生成公私鑰,把公鑰放到VM上
3. 本地SSH連線至VM
更改 SSH 設定允許 Root 登錄和密碼驗證
先點SSH,直接透過瀏覽器進行 SSH 連線
成功進去後輸入指令
1 | sudo su |
接下來更改以下兩個選項
PermitRootLogin prohibit-password -> PermitRootLogin yes
PasswordAuthentication no -> yes
改完後輸入以下兩個指令,重啟ssh服務並更改密碼
1 | systemctl restart sshd |
生成公私鑰
先在本機輸入指令(PowerShell),your_email那些可以隨便輸
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
過程中會顯示要把rsa key放到哪裡,如果不同的伺服器會要用到不同的key,就需要更改一下檔名了,我這邊就是改成id_rsa_test1
2
3Generating public/private rsa key pair.
Enter file in which to save the key(C:\Users\username/.ssh/id_rsa):
C:\Users\username\.ssh\id_rsa_test接下來會問說需不需要設定密碼,如果不需要可以直接按Enter,如果有設定,每次使用這個key的時候就會要你輸入密碼,我這裡就不設定密碼了
1
Enter passphrase (empty for no passphrase):
看到這個就代表成功了
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16Your identification has been saved in C:\Users\username\.ssh\id_rsa_test
Your public key has been saved in C:\Users\username\.ssh\id_rsa_test.pub
The key fingerprint is:
SHA256:PVDWHdpVeymyv0G6HUKNKICudh80JWxOrlsO2it+nAY zerocat@demo.com
The key's randomart image is:
+---[RSA 4096]----+
| o. ...+|
| o o .o..o|
| . * .. ....o.|
| . = + o. = . .|
| . = .S.o+ o |
| E. o . . ..+ |
| oo+.o o + |
|..+=* . + + |
|.o++.o . o |
+----[SHA256]-----+輸入指令
cat ~/.ssh/id_rsa.pub
把剛剛生成的公鑰複製下來(email不用複製到)
這裡不一定是id_rsa.pub喔,要看剛剛在步驟一改了甚麼名,比如說我就是id_rsa_test.pub,但預設沒有做更改的話就是id_rsa.pub回到剛剛用瀏覽器ssh上去的介面,輸入指令
vim ~/.ssh/authorized_keys
把剛剛複製的公鑰貼上接下來就可以ssh了
本地SSH連線至VM
這裡用兩種連線方式
- Windows CMD
- MobaXterm
Windows CMD
打開CMD,輸入ssh root@伺服器的外網ip
即可直接連上
比如說我這台就是ssh root@104.199.187.67
但剛剛在生成key的時候,如果跟我一樣改了檔名,那就需要加-i
來指定檔案
輸入指令ssh -i "檔案路徑" root@伺服器的外網ip
比如說我剛剛是生成id_rsa_test,就會是輸入ssh -i "C:\Users\username\.ssh\id_rsa_test" root@104.199.187.67
即可成功連線
MobaXterm
打開後點左上角Session -> SSH
Remote Host : VM的外網ip
username : root
好了之後點Advanced SSH setting -> Use private key
選剛剛生成的私鑰(就是沒有副檔名的,有pub副檔名的是公鑰)
最後大概會長這樣
按ok後即可成功連線
可能會出現的問題
- Problem 1. Terminal出現以下咚咚
1
2
3
4
5
6
7
8
9
10
11
12
13
14@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the ED25519 key sent by the remote host is
SHA256:wlnmSUPQ8gQs/F7Ww2t224xWN70w9B1naz852egO8t0.
Please contact your system administrator.
Add correct host key in C:\\Users\\username/.ssh/known_hosts to get rid of this message.
Offending ED25519 key in C:\\Users\\username/.ssh/known_hosts:7
Host key for 104.199.187.67 has changed and you have requested strict checking.
Host key verification failed.
lost connection - Solve : 根據ip(在此為104.199.187.67),輸入以下指令解決
1 | ssh-keygen -R 104.199.187.67 |
後記
這篇也順利結束惹,下一篇會來介紹防火牆設置的部分
- Title: GCP03 - SSH連線至VM
- Author: Zerocatw
- Created at : 2024-07-22 22:10:10
- Link: https://zerocatw.github.io/2024/07/22/GCP03 - SSH連線至VM/
- License: This work is licensed under CC BY-NC-SA 4.0.