Dokumen ini menunjukkan cara membuat server SFTP internal menggunakan Cloud FTP. Server SFTP internal hanya dapat diakses dalam jaringan Virtual Private Cloud (VPC) Anda menggunakan Private Service Connect. Karyawan dan pemangku kepentingan internal yang berada dalam jaringan Anda dapat menggunakan server untuk mentransfer file secara aman ke dan dari Cloud Storage.
Anda menentukan project yang diizinkan untuk terhubung ke server. Anda dapat secara opsional menentukan project yang ditolak untuk terhubung.
Untuk mengetahui informasi latar belakang tentang VPC, lihat Ringkasan VPC.
Untuk mengetahui langkah-langkah membuat server eksternal, yang dapat diakses melalui internet, lihat Membuat server SFTP eksternal. Anda tidak dapat mengubah apakah server bersifat eksternal atau internal setelah server dibuat.
Sebelum memulai
gcloud
- Login ke akun Google Cloud Anda. Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa produk kami dalam skenario dunia nyata. Pelanggan baru juga mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
-
Instal Google Cloud CLI.
-
Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
-
Untuk melakukan inisialisasi gcloud CLI, jalankan perintah berikut:
gcloud init -
Buat atau pilih Google Cloud project.
Peran yang diperlukan untuk memilih atau membuat project
- Pilih project: Memilih project tidak memerlukan peran IAM tertentu—Anda dapat memilih project mana pun yang telah diberi peran.
-
Membuat project: Untuk membuat project, Anda memerlukan peran Project Creator
(
roles/resourcemanager.projectCreator), yang berisi izinresourcemanager.projects.create. Pelajari cara memberikan peran.
-
Buat Google Cloud project:
gcloud projects create PROJECT_ID
Ganti
PROJECT_IDdengan nama untuk Google Cloud project yang Anda buat. -
Pilih project Google Cloud yang Anda buat:
gcloud config set project PROJECT_ID
Ganti
PROJECT_IDdengan nama project Google Cloud Anda.
-
Jika Anda menggunakan project yang sudah ada untuk panduan ini, pastikan Anda memiliki izin yang diperlukan untuk menyelesaikan panduan ini. Jika berhasil membuat project baru, berarti Anda sudah memiliki izin yang diperlukan.
-
Verifikasi bahwa penagihan diaktifkan untuk project Google Cloud Anda.
Aktifkan Cloud FTP API:
Peran yang diperlukan untuk mengaktifkan API
Untuk mengaktifkan API, Anda memerlukan izin
serviceusage.services.enable. Jika Anda membuat project, kemungkinan Anda sudah memiliki izin ini melalui peran Pemilik (roles/owner). Jika tidak, Anda bisa mendapatkan izin ini melalui peran Admin Penggunaan Layanan (roles/serviceusage.serviceUsageAdmin). Pelajari cara memberikan peran.gcloud services enable ftp.googleapis.com
-
Instal Google Cloud CLI.
-
Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
-
Untuk melakukan inisialisasi gcloud CLI, jalankan perintah berikut:
gcloud init -
Buat atau pilih Google Cloud project.
Peran yang diperlukan untuk memilih atau membuat project
- Pilih project: Memilih project tidak memerlukan peran IAM tertentu—Anda dapat memilih project mana pun yang telah diberi peran.
-
Membuat project: Untuk membuat project, Anda memerlukan peran Project Creator
(
roles/resourcemanager.projectCreator), yang berisi izinresourcemanager.projects.create. Pelajari cara memberikan peran.
-
Buat Google Cloud project:
gcloud projects create PROJECT_ID
Ganti
PROJECT_IDdengan nama untuk Google Cloud project yang Anda buat. -
Pilih project Google Cloud yang Anda buat:
gcloud config set project PROJECT_ID
Ganti
PROJECT_IDdengan nama project Google Cloud Anda.
-
Jika Anda menggunakan project yang sudah ada untuk panduan ini, pastikan Anda memiliki izin yang diperlukan untuk menyelesaikan panduan ini. Jika berhasil membuat project baru, berarti Anda sudah memiliki izin yang diperlukan.
-
Verifikasi bahwa penagihan diaktifkan untuk project Google Cloud Anda.
Aktifkan Cloud FTP API:
Peran yang diperlukan untuk mengaktifkan API
Untuk mengaktifkan API, Anda memerlukan izin
serviceusage.services.enable. Jika Anda membuat project, kemungkinan Anda sudah memiliki izin ini melalui peran Pemilik (roles/owner). Jika tidak, Anda bisa mendapatkan izin ini melalui peran Admin Penggunaan Layanan (roles/serviceusage.serviceUsageAdmin). Pelajari cara memberikan peran.gcloud services enable ftp.googleapis.com
-
Kumpulkan informasi berikut tentang pengguna server Anda:
- Daftar project ID atau nomor project yang diizinkan untuk mengakses server.
- (Opsional) Daftar project ID atau nomor project yang ditolak untuk mengakses server.
Peran yang diperlukan
Untuk mendapatkan izin yang
diperlukan guna membuat server SFTP,
minta administrator untuk memberi Anda peran IAM
Cloud FTP Admin (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.servers.create
yang diperlukan untuk
membuat server SFTP.
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.
Membuat server internal
gcloud
Untuk membuat server internal, jalankan
perintah gcloud alpha storage ftp servers create
dan berikan tanda --access-type=INTERNAL.
Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:
- SERVER_ID: ID unik untuk server. Harus diawali dengan huruf kecil, dan diakhiri dengan huruf kecil atau angka. Dapat berisi huruf kecil, angka, dan tanda hubung. Panjang maksimum adalah 30 karakter.
-
LOCATION_ID: Google Cloud lokasi server, seperti
us-west1.Untuk kecepatan transfer data tercepat, buat server di lokasi yang sama dengan bucket Cloud Storage yang menyimpan data Anda. Jika lokasi bucket tidak didukung oleh Cloud FTP, pilih lokasi terdekat yang tersedia.
-
PROJECT_TO_ALLOW: project ID atau nomor project konsumen yang diizinkan untuk terhubung ke server menggunakan Private Service Connect. Misalnya,
example-allowed-project. Anda harus menentukan setidaknya satu project.Anda dapat mengizinkan maksimum 500 project. Berikan beberapa project dan batas koneksinya masing-masing dalam daftar yang dipisahkan koma. Misalnya,
--consumer-accept-list=projectA=20,projectB=15. - CONNECTION_LIMIT: jumlah maksimum endpoint Private Service Connect yang dapat dibuat di project konsumen. Nilai harus dari 1 hingga 250 endpoint.
-
(Opsional) PROJECT_TO_REJECT: project ID atau nomor project konsumen yang dilarang terhubung ke server. Contoh,
example-rejected-project. Project dalam daftar ini ditolak untuk mengakses server meskipun project tersebut disertakan dalam daftar project yang diizinkan.Anda dapat menolak maksimum 64 project. Berikan beberapa project dalam daftar yang dipisahkan koma.
Jika Anda tidak ingin menolak project secara eksplisit, hapus tanda--consumer-reject-list.
Jalankan perintah berikut:
Linux, macOS, atau Cloud Shell
gcloud alpha storage ftp servers create SERVER_ID --access-type=INTERNAL \ --location=LOCATION_ID \ --consumer-accept-list=PROJECT_TO_ALLOW=CONNECTION_LIMIT \ --consumer-reject-list=PROJECT_TO_REJECT
Windows (PowerShell)
gcloud alpha storage ftp servers create SERVER_ID --access-type=INTERNAL ` --location=LOCATION_ID ` --consumer-accept-list=PROJECT_TO_ALLOW=CONNECTION_LIMIT ` --consumer-reject-list=PROJECT_TO_REJECT
Windows (cmd.exe)
gcloud alpha storage ftp servers create SERVER_ID --access-type=INTERNAL ^ --location=LOCATION_ID ^ --consumer-accept-list=PROJECT_TO_ALLOW=CONNECTION_LIMIT ^ --consumer-reject-list=PROJECT_TO_REJECT
Perlu waktu sekitar 10 menit untuk membuat server.
REST
Untuk membuat server internal, gunakan
metode servers.create
dan berikan konfigurasi akses internalConfig.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: Google Cloud project ID server.
-
LOCATION_ID: Google Cloud lokasi server, seperti
us-west1.Untuk kecepatan transfer data tercepat, buat server di lokasi yang sama dengan bucket Cloud Storage yang menyimpan data Anda. Jika lokasi bucket tidak didukung oleh Cloud FTP, pilih lokasi terdekat yang tersedia.
- SERVER_ID: ID unik untuk server. Harus diawali dengan huruf kecil, dan diakhiri dengan huruf kecil atau angka. Dapat berisi huruf kecil, angka, dan tanda hubung. Panjang maksimum adalah 30 karakter.
-
PROJECT_TO_ALLOW: project ID atau nomor project konsumen yang diizinkan untuk terhubung ke server menggunakan Private Service Connect. Misalnya,
example-allowed-project. Anda harus menentukan setidaknya satu project.Anda dapat mengizinkan maksimum 500 project.
- CONNECTION_LIMIT: jumlah maksimum endpoint Private Service Connect yang dapat dibuat di project konsumen. Nilai harus dari 1 hingga 250 endpoint.
-
(Opsional) PROJECT_TO_REJECT: project ID atau nomor project konsumen yang dilarang terhubung ke server. Contoh,
example-rejected-project. Project dalam daftar ini ditolak untuk mengakses server meskipun project tersebut disertakan dalam daftar project yang diizinkan.Anda dapat menolak maksimum 64 project.
Jika Anda tidak ingin menolak project secara eksplisit, hapus objek
consumerRejectList.
Metode HTTP dan URL:
POST https://ftp.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/servers?serverId=SERVER_ID
Meminta isi JSON:
{
"accessType": "INTERNAL",
"internalConfig": {
"consumerAcceptList": [
{
"project": "projects/PROJECT_TO_ALLOW",
"connectionLimit": CONNECTION_LIMIT
}
],
"consumerRejectList": [
{
"project": "projects/PROJECT_TO_REJECT"
}
]
}
}
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Respons mengidentifikasi operasi yang berjalan lama.Perlu waktu sekitar 10 menit untuk membuat server.