Creare un server SFTP esterno

Questo documento mostra come creare un server SFTP esterno utilizzando Cloud FTP. È possibile accedere a un server SFTP esterno tramite internet. I partner esterni alla tua rete possono utilizzare il server per trasferire in modo sicuro file da e verso Cloud Storage.

Puoi limitare l'accesso a un server SFTP esterno in base agli indirizzi IP dei tuoi utenti.

Per la procedura di creazione di un server interno, a cui è possibile accedere solo all'interno della rete Virtual Private Cloud (VPC), consulta Creare un server SFTP interno. Dopo aver creato un server, non puoi modificarne il tipo (esterno o interno).

Prima di iniziare

gcloud

  1. Accedi al tuo Google Cloud account. Se non hai mai utilizzato Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti senza costi per eseguire, testare e implementare i carichi di lavoro.
  2. Installa Google Cloud CLI.

  3. Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.

  4. Per inizializzare gcloud CLI, esegui questo comando:

    gcloud init
  5. Crea o seleziona un Google Cloud progetto.

    Ruoli richiesti per selezionare o creare un progetto

    • Seleziona un progetto: la selezione di un progetto non richiede un ruolo IAM specifico: puoi selezionare qualsiasi progetto su cui ti è stato concesso un ruolo.
    • Crea un progetto: per creare un progetto, devi disporre del ruolo Autore progetto (roles/resourcemanager.projectCreator), che contiene l' resourcemanager.projects.create autorizzazione. Scopri come concedere i ruoli.
    • Crea un Google Cloud progetto:

      gcloud projects create PROJECT_ID

      Sostituisci PROJECT_ID con un nome per il Google Cloud progetto che stai creando.

    • Seleziona il Google Cloud progetto che hai creato:

      gcloud config set project PROJECT_ID

      Sostituisci PROJECT_ID con il nome del Google Cloud progetto.

  6. Se utilizzi un progetto esistente per questa guida, verifica di disporre delle autorizzazioni necessarie per completare la guida. Se hai creato un nuovo progetto, disponi già delle autorizzazioni necessarie.

  7. Verifica che la fatturazione sia attivata per il tuo Google Cloud progetto.

  8. Abilita l'API Cloud FTP:

    Ruoli richiesti per abilitare le API

    Per abilitare le API, devi disporre dell'autorizzazione serviceusage.services.enable. Se hai creato il progetto, probabilmente disponi già di questa autorizzazione tramite il ruolo Proprietario (roles/owner). In caso contrario, puoi ottenere questa autorizzazione tramite il ruolo Amministratore utilizzo servizi (roles/serviceusage.serviceUsageAdmin). Scopri come concedere i ruoli.

    gcloud services enable ftp.googleapis.com
  9. Installa Google Cloud CLI.

  10. Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.

  11. Per inizializzare gcloud CLI, esegui questo comando:

    gcloud init
  12. Crea o seleziona un Google Cloud progetto.

    Ruoli richiesti per selezionare o creare un progetto

    • Seleziona un progetto: la selezione di un progetto non richiede un ruolo IAM specifico: puoi selezionare qualsiasi progetto su cui ti è stato concesso un ruolo.
    • Crea un progetto: per creare un progetto, devi disporre del ruolo Autore progetto (roles/resourcemanager.projectCreator), che contiene l' resourcemanager.projects.create autorizzazione. Scopri come concedere i ruoli.
    • Crea un Google Cloud progetto:

      gcloud projects create PROJECT_ID

      Sostituisci PROJECT_ID con un nome per il Google Cloud progetto che stai creando.

    • Seleziona il Google Cloud progetto che hai creato:

      gcloud config set project PROJECT_ID

      Sostituisci PROJECT_ID con il nome del Google Cloud progetto.

  13. Se utilizzi un progetto esistente per questa guida, verifica di disporre delle autorizzazioni necessarie per completare la guida. Se hai creato un nuovo progetto, disponi già delle autorizzazioni necessarie.

  14. Verifica che la fatturazione sia attivata per il tuo Google Cloud progetto.

  15. Abilita l'API Cloud FTP:

    Ruoli richiesti per abilitare le API

    Per abilitare le API, devi disporre dell'autorizzazione serviceusage.services.enable. Se hai creato il progetto, probabilmente disponi già di questa autorizzazione tramite il ruolo Proprietario (roles/owner). In caso contrario, puoi ottenere questa autorizzazione tramite il ruolo Amministratore utilizzo servizi (roles/serviceusage.serviceUsageAdmin). Scopri come concedere i ruoli.

    gcloud services enable ftp.googleapis.com
  16. Se vuoi limitare l'accesso al server in base agli indirizzi IP dei tuoi utenti, raccogli un elenco di blocchi CIDR autorizzati ad accedere al server.

Ruoli obbligatori

Per ottenere l'autorizzazione necessaria per creare un server SFTP, chiedi all'amministratore di concederti il ruolo IAM Amministratore Cloud FTP (roles/ftp.admin) nel progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.

Questo ruolo predefinito contiene l' ftp.servers.create autorizzazione, necessaria per creare un server SFTP.

Potresti anche ottenere questa autorizzazione con ruoli personalizzati o altri ruoli predefiniti.

Creare un server esterno

gcloud

Per creare un server esterno, esegui il gcloud alpha storage ftp servers create comando e fornisci il --access-type=EXTERNAL flag.

Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:

  • SERVER_ID: un ID univoco per il server. Deve iniziare con una lettera minuscola e terminare con una lettera minuscola o un numero. Può contenere lettere minuscole, numeri e trattini. La lunghezza massima è di 30 caratteri.
  • LOCATION_ID: la Google Cloud località del server, ad esempio us-west1.

    Per velocità di trasferimento dei dati più elevate, crea il server nella stessa località del bucket Cloud Storage che archivia i dati. Se la località del bucket non è supportata da Cloud FTP, seleziona la località disponibile più vicina.

  • CIDR_BLOCK: un blocco CIDR autorizzato ad accedere al server. Ad esempio, 192.0.2.0/24. Devi fornire almeno un valore e puoi fornire un massimo di 500 blocchi CIDR in un elenco separato da virgole. Per consentire le connessioni da tutti gli indirizzi IP, utilizza 0.0.0.0/0.

Esegui il comando seguente:

Linux, macOS o 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

La creazione del server richiede circa 10 minuti.

REST

Per creare un server esterno, utilizza il servers.create metodo e fornisci una configurazione di accesso externalConfig.

Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:

  • PROJECT_ID: l' Google Cloud ID progetto del server.
  • LOCATION_ID: la Google Cloud località del server, ad esempio us-west1.

    Per velocità di trasferimento dei dati più elevate, crea il server nella stessa località del bucket Cloud Storage che archivia i dati. Se la località del bucket non è supportata da Cloud FTP, seleziona la località disponibile più vicina.

  • SERVER_ID: un ID univoco per il server. Deve iniziare con una lettera minuscola e terminare con una lettera minuscola o un numero. Può contenere lettere minuscole, numeri e trattini. La lunghezza massima è di 30 caratteri.
  • CIDR_BLOCK: un blocco CIDR autorizzato ad accedere al server. Ad esempio, 192.0.2.0/24. Devi fornire almeno un valore e puoi fornire un massimo di 500 blocchi CIDR . Per consentire le connessioni da tutti gli indirizzi IP, utilizza 0.0.0.0/0.

Metodo HTTP e URL:

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

Corpo JSON della richiesta:

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

Per inviare la richiesta, espandi una di queste opzioni:

La risposta identifica un' operazione a lunga esecuzione.

La creazione del server richiede circa 10 minuti.

Passaggi successivi