剛入行的時候
當時想用 SSH 連GCP Instance 會先透過 GCP web ssh 把 public key丟進去 再進行連線,但每開新機器就要再丟一次,有點煩。
最近研究了一下 GCP IAM的 OS Login 在Blog 留一下筆記
- 在GCP 畫面左側找到 設定>中繼資料 (Setting > Metadata
- 在 Metadata 加入 Key: enable-oslogin , Value: TRUE
如下圖 - 在新增機器的時候
下面有個 管理、安全性、磁碟、網路、單獨租用 (Management, security, disks, networking, sole tenancy) 把它展開
於裡面的 中繼資料 (Metadata) 填入跟上面相同的 enable-oslogin: TRUE - 如果是你這個GCP Project的 owner,你可以跳過這個步驟,
在這邊我也是 owner , 所以我跳過以下內容https://cloud.google.com/compute/docs/instances/managing-instance-access#grant-iam-roleshttps://cloud.google.com/compute/docs/instances/managing-instance-access#grant-iam-roles
https://cloud.google.com/compute/docs/instances/managing-instance-access#grant-iam-roleshttps://cloud.google.com/compute/docs/instances/managing-instance-access#grant-iam-roles - 讓GCP知道你的ssh public key
上面弄了那麼多,GCP 還是不知道你的 public keyPOST https://oslogin.googleapis.com/v1/users/ACCOUNT_EMAIL:importSshPublicKey { "key": "SSH_KEY", "expirationTimeUsec": "EXPIRATION_TIMESTAMP" }
可以透過postman call 下面的API
POST https://oslogin.googleapis.com/v1/users/你的email:importSshPublicKey
{
"key": "public key 的內容",
"expirationTimeUsec": "毫秒"
}
如果你不知道什麼是 ssh key,你可能要自己研究一下(這個很基本) 。
這樣你就能在你的 terminal ssh進去了
沒有留言:
張貼留言