Membuat server SFTP internal

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

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

Langkah berikutnya