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 ke dan dari Cloud Storage dengan aman.

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

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

Sebelum memulai

Konsol

  1. Login keakun Anda. Google Cloud 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. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.

  4. Verify that billing is enabled for your Google Cloud project.

  5. Enable the Cloud FTP API.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.

    Enable the API

  6. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  7. If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.

  8. Verify that billing is enabled for your Google Cloud project.

  9. Enable the Cloud FTP API.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.

    Enable the API

  10. Jika Anda ingin membatasi akses ke server berdasarkan alamat IP pengguna, kumpulkan daftar blok CIDR yang diizinkan untuk mengakses server.

gcloud

  1. Login keakun Anda. Google Cloud 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 terlebih dahulu login ke gcloud CLI dengan identitas gabungan Anda.

  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

    • Memilih 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 Google Cloud project yang Anda buat:

      gcloud config set project PROJECT_ID

      Ganti PROJECT_ID dengan nama Google Cloud project 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. Pastikan penagihan diaktifkan untuk Google Cloud project 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 terlebih dahulu login ke gcloud CLI dengan identitas gabungan Anda.

  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

    • Memilih 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 Google Cloud project yang Anda buat:

      gcloud config set project PROJECT_ID

      Ganti PROJECT_ID dengan nama Google Cloud project 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. Pastikan penagihan diaktifkan untuk Google Cloud project 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 Admin Cloud 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.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

Konsol

  1. Di Google Cloud konsol, buka halaman Cloud FTP.

    Buka Cloud FTP

  2. Klik Create server.

  3. Di tab Server configuration, masukkan detail dasar untuk server:

    1. Di kolom Server ID, masukkan ID unik untuk server.

    2. Di daftar Region, pilih Google Cloud lokasi untuk server.

      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.

    3. (Opsional) Masukkan nama tampilan untuk server.

    4. Klik Lanjutkan.

  4. Di tab Networking and security, konfigurasi konektivitas untuk server:

    1. Pilih External (Public IP).

    2. Di kolom Allowed IP ranges, berikan blok CIDR yang diizinkan untuk mengakses server, lalu tekan Enter. Misalnya, 192.0.2.0/24. Anda harus memberikan minimal satu nilai, dan dapat memberikan maksimal 500 blok CIDR. Untuk mengizinkan koneksi dari semua alamat IP, gunakan 0.0.0.0/0.

  5. Klik Buat.

    Diperlukan waktu sekitar 10 menit untuk membuat server.

gcloud

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

Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:

  • SERVER_ID: ID unik untuk server. Harus dimulai 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 minimal satu nilai, dan dapat memberikan maksimal 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

Diperlukan 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 dimulai 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 maksimal 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.

Diperlukan waktu sekitar 10 menit untuk membuat server.

Langkah berikutnya