Dokumen ini menunjukkan cara memperbarui kunci Secure Shell (SSH) yang dapat digunakan pengguna Cloud FTP untuk terhubung ke server SFTP.
Sebelum memulai
Dapatkan kunci publik pengguna dari setiap pasangan kunci SSH yang akan mereka gunakan untuk terhubung ke server. Pengguna dapat memiliki maksimal 10 kunci publik.
Jika pengguna tidak memiliki pasangan kunci SSH, gunakan langkah-langkah berikut untuk membuatnya.
Membuat pasangan kunci SSH
Format kunci mana yang Anda butuhkan?
Format kunci yang Anda butuhkan bergantung pada klien yang Anda gunakan untuk terhubung ke server SFTP. Untuk mengetahui informasi selengkapnya, lihat Klien SFTP yang didukung.
Format PEM
-
Untuk membuat pasangan kunci OpenSSH (format PEM), gunakan utilitas
ssh-keygen.Di mesin klien yang akan terhubung ke server SFTP, jalankan perintah berikut:
ssh-keygen -t rsa -b 4096 -f ~/.ssh/KEY_PAIR_NAME
Ganti
KEY_PAIR_NAMEdengan nama untuk pasangan kunci, sepertisftp_user_key. -
Ekstrak kunci publik:
cat ~/.ssh/KEY_PAIR_NAME.pub
Format PPK
-
Untuk membuat pasangan kunci PuTTY (format PPK), gunakan
PuTTYgenalat.Di mesin klien yang akan terhubung ke server SFTP, jalankan perintah berikut:
puttygen -t rsa -b 4096 -o KEY_PAIR_NAME.ppk
Ganti
KEY_PAIR_NAMEdengan nama untuk pasangan kunci, sepertisftp_user_key. -
Ekstrak kunci publik:
puttygen -L KEY_PAIR_NAME.ppk
-
Peran yang diperlukan
Untuk mendapatkan izin yang diperlukan guna memperbarui pengguna SFTP, minta administrator untuk memberi Anda peran IAM Admin FTP (roles/ftp.admin) di project Anda.
Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.
Peran bawaan ini berisi izin
ftp.users.update
,
yang diperlukan untuk
memperbarui pengguna SFTP.
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.
Memperbarui kunci SSH pengguna SFTP
gcloud
Untuk memperbarui kunci SSH pengguna SFTP, jalankan
gcloud alpha storage ftp users update perintah.
Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:
- CREDENTIAL_NAME: nama unik untuk mengidentifikasi kredensial pengguna.
- SSH_PUBLIC_KEY: isi kunci publik SSH pengguna, dalam format OpenSSH. Misalnya,
ssh-rsa AAAAB3NzaC1ycRexample.... - USERNAME: nama pengguna SFTP.
- LOCATION_ID: lokasi server, seperti
us-west1. - SERVER_ID: ID server.
Untuk mengonfigurasi beberapa kunci publik bagi pengguna, berikan beberapa kredensial dalam file
credentials.json.
Simpan konten berikut ini dalam file yang bernama credentials.json:
[ { "credentialName": "CREDENTIAL_NAME", "credentialType": "PUBLIC_KEY", "sshPublicKeyBody": "SSH_PUBLIC_KEY" } ]
Jalankan perintah berikut:
Linux, macOS, atau Cloud Shell
gcloud alpha storage ftp users update USERNAME --location=LOCATION_ID \ --server=SERVER_ID --user-credentials-from-file=credentials.json
Windows (PowerShell)
gcloud alpha storage ftp users update USERNAME --location=LOCATION_ID ` --server=SERVER_ID --user-credentials-from-file=credentials.json
Windows (cmd.exe)
gcloud alpha storage ftp users update USERNAME --location=LOCATION_ID ^ --server=SERVER_ID --user-credentials-from-file=credentials.json
REST
Untuk memperbarui kunci SSH pengguna SFTP, gunakan
servers.users.patch metode.
Di parameter kueri updateMask, berikan kolom userCredentials.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: Google Cloud Project ID server.
- LOCATION_ID: lokasi server, seperti
us-west1. - SERVER_ID: ID server.
- USERNAME: nama pengguna SFTP.
- CREDENTIAL_NAME: nama unik untuk mengidentifikasi kredensial pengguna.
- SSH_PUBLIC_KEY: isi kunci publik SSH pengguna, dalam format OpenSSH. Misalnya,
ssh-rsa AAAAB3NzaC1ycRexample....
Untuk mengonfigurasi beberapa kunci publik bagi pengguna, berikan beberapa kredensial dalam daftar
userCredentials.
Metode HTTP dan URL:
PATCH https://ftp.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/servers/SERVER_ID/users/USERNAME?updateMask=userCredentials
Meminta isi JSON:
{
"userCredentials": [
{
"credentialName": "CREDENTIAL_NAME",
"credentialType": "PUBLIC_KEY",
"sshPublicKeyBody": "SSH_PUBLIC_KEY"
}
]
}
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Respons mengidentifikasi operasi yang berjalan lama. Perlu waktu beberapa detik agar pengguna diperbarui.Library klien
C#
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Cloud FTP, lihat Library klien Cloud FTP. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi API Cloud FTPC#.
Untuk melakukan autentikasi ke Cloud FTP, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Go
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Cloud FTP, lihat Library klien Cloud FTP. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi API GoCloud FTP.
Untuk melakukan autentikasi ke Cloud FTP, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Java
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Cloud FTP, lihat Library klien Cloud FTP. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi API JavaCloud FTP.
Untuk melakukan autentikasi ke Cloud FTP, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Node.js
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Cloud FTP, lihat Library klien Cloud FTP. Untuk mengetahui informasi selengkapnya, lihat Cloud FTP Node.js API dokumentasi referensi.
Untuk melakukan autentikasi ke Cloud FTP, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
PHP
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Cloud FTP, lihat Library klien Cloud FTP. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi API PHPCloud FTP.
Untuk melakukan autentikasi ke Cloud FTP, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Python
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Cloud FTP, lihat Library klien Cloud FTP. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi API PythonCloud FTP.
Untuk melakukan autentikasi ke Cloud FTP, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Ruby
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Cloud FTP, lihat Library klien Cloud FTP. Untuk mengetahui informasi selengkapnya, lihat Cloud FTP Ruby API dokumentasi referensi.
Untuk melakukan autentikasi ke Cloud FTP, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.