返回列表

GCP帳號快速認證 谷歌雲伺服器登入教程

谷歌雲GCP / 2026-05-28 14:58:53

簡介

歡迎來到「谷歌雲伺服器登入教程」,這不是考古學,不用刷卡也不用挖地道,只要準備好一把 SSH 金鑰、一點耐心,以及偶爾按下 Enter 的勇氣,就能把你的本地電腦和 Google Cloud(以下簡稱 GCP)上的虛擬機(VM)連起來。本文以輕鬆幽默的口吻,帶你逐步完成從帳戶準備、VM 建立,到多種登入方式與排錯技巧,讓你在雲端操作時不再手忙腳亂。

準備工作

GCP帳號快速認證 帳戶與專案設定

首先,確保你有一個 Google 帳號,並在 Google Cloud Console(console.cloud.google.com)建立一個專案(Project)。為了開啟 Compute Engine(VM)功能,還要啟用結算(Billing),因為雲端服務需要吃飯錢——平時會有免費額度,但啟用帳單是必要步驟。

安裝 gcloud SDK(可選,但很方便)

gcloud SDK 是 Google 提供的命令列工具,能讓你直接在終端機建立、管理 VM,甚至用它來登入。安裝方式很簡單,官方文件步驟照著做即可。安裝完成後執行:

gcloud init

依提示登入 Google 帳戶並選擇專案。若你是重度終端機使用者,gcloud 會是你最好的朋友(或至少是個好室友)。

準備 SSH 金鑰

大多數情況下我們會使用 SSH 公/私鑰對來登入 VM。Linux 或 macOS 用戶可以在終端機產生金鑰:

ssh-keygen -t rsa -b 4096 -C "[email protected]" -f ~/.ssh/gcp_rsa

這會產生私鑰(~/.ssh/gcp_rsa)與公鑰(~/.ssh/gcp_rsa.pub)。私鑰務必保密,公鑰會上傳到 GCP。

在 Google Cloud 建立 VM

使用 Console(圖形介面)

打開 Console → Compute Engine → VM instances → Create Instance。選擇機器種類(例如 e2-micro,若你只想測試),設定地區、映像檔(作業系統,例如 Debian、Ubuntu),並在 Management 標籤或「安全性」設定中加入你的 SSH 公鑰(從 .pub 檔案複製內容)。

使用 gcloud 建立(範例)

gcloud compute instances create my-vm 
  --zone=us-central1-a 
  --machine-type=e2-micro 
  --image-family=debian-11 
  --image-project=debian-cloud 
  --metadata-from-file=ssh-keys=~/.ssh/gcp_rsa.pub

這行指令會建立名為 my-vm 的 VM,並把公鑰放到該 VM 的 metadata。建立完成後就可以登入了。

三種常見登入方法

1) 瀏覽器內嵌 SSH(最省事)

在 GCP Console 的 VM instances 頁面,找到你的 VM,按下「SSH」按鈕。瀏覽器會開一個視窗,直接以你的 Google 帳號進行驗證並登入。優點是免設定金鑰、免安裝工具;缺點是功能受限,不適合做大量檔案傳輸或複雜的端口轉發。

2) gcloud compute ssh(推薦給終端機愛好者)

如果已安裝 gcloud,可以用:

gcloud compute ssh my-vm --zone=us-central1-a

gcloud 會自動處理金鑰(若你沒設定金鑰,它會幫你生成並上傳到 metadata),並建立連線。若要指定私鑰檔案:

gcloud compute ssh my-vm --ssh-key-file=~/.ssh/gcp_rsa --zone=us-central1-a

這個方法整合度高,常用於開發與維運自動化腳本中。

3) 本地 SSH 客戶端(最傳統也最彈性)

使用本地終端機(Linux / macOS):

ssh -i ~/.ssh/gcp_rsa USER@EXTERNAL_IP

注意 USER 通常是建立金鑰時指定的使用者名稱(或映像檔預設的,如 ubuntu、debian、root 等),EXTERNAL_IP 是 VM 的外部 IP。若是 Windows 使用者,常見選擇有 PowerShell 的 ssh 或 PuTTY。若用 PuTTY,要先把 OpenSSH 私鑰轉成 PuTTY 的 .ppk 格式(用 PuTTYgen)。

金鑰、metadata 與 OS Login

專案與 VM 的 metadata

公鑰可以加在 VM 的 metadata(僅對該 VM 有效),也可以加在專案的 metadata(對該專案下所有 VM 生效)。在 Compute Engine → Metadata → SSH Keys 可以看到並管理這些金鑰。

OS Login(更現代、更安全)

如果你想用 IAM 來管理 SSH 存取,可以啟用 OS Login。啟用後,使用者的 SSH 權限會與 Google 帳號與 IAM 角色綁定,管理起來更集中、也更安全。開啟方式可在 VM 的 metadata 加上:

enable-oslogin=TRUE

然後在 IAM 中指派 roles/compute.osLogin 或 roles/compute.osAdminLogin 給使用者。

移除與更新金鑰

若密鑰被洩露,請立刻從 metadata 刪除該公鑰,並撤銷相關 IAM 權限,然後產生新金鑰上傳。不要用同一把金鑰到處亂插,否則被盜風險會像放飛機票一樣可怕。

設定防火牆與網路

允許 SSH 的防火牆規則

預設情況下,GCP 會有一個允許 tcp:22 的預設防火牆規則,但如果你的 VPC 被自訂規則限制,你需要手動允許。可以在 VPC network → Firewall rules 中新增:

Targets: all instances in the network
Source IP ranges: 0.0.0.0/0 (或限定為你的 IP)
Protocols and ports: tcp:22

小心:將來源設為 0.0.0.0/0 雖然方便,但不安全。建議限定為你的固定 IP 或使用 VPN。

私有 IP + Bastion Host(跳板機)

若你想要更安全的架構,可以把 VM 設為私有 IP,然後透過一台公開的 Bastion Host(跳板機)或 Cloud IAP 來登入。這樣可以把內部服務關在防火牆後,避開直接暴露到公網的風險。

常見錯誤與排錯技巧

連線被拒(Connection refused)

原因:SSH server 未在 VM 上啟動(rare,但可能),或防火牆封鎖。檢查 VM 是否在執行,查看防火牆規則是否允許 tcp:22,或使用瀏覽器 SSH 嘗試登入,以排除本地網路問題。

Permission denied (publickey)

原因大多為金鑰錯誤、使用者名稱錯誤或公鑰未正確上傳。檢查: - 私鑰檔案權限是否正確(chmod 600 ~/.ssh/gcp_rsa) - 私鑰與公鑰是否成對 - 登入時使用的使用者名稱是否正確(例如 ubuntu、debian、root) - 公鑰是否存在 VM / 專案 metadata 中

Timeout 或無回應

檢查外部 IP 是否正確、VM 是否啟動、網路路由是否有問題。用 ping、telnet 或 nc 測試 tcp:22 是否有回應。

安全最佳實務

  • 不要使用密碼登入,禁用密碼驗證只允許金鑰登入。
  • 定期輪替金鑰,私鑰若有疑慮立即撤銷。
  • 限定 SSH 存取來源 IP,或使用 VPN / Bastion Host。
  • 考慮啟用 OS Login,使 IAM 成為單一存取控制點。
  • 使用兩步驟驗證(2FA)保護你的 Google 帳號。
  • 記錄與監控:啟用 Cloud Audit Logs,關注可疑登入行為。

小結與快速參考

重點總整理,給你一張速查表,當你下一次要登入 GCP VM 時,一步步速拿出來對照:

# 建立金鑰
ssh-keygen -t rsa -b 4096 -f ~/.ssh/gcp_rsa

# 使用 gcloud 上傳金鑰並建立 VM
gcloud compute instances create my-vm --zone=Z --image-family=debian-11 --image-project=debian-cloud --metadata-from-file=ssh-keys=~/.ssh/gcp_rsa.pub

# 用 gcloud 登入
gcloud compute ssh my-vm --zone=Z

# 用本地 ssh 登入
ssh -i ~/.ssh/gcp_rsa USER@EXTERNAL_IP

# 若用 PuTTY,先用 PuTTYgen 轉檔
# 防火牆檢查: 確認 tcp:22 允許來源 IP

# 啟用 OS Login
# 在 VM metadata 加上: enable-oslogin=TRUE

GCP帳號快速認證 最後一句話送給你:雲端世界看似遙不可及,其實也像煮一鍋滷肉,一旦掌握比例(權限、金鑰、防火牆),安心又美味。遇到狀況不慌張,照著本文步驟去做,大多數連線問題都能被你征服。祝你在 Google Cloud 上遨遊順利,連線成功率比早晨的第一杯咖啡還高!

附錄:常用命令速覽

# 列出 VM
gcloud compute instances list

# 查看 VM 詳細
gcloud compute instances describe my-vm --zone=Z

# 刪除 VM
gcloud compute instances delete my-vm --zone=Z

# 上傳檔案到 VM(scp)
scp -i ~/.ssh/gcp_rsa localfile USER@EXTERNAL_IP:~/

# 從 VM 下載檔案
scp -i ~/.ssh/gcp_rsa USER@EXTERNAL_IP:~/remotefile ./

如果你喜歡這篇教學,記得把它當成口袋筆記收藏;如果它幫你省下一次重灌或一次誤刪,那就更值得了。需要更進階的教學(例如設定負載平衡、私有網路、或自動化部署),下次再來,我會帶著更多範例跟你繼續冒險。

Telegram售前客服
客服ID
@cloudcup
联系
Telegram售后客服
客服ID
@yanhuacloud
联系