Membuat server SFTP eksternal

Dokumen ini menunjukkan cara membuat server SFTP eksternal menggunakan Cloud FTP. Server SFTP eksternal dapat diakses melalui internet. Partner yang berada di luar jaringan Anda dapat menggunakan server untuk mentransfer file secara aman ke dan dari Cloud Storage.

Anda dapat membatasi akses ke server SFTP eksternal berdasarkan alamat IP pengguna Anda.

Untuk mengetahui langkah-langkah membuat server internal, yang hanya dapat diakses dalam jaringan Virtual Private Cloud (VPC) Anda, lihat Membuat server SFTP internal. Anda tidak dapat mengubah apakah server bersifat eksternal atau internal setelah server dibuat.

Sebelum memulai

gcloud

  1. 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.
  2. Instal Google Cloud CLI.

  3. Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.

  4. Untuk melakukan inisialisasi gcloud CLI, jalankan perintah berikut:

    gcloud init
  5. 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 izin resourcemanager.projects.create. Pelajari cara memberikan peran.
    • Buat Google Cloud project:

      gcloud projects create PROJECT_ID

      Ganti PROJECT_ID dengan nama untuk Google Cloud project yang Anda buat.

    • Pilih project Google Cloud yang Anda buat:

      gcloud config set project PROJECT_ID

      Ganti PROJECT_ID dengan nama project Google Cloud Anda.

  6. 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.

  7. Verifikasi bahwa penagihan diaktifkan untuk project Google Cloud Anda.

  8. 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
  9. Instal Google Cloud CLI.

  10. Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.

  11. Untuk melakukan inisialisasi gcloud CLI, jalankan perintah berikut:

    gcloud init
  12. 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 izin resourcemanager.projects.create. Pelajari cara memberikan peran.
    • Buat Google Cloud project:

      gcloud projects create PROJECT_ID

      Ganti PROJECT_ID dengan nama untuk Google Cloud project yang Anda buat.

    • Pilih project Google Cloud yang Anda buat:

      gcloud config set project PROJECT_ID

      Ganti PROJECT_ID dengan nama project Google Cloud Anda.

  13. 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.

  14. Verifikasi bahwa penagihan diaktifkan untuk project Google Cloud Anda.

  15. 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
  16. Jika Anda ingin membatasi akses ke server berdasarkan alamat IP pengguna, kumpulkan daftar blok CIDR yang diizinkan 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 eksternal

gcloud

Untuk membuat server eksternal, jalankan perintah gcloud alpha storage ftp servers create dan berikan flag --access-type=EXTERNAL.

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.

  • CIDR_BLOCK: blok CIDR yang diizinkan untuk mengakses server. Misalnya, 192.0.2.0/24. Anda harus memberikan setidaknya satu nilai, dan dapat memberikan maksimum 500 blok CIDR dalam daftar yang dipisahkan koma. Untuk mengizinkan koneksi dari semua alamat IP, gunakan 0.0.0.0/0.

Jalankan perintah berikut:

Linux, macOS, atau Cloud Shell

gcloud alpha storage ftp servers create SERVER_ID --access-type=EXTERNAL \
    --location=LOCATION_ID --allowed-cidr-blocks=CIDR_BLOCK

Windows (PowerShell)

gcloud alpha storage ftp servers create SERVER_ID --access-type=EXTERNAL `
    --location=LOCATION_ID --allowed-cidr-blocks=CIDR_BLOCK

Windows (cmd.exe)

gcloud alpha storage ftp servers create SERVER_ID --access-type=EXTERNAL ^
    --location=LOCATION_ID --allowed-cidr-blocks=CIDR_BLOCK

Perlu waktu sekitar 10 menit untuk membuat server.

REST

Untuk membuat server eksternal, gunakan metode servers.create dan berikan konfigurasi akses externalConfig.

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.
  • CIDR_BLOCK: blok CIDR yang diizinkan untuk mengakses server. Misalnya, 192.0.2.0/24. Anda harus memberikan minimal satu nilai, dan dapat memberikan maksimum 500 blok CIDR . Untuk mengizinkan koneksi dari semua alamat IP, gunakan 0.0.0.0/0.

Metode HTTP dan URL:

POST https://ftp.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/servers?serverId=SERVER_ID

Meminta isi JSON:

{
  "accessType": "EXTERNAL",
  "externalConfig": {
    "allowedCidrBlocks": [
      "CIDR_BLOCK"
      ]
  }
}

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Respons mengidentifikasi operasi yang berjalan lama.

Perlu waktu sekitar 10 menit untuk membuat server.

Langkah berikutnya