Dokumen ini menjelaskan cara menambahkan kunci SSH ke instance virtual machine (VM) yang menggunakan Login OS dan VM yang menggunakan kunci SSH berbasis metadata. Jika Anda atau administrator organisasi belum mengaktifkan Login OS, VM Anda akan menggunakan kunci SSH berbasis metadata.
Sebelum memulai
- Untuk informasi tentang cara mengelola akses ke VM Compute Engine, lihat Memilih metode akses.
- Jika Anda belum melakukannya, buat pasangan kunci SSH.
-
Jika Anda belum melakukannya, siapkan autentikasi.
Autentikasi adalah
proses verifikasi identitas Anda untuk mengakses layanan dan API Google Cloud.
Untuk menjalankan kode atau contoh dari lingkungan pengembangan lokal, Anda dapat mengautentikasi ke Compute Engine dengan memilih salah satu opsi berikut:
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Untuk menambahkan kunci SSH publik ke akun Anda, gunakan perintah
gcloud compute os-login ssh-keys add
:gcloud compute os-login ssh-keys add \ --key-file=KEY_FILE_PATH \ --project=PROJECT \ --ttl=EXPIRE_TIME
Ganti kode berikut:
KEY_FILE_PATH
: jalur ke kunci SSH publik di workstation Anda. Kunci harus menggunakan formatpublic-openssh
PROJECT
: Opsional: project tempat Anda akan menggunakan kunci SSH. Tentukan kolom ini untuk menggunakan kunci SSH dalam project di luar organisasi Anda, atau jika Anda bukan anggota organisasi Cloud IdentityEXPIRE_TIME
: Opsional: waktu habis masa berlaku kunci SSHMisalnya, jika Anda menentukan
30m
, masa berlaku kunci SSH akan habis setelah 30 menit.Flag ini menggunakan unit berikut:
s
untuk detikm
untuk menith
untuk jamd
untuk hari
ACCOUNT_EMAIL
: alamat email yang terkait dengan akun Anda.SSH_KEY
: kunci publik yang Anda ingin tambahkan ke akunEXPIRATION_TIMESTAMP
: waktu habis masa berlaku kunci, dalam mikrodetik sejak epoch (1 detik = 106 mikrodetik)Di Konsol Google Cloud, buka halaman Metadata.
Klik tab SSH keys.
Klik Edit.
Klik Tambahkan item.
Di kolom SSH key yang terbuka, tambahkan kunci SSH publik Anda. Kunci ini harus dalam salah satu format berikut:
- Format kunci tanpa waktu habis masa berlaku:
KEY_VALUE USERNAME
- Format kunci dengan waktu habis masa berlaku:
KEY_VALUE google-ssh {"userName":"USERNAME","expireOn":"EXPIRE_TIME"}
Ganti kode berikut:
KEY_VALUE
: nilai kunci SSH publikUSERNAME
: nama pengguna Anda. Contohcloudysanfrancisco
ataucloudysanfrancisco_gmail_com
.Untuk VM Linux,
USERNAME
tidak bolehroot
, kecuali jika Anda mengonfigurasi VM untuk mengizinkan login root. Untuk mengetahui informasi selengkapnya, lihat Terhubung ke VM Linux sebagai pengguna root.Untuk VM Windows yang menggunakan Active Directory (AD), nama pengguna harus diawali dengan domain AD, dalam format
DOMAIN\
. Misalnya, penggunacloudysanfrancisco
dalam ADad.example.com
memilikiUSERNAME
dariexample\cloudysanfrancisco
.EXPIRE_TIME
: waktu habis masa berlaku kunci, dalam format ISO 8601. Contoh:2021-12-04T20:12:00+0000
- Format kunci tanpa waktu habis masa berlaku:
Klik Save.
Jika sudah ada kunci SSH di metadata project, Anda harus menambahkannya kembali ke metadata project setiap kali menambahkan kunci SSH baru menggunakan gcloud CLI. Jika Anda tidak menambahkan kembali kunci yang sudah ada, menambahkan kunci baru akan menghapus kunci yang ada.
Untuk menambahkan kunci SSH publik ke metadata project menggunakan gcloud CLI, lakukan langkah berikut:
Jika project Anda sudah memiliki kunci SSH publik tingkat project, dapatkan kunci tersebut dari metadata dan tambahkan ke file baru:
Jalankan perintah
gcloud compute project-info describe
untuk mendapatkan kunci SSH untuk project:gcloud compute project-info describe \ --format="value(commonInstanceMetadata[items][ssh-keys])"
Output-nya mirip dengan berikut ini:
username:ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQ... username:ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQ...
Salin nilai metadata
ssh-keys
.Buat dan buka file teks baru di workstation Anda.
Di dalam file tersebut, tempel daftar kunci yang baru saja Anda salin.
Tambahkan kunci baru Anda di akhir daftar, dalam salah satu format berikut:
- Format kunci tanpa waktu habis masa berlaku:
USERNAME:KEY_VALUE
- Format kunci dengan waktu habis masa berlaku:
USERNAME:KEY_VALUE google-ssh {"userName":"USERNAME","expireOn":"EXPIRE_TIME"}
Ganti kode berikut:
KEY_VALUE
: nilai kunci SSH publikUSERNAME
: nama pengguna Anda. Misalnya,cloudysanfrancisco
ataucloudysanfrancisco_gmail_com
.Untuk VM Linux,
USERNAME
tidak bolehroot
, kecuali jika Anda mengonfigurasi VM untuk mengizinkan login root. Untuk mengetahui informasi selengkapnya, lihat Terhubung ke instance sebagai pengguna root.Untuk VM Windows yang menggunakan Active Directory (AD), nama pengguna harus diawali dengan domain AD, dalam format
DOMAIN\
. Misalnya, penggunacloudysanfrancisco
dalam ADad.example.com
memilikiUSERNAME
dariexample\cloudysanfrancisco
.EXPIRE_TIME
: waktu habis masa berlaku kunci, dalam format ISO 8601. Contoh:2021-12-04T20:12:00+0000
- Format kunci tanpa waktu habis masa berlaku:
Simpan dan tutup file tersebut.
Jalankan perintah
gcloud compute project-info add-metadata
untuk menetapkan nilaissh-keys
tingkat project:gcloud compute project-info add-metadata --metadata-from-file=ssh-keys=KEY_FILE
Ganti
KEY_FILE
dengan salah satu dari berikut ini:- Jalur ke file yang Anda buat pada langkah sebelumnya, jika project sudah memiliki kunci SSH
- Jalur ke file kunci SSH publik baru, jika project tidak memiliki kunci SSH
Dapatkan nilai
fingerprint
danssh-keys
dari metadata menggunakan metodeprojects.get
GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID
Ganti
PROJECT_ID
dengan project ID Anda.Responsnya mirip dengan hal berikut ini:
... "fingerprint": "utgYE_XWtE8=", "items": [ { "key": "ssh-keys", "value": "cloudysanfrancisco:ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDAu5kKQCPF...\nbaklavainthebalkans:ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDQDx3FNVC8... google-ssh {"userName":"baklavainthebalkans","expireOn":"2021-06-14T16:59:03+0000"}" } ] ...
Tambahkan nilai
ssh-keys
baru menggunakan metodeprojects.setCommonInstanceMetadata
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/setCommonInstanceMetadata { "items": [ { "key": "ssh-keys", "value": "EXISTING_SSH_KEYS\nNEW_SSH_KEY" } ] "fingerprint": "FINGERPRINT" }
Ganti kode berikut:
PROJECT_ID
: ID project AndaEXISTING_SSH_KEYS
: nilai kuncissh-keys
dari respons permintaanprojects.get
FINGERPRINT
: nilaifingerprint
dari respons permintaanprojects.get
NEW_SSH_KEY
: kunci SSH baru, dalam salah satu format berikut:- Format kunci tanpa waktu habis masa berlaku:
USERNAME:KEY_VALUE
- Format kunci dengan waktu habis masa berlaku:
USERNAME:KEY_VALUE google-ssh {"userName":"USERNAME","expireOn":"EXPIRE_TIME"}
Ganti kode berikut:
KEY_VALUE
: nilai kunci SSH publikUSERNAME
: nama pengguna Anda. Misalnya,cloudysanfrancisco
ataucloudysanfrancisco_gmail_com
.Untuk VM Linux,
USERNAME
tidak bolehroot
, kecuali jika Anda mengonfigurasi VM untuk mengizinkan login root. Untuk mengetahui informasi selengkapnya, lihat Terhubung ke instance sebagai pengguna root.Untuk VM Windows yang menggunakan Active Directory (AD), nama pengguna harus diawali dengan domain AD, dalam format
DOMAIN\
. Misalnya, penggunacloudysanfrancisco
dalam ADad.example.com
memilikiUSERNAME
dariexample\cloudysanfrancisco
.EXPIRE_TIME
: waktu habis masa berlaku kunci, dalam format ISO 8601. Contoh:2021-12-04T20:12:00+0000
- Format kunci tanpa waktu habis masa berlaku:
Di Konsol Google Cloud, buka halaman Create an instance.
Tentukan detail VM.
Luaskan bagian Advanced options, dan lakukan hal berikut:
Luaskan bagian Security.
Pilih Add manually generated SSH keys.
Klik Add item.
Tambahkan kunci publik Anda di kotak teks. Kunci ini harus dalam salah satu format berikut:
- Format kunci tanpa waktu habis masa berlaku:
KEY_VALUE USERNAME
- Format kunci dengan waktu habis masa berlaku:
KEY_VALUE google-ssh {"userName":"USERNAME","expireOn":"EXPIRE_TIME"}
Ganti kode berikut:
KEY_VALUE
: nilai kunci SSH publikUSERNAME
: nama pengguna Anda. Contohcloudysanfrancisco
ataucloudysanfrancisco_gmail_com
.Untuk VM Linux,
USERNAME
tidak bolehroot
, kecuali jika Anda mengonfigurasi VM untuk mengizinkan login root. Untuk mengetahui informasi selengkapnya, lihat Terhubung ke VM Linux sebagai pengguna root.Untuk VM Windows yang menggunakan Active Directory (AD), nama pengguna harus diawali dengan domain AD, dalam format
DOMAIN\
. Misalnya, penggunacloudysanfrancisco
dalam ADad.example.com
memilikiUSERNAME
dariexample\cloudysanfrancisco
.EXPIRE_TIME
: waktu habis masa berlaku kunci, dalam format ISO 8601. Contoh:2021-12-04T20:12:00+0000
- Format kunci tanpa waktu habis masa berlaku:
Untuk membuat dan memulai VM, klik Create.
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Untuk membuat VM dan menambahkan kunci SSH publik ke metadata instance secara bersamaan menggunakan gcloud CLI, gunakan perintah
gcloud compute instances create
:gcloud compute instances create VM_NAME \ --metadata=ssh-keys=PUBLIC_KEY
Ganti kode berikut:
VM_NAME
: nama VM baruPUBLIC_KEY
: kunci SSH publik Anda, dalam salah satu format berikut:- Format kunci tanpa waktu habis masa berlaku:
USERNAME:KEY_VALUE
- Format kunci dengan waktu habis masa berlaku:
USERNAME:KEY_VALUE google-ssh {"userName":"USERNAME","expireOn":"EXPIRE_TIME"}
Ganti kode berikut:
KEY_VALUE
: nilai kunci SSH publikUSERNAME
: nama pengguna Anda. Misalnya,cloudysanfrancisco
ataucloudysanfrancisco_gmail_com
.Untuk VM Linux,
USERNAME
tidak bolehroot
, kecuali jika Anda mengonfigurasi VM untuk mengizinkan login root. Untuk mengetahui informasi selengkapnya, lihat Terhubung ke instance sebagai pengguna root.Untuk VM Windows yang menggunakan Active Directory (AD), nama pengguna harus diawali dengan domain AD, dalam format
DOMAIN\
. Misalnya, penggunacloudysanfrancisco
dalam ADad.example.com
memilikiUSERNAME
dariexample\cloudysanfrancisco
.EXPIRE_TIME
: waktu habis masa berlaku kunci, dalam format ISO 8601. Contoh:2021-12-04T20:12:00+0000
- Format kunci tanpa waktu habis masa berlaku:
Anda dapat menambahkan beberapa kunci SSH menggunakan flag
--metadata-from-file=ssh-keys=FILE_PATH
. Dalam file tersebut, tambahkan daftar nama pengguna dan kunci SSH publik dalam salah satu format sebelumnya.PROJECT_ID
: the project IDZONE
: zona VM- Format kunci tanpa waktu habis masa berlaku:
USERNAME:KEY_VALUE
- Format kunci dengan waktu habis masa berlaku:
USERNAME:KEY_VALUE google-ssh {"userName":"USERNAME","expireOn":"EXPIRE_TIME"}
KEY_VALUE
: nilai kunci SSH publikUSERNAME
: nama pengguna Anda. Misalnya,cloudysanfrancisco
ataucloudysanfrancisco_gmail_com
.Untuk VM Linux,
USERNAME
tidak bolehroot
, kecuali jika Anda mengonfigurasi VM untuk mengizinkan login root. Untuk mengetahui informasi selengkapnya, lihat Terhubung ke instance sebagai pengguna root.Untuk VM Windows yang menggunakan Active Directory (AD), nama pengguna harus diawali dengan domain AD, dalam format
DOMAIN\
. Misalnya, penggunacloudysanfrancisco
dalam ADad.example.com
memilikiUSERNAME
dariexample\cloudysanfrancisco
.EXPIRE_TIME
: waktu habis masa berlaku kunci, dalam format ISO 8601. Contoh:2021-12-04T20:12:00+0000
Di Konsol Google Cloud, buka halaman VM instances.
Klik nama VM tempat Anda ingin menambahkan kunci SSH.
Klik Edit.
Di bagian SSH Keys, klik Add item.
Tambahkan kunci publik Anda ke dalam kotak teks. Kunci ini harus dalam salah satu format berikut:
- Format kunci tanpa waktu habis masa berlaku:
KEY_VALUE USERNAME
- Format kunci dengan waktu habis masa berlaku:
KEY_VALUE google-ssh {"userName":"USERNAME","expireOn":"EXPIRE_TIME"}
Ganti kode berikut:
KEY_VALUE
: nilai kunci SSH publikUSERNAME
: nama pengguna Anda. Contohcloudysanfrancisco
ataucloudysanfrancisco_gmail_com
.Untuk VM Linux,
USERNAME
tidak bolehroot
, kecuali jika Anda mengonfigurasi VM untuk mengizinkan login root. Untuk mengetahui informasi selengkapnya, lihat Terhubung ke VM Linux sebagai pengguna root.Untuk VM Windows yang menggunakan Active Directory (AD), nama pengguna harus diawali dengan domain AD, dalam format
DOMAIN\
. Misalnya, penggunacloudysanfrancisco
dalam ADad.example.com
memilikiUSERNAME
dariexample\cloudysanfrancisco
.EXPIRE_TIME
: waktu habis masa berlaku kunci, dalam format ISO 8601. Contoh:2021-12-04T20:12:00+0000
- Format kunci tanpa waktu habis masa berlaku:
Klik Save.
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Jika sudah ada kunci SSH dalam metadata instance, Anda harus menambahkannya kembali ke metadata instance setiap kali menambahkan kunci SSH baru menggunakan gcloud CLI. Jika Anda tidak menambahkan kembali kunci yang sudah ada, menambahkan kunci baru akan menghapus kunci yang ada.
Untuk menambahkan kunci SSH publik ke metadata instance menggunakan gcloud CLI, lakukan langkah berikut:
Jika VM Anda sudah memiliki kunci SSH publik tingkat instance, dapatkan kunci tersebut dari metadata dan tambahkan ke file baru:
Jalankan perintah
gcloud compute instances describe
untuk mendapatkan metadata untuk VM:gcloud compute instances describe VM_NAME
Ganti VM_NAME dengan nama VM tempat Anda ingin menambahkan atau menghapus kunci SSH publik.
Output-nya mirip dengan berikut ini:
... metadata: ...
- key: ssh-keys
value: |- cloudysanfrancisco:ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDAu5kKQCPF... baklavainthebalkans:ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDQDx3FNVC8... google-ssh {"userName":"baklavainthebalkans","expireOn":"2021-06-14T16:59:03+0000"} ...Salin nilai metadata
ssh-keys
.Buat dan buka file teks baru di workstation Anda.
Di dalam file tersebut, tempel daftar kunci yang baru saja Anda salin.
Tambahkan kunci baru Anda di akhir daftar, dalam salah satu format berikut:
- Format kunci tanpa waktu habis masa berlaku:
USERNAME:KEY_VALUE
- Format kunci dengan waktu habis masa berlaku:
USERNAME:KEY_VALUE google-ssh {"userName":"USERNAME","expireOn":"EXPIRE_TIME"}
Ganti kode berikut:
KEY_VALUE
: nilai kunci SSH publikUSERNAME
: nama pengguna Anda. Misalnya,cloudysanfrancisco
ataucloudysanfrancisco_gmail_com
.Untuk VM Linux,
USERNAME
tidak bolehroot
, kecuali jika Anda mengonfigurasi VM untuk mengizinkan login root. Untuk mengetahui informasi selengkapnya, lihat Terhubung ke instance sebagai pengguna root.Untuk VM Windows yang menggunakan Active Directory (AD), nama pengguna harus diawali dengan domain AD, dalam format
DOMAIN\
. Misalnya, penggunacloudysanfrancisco
dalam ADad.example.com
memilikiUSERNAME
dariexample\cloudysanfrancisco
.EXPIRE_TIME
: waktu habis masa berlaku kunci, dalam format ISO 8601. Contoh:2021-12-04T20:12:00+0000
- Simpan dan tutup file tersebut.
Jalankan perintah
gcloud compute instances add-metadata
untuk menetapkan nilaissh-keys
:gcloud compute instances add-metadata VM_NAME --metadata-from-file ssh-keys=KEY_FILE
Ganti kode berikut:
VM_NAME
: VM yang ingin Anda tambahi kunci SSHKEY_FILE
dengan salah satu dari berikut ini:- Jalur ke file yang Anda buat pada langkah sebelumnya, jika VM sudah memiliki kunci SSH
- Jalur ke file kunci SSH publik baru, jika VM tidak memiliki kunci SSH
Dapatkan nilai
fingerprint
danssh-keys
dari metadata menggunakan metodeinstances.get
.GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME
Ganti kode berikut:
PROJECT_ID
: project ID AndaZONE
: zona VM tempat Anda menambahkan kunci SSHVM_NAME
: VM tempat Anda menambahkan kunci SSH
Responsnya mirip dengan hal berikut ini:
... "fingerprint": "utgYE_XWtE8=", "items": [ { "key": "ssh-keys", "value": "cloudysanfrancisco:ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDAu5kKQCPF...\nbaklavainthebalkans:ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDQDx3FNVC8... google-ssh {"userName":"baklavainthebalkans","expireOn":"2021-06-14T16:59:03+0000"}" } ] ...
Tambahkan nilai
ssh-keys
baru menggunakan metodeinstances.setMetadata
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/setMetadata { "items": [ { "key": "ssh-keys", "value": "EXISTING_SSH_KEYS\nNEW_SSH_KEY" } ] "fingerprint": "FINGERPRINT" }
Ganti kode berikut:
PROJECT_ID
: ID project AndaEXISTING_SSH_KEYS
: nilai kuncissh-keys
dari respons permintaaninstances.get
FINGERPRINT
:fingerprint
dari respons permintaanprojects.get
NEW_SSH_KEY
: kunci SSH baru, dalam salah satu format berikut:- Format kunci tanpa waktu habis masa berlaku:
USERNAME:KEY_VALUE
- Format kunci dengan waktu habis masa berlaku:
USERNAME:KEY_VALUE google-ssh {"userName":"USERNAME","expireOn":"EXPIRE_TIME"}
Ganti kode berikut:
KEY_VALUE
: nilai kunci SSH publikUSERNAME
: nama pengguna Anda. Misalnya,cloudysanfrancisco
ataucloudysanfrancisco_gmail_com
.Untuk VM Linux,
USERNAME
tidak bolehroot
, kecuali jika Anda mengonfigurasi VM untuk mengizinkan login root. Untuk mengetahui informasi selengkapnya, lihat Terhubung ke instance sebagai pengguna root.Untuk VM Windows yang menggunakan Active Directory (AD), nama pengguna harus diawali dengan domain AD, dalam format
DOMAIN\
. Misalnya, penggunacloudysanfrancisco
dalam ADad.example.com
memilikiUSERNAME
dariexample\cloudysanfrancisco
.EXPIRE_TIME
: waktu habis masa berlaku kunci, dalam format ISO 8601. Contoh:2021-12-04T20:12:00+0000
- Format kunci tanpa waktu habis masa berlaku:
- Pelajari cara terhubung ke VM.
- Pelajari cara mengelola akses ke VM.
- Pelajari cara mentransfer file ke VM.
- Pelajari cara kerja koneksi SSH ke VM Linux di Compute Engine.
Terraform
Untuk menggunakan contoh Terraform di halaman ini dalam lingkungan pengembangan lokal, instal dan lakukan inisialisasi gcloud CLI, lalu siapkan Kredensial Default Aplikasi dengan kredensial pengguna Anda.
Untuk informasi selengkapnya, lihat Set up authentication for a local development environment.
REST
Untuk menggunakan contoh REST API di halaman ini dalam lingkungan pengembangan lokal, gunakan kredensial yang Anda berikan ke gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Untuk informasi selengkapnya, lihat Melakukan autentikasi untuk menggunakan REST dalam dokumentasi autentikasi Google Cloud.
Menambahkan kunci ke VM yang menggunakan Login OS
VM yang menggunakan Login OS menerima kunci SSH yang terkait dengan Akun Google Anda. Anda dapat mengaitkan kunci SSH publik dengan Akun Google Anda menggunakan gcloud CLI atau OS Login API. Jika Anda adalah administrator organisasi, Anda dapat menambahkan kunci SSH ke akun pengguna menggunakan Directory API.
Saat Anda menambahkan kunci SSH ke Akun Google, Compute Engine akan menghasilkan nama pengguna dengan menggabungkan nama pengguna dan domain dari email yang terkait dengan Akun Google Anda. Misalnya, jika alamat email Anda adalah
cloudysanfrancisco@gmail.com
, nama pengguna Anda adalahcloudysanfrancisco_gmail_com
. Jika Anda menambahkan kunci SSH ke project yang berada di luar organisasi, nama pengguna Anda akan diawali denganext_
, misalnya,ext_cloudysanfrancisco_gmail_com
. Administrator organisasi dapat menyesuaikan nama pengguna menggunakan Directory API. Jika nama pengguna Anda sudah dikonfigurasi, Compute Engine akan menggunakan nama pengguna tersebut saat Anda menambahkan kunci SSH.gcloud
Terraform
Untuk menambahkan kunci SSH publik ke akun Anda, gunakan resource
google_client_openid_userinfo
bersama dengan resourcegoogle_os_login_ssh_public_key
.REST
Untuk menambahkan kunci SSH publik ke akun Anda, gunakan metode
users.importSshPublicKey
OS Login API:POST https://oslogin.googleapis.com/v1/users/ACCOUNT_EMAIL:importSshPublicKey { "key": "SSH_KEY", "expirationTimeUsec": "EXPIRATION_TIMESTAMP" }
Ganti kode berikut:
Menambahkan kunci SSH ke VM yang menggunakan kunci SSH berbasis metadata
VM yang tidak menggunakan Login OS menyimpan kunci SSH di project Compute Engine dan metadata instance. Jika Login OS diaktifkan untuk VM, agen tamu VM akan mengabaikan kunci yang disimpan dalam metadata.
Anda dapat menggunakan kunci SSH yang disimpan dalam metadata project untuk mengakses semua VM dalam project. Anda dapat menggunakan kunci SSH yang disimpan dalam metadata instance untuk mengakses VM individual.
Compute Engine tidak otomatis menghapus kunci SSH yang sudah tidak berlaku dari metadata pada waktu habis masa berlakunya, tetapi kunci tersebut tidak dapat digunakan untuk membuat koneksi baru ke VM. Jika ingin menghapus kunci yang habis masa berlakunya dari metadata, baca artikel Menghapus kunci SSH dari VM yang menggunakan kunci berbasis metadata.
Anda dapat menambahkan kunci SSH publik ke metadata project atau instance VM menggunakan Konsol Google Cloud, gcloud CLI, atau REST.
Menambahkan kunci SSH ke metadata project
Anda dapat menambahkan kunci SSH publik ke metadata project untuk mengakses semua VM dalam project, kecuali VM yang memblokir kunci SSH di tingkat project. Untuk penjelasan selengkapnya tentang cara memblokir kunci SSH di tingkat project, baca Memblokir kunci SSH dari VM yang menggunakan kunci SSH berbasis metadata.
Konsol
Untuk menambahkan kunci SSH publik ke metadata project menggunakan Konsol Google Cloud, lakukan langkah berikut:
gcloud
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Terraform
Untuk menambahkan kunci SSH publik ke metadata project Anda, gunakan resource
google_compute_project_metadata
.REST
Jika sudah ada kunci SSH di metadata project, Anda harus menambahkannya kembali ke metadata project setiap kali menambahkan kunci SSH baru menggunakan Compute Engine API. Jika Anda tidak menambahkan kembali kunci yang sudah ada, menambahkan kunci baru akan menghapus kunci yang ada.
Untuk menambahkan kunci SSH publik ke metadata project menggunakan Compute Engine API, lakukan langkah berikut:
Menambahkan kunci SSH ke metadata instance
Anda dapat menambahkan kunci SSH publik ke metadata instance saat membuat VM atau setelah membuat VM.
Menambahkan kunci SSH ke metadata instance selama pembuatan VM
Anda dapat menambahkan kunci SSH ke metadata instance selama pembuatan VM, menggunakan Konsol Google Cloud, gcloud CLI, atau Compute Engine API.
Konsol
Untuk membuat VM dan menambahkan kunci SSH publik ke metadata instance secara bersamaan menggunakan Konsol Google Cloud, lakukan langkah berikut:
gcloud
Terraform
Untuk menambahkan kunci SSH publik ke metadata instance, gunakan resource
google_compute_instance
.REST
Untuk membuat VM dan menambahkan kunci SSH publik ke metadata instance secara bersamaan menggunakan Compute Engine, buat permintaan
POST
ke metodeinstances.insert
:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances
Ganti kode berikut:
Dalam isi permintaan, berikan nama pengguna dan kunci SSH publik di properti
items
:... { "items": [ { "key": "ssh-keys", "value": "PUBLIC_KEY" } ] } ...
Ganti
PUBLIC_KEY
dengan kunci publik Anda, dalam salah satu format berikut:Ganti kode berikut:
Anda dapat menambahkan beberapa kunci SSH dengan menambahkan
\n
di antara kunci.Menambahkan kunci SSH ke metadata instance setelah pembuatan VM
Anda dapat menambahkan kunci SSH ke metadata instance setelah pembuatan VM, menggunakan Konsol Google Cloud, gcloud CLI, atau Compute Engine API.
Konsol
Untuk menambahkan kunci SSH publik ke metadata instance menggunakan Konsol Google Cloud, lakukan langkah berikut:
gcloud
REST
Jika sudah ada kunci SSH dalam metadata instance, Anda harus menambahkannya kembali ke metadata instance setiap kali menambahkan kunci SSH baru menggunakan Compute Engine API. Jika Anda tidak menambahkan kembali kunci yang sudah ada, menambahkan kunci baru akan menghapus kunci yang ada.
Untuk menambahkan kunci SSH publik ke metadata instance menggunakan Compute Engine API, lakukan langkah berikut:
Apa langkah selanjutnya?
Kecuali dinyatakan lain, konten di halaman ini dilisensikan berdasarkan Lisensi Creative Commons Attribution 4.0, sedangkan contoh kode dilisensikan berdasarkan Lisensi Apache 2.0. Untuk mengetahui informasi selengkapnya, lihat Kebijakan Situs Google Developers. Java adalah merek dagang terdaftar dari Oracle dan/atau afiliasinya.
Terakhir diperbarui pada 2024-12-22 UTC.
-