Internen SFTP-Server erstellen

In diesem Dokument wird beschrieben, wie Sie mit Cloud FTP einen internen SFTP-Server erstellen. Auf einen internen SFTP-Server kann nur innerhalb Ihres VPC-Netzwerks (Virtual Private Cloud) über Private Service Connect zugegriffen werden. Mitarbeiter und interne Stakeholder in Ihrem Netzwerk können den Server verwenden, um Dateien sicher in Cloud Storage zu übertragen und aus Cloud Storage herunterzuladen.

Sie geben die Projekte an, die sich mit dem Server verbinden dürfen. Optional können Sie Projekte angeben, die keine Verbindung herstellen dürfen.

Weitere Hintergrundinformationen zur VPC finden Sie unter VPC-Übersicht.

Eine Anleitung zum Erstellen eines externen Servers, auf den über das Internet zugegriffen werden kann, finden Sie unter Externen SFTP-Server erstellen. Nachdem ein Server erstellt wurde, können Sie nicht mehr ändern, ob er extern oder intern ist.

Hinweis

Console

  1. Melden Sie sich in Ihrem Google Cloud -Konto an. Wenn Sie mit Google Cloudnoch nicht vertraut sind, erstellen Sie ein Konto, um die Leistungsfähigkeit unserer Produkte in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
  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. Erfassen Sie die folgenden Informationen zu den Nutzern Ihres Servers:

    • Eine Liste der Projekt-IDs oder Projektnummern, die auf den Server zugreifen dürfen.
    • (Optional) Eine Liste von Projekt-IDs oder Projektnummern, deren Zugriff auf den Server abgelehnt wird.

gcloud

  1. Melden Sie sich in Ihrem Google Cloud -Konto an. Wenn Sie mit Google Cloudnoch nicht vertraut sind, erstellen Sie ein Konto, um die Leistungsfähigkeit unserer Produkte in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
  2. Installieren Sie die Google Cloud CLI.

  3. Wenn Sie einen externen Identitätsanbieter (IdP) verwenden, müssen Sie sich zuerst mit Ihrer föderierten Identität in der gcloud CLI anmelden.

  4. Führen Sie den folgenden Befehl aus, um die gcloud CLI zu initialisieren:

    gcloud init
  5. Erstellen Sie ein Google Cloud Projekt oder wählen Sie eines aus.

    Rollen, die zum Auswählen oder Erstellen eines Projekts erforderlich sind

    • Projekt auswählen: Für die Auswahl eines Projekts ist keine bestimmte IAM-Rolle erforderlich. Sie können jedes Projekt auswählen, für das Ihnen eine Rolle zugewiesen wurde.
    • Projekt erstellen: Zum Erstellen eines Projekts benötigen Sie die Rolle „Projektersteller“ (roles/resourcemanager.projectCreator), die die Berechtigung resourcemanager.projects.create enthält. Weitere Informationen zum Zuweisen von Rollen
    • So erstellen Sie ein Google Cloud Projekt:

      gcloud projects create PROJECT_ID

      Ersetzen Sie PROJECT_ID durch einen Namen für das Google Cloud Projekt, das Sie erstellen.

    • Wählen Sie das von Ihnen erstellte Google Cloud Projekt aus:

      gcloud config set project PROJECT_ID

      Ersetzen Sie PROJECT_ID durch den Namen Ihres Projekts in Google Cloud .

  6. Wenn Sie für diese Anleitung ein vorhandenes Projekt verwenden, prüfen Sie, ob Sie die erforderlichen Berechtigungen haben. Wenn Sie ein neues Projekt erstellt haben, haben Sie bereits die erforderlichen Berechtigungen.

  7. Prüfen Sie, ob die Abrechnung für Ihr Google Cloud Projekt aktiviert ist.

  8. Aktivieren Sie die Cloud FTP API:

    Rollen, die zum Aktivieren von APIs erforderlich sind

    Zum Aktivieren von APIs benötigen Sie die Berechtigung serviceusage.services.enable. Wenn Sie das Projekt erstellt haben, haben Sie diese Berechtigung wahrscheinlich bereits über die Rolle „Inhaber“ (roles/owner). Andernfalls können Sie diese Berechtigung über die Rolle „Service Usage-Administrator“ (roles/serviceusage.serviceUsageAdmin) erhalten. Informationen zum Zuweisen von Rollen

    gcloud services enable ftp.googleapis.com
  9. Installieren Sie die Google Cloud CLI.

  10. Wenn Sie einen externen Identitätsanbieter (IdP) verwenden, müssen Sie sich zuerst mit Ihrer föderierten Identität in der gcloud CLI anmelden.

  11. Führen Sie den folgenden Befehl aus, um die gcloud CLI zu initialisieren:

    gcloud init
  12. Erstellen Sie ein Google Cloud Projekt oder wählen Sie eines aus.

    Rollen, die zum Auswählen oder Erstellen eines Projekts erforderlich sind

    • Projekt auswählen: Für die Auswahl eines Projekts ist keine bestimmte IAM-Rolle erforderlich. Sie können jedes Projekt auswählen, für das Ihnen eine Rolle zugewiesen wurde.
    • Projekt erstellen: Zum Erstellen eines Projekts benötigen Sie die Rolle „Projektersteller“ (roles/resourcemanager.projectCreator), die die Berechtigung resourcemanager.projects.create enthält. Weitere Informationen zum Zuweisen von Rollen
    • So erstellen Sie ein Google Cloud Projekt:

      gcloud projects create PROJECT_ID

      Ersetzen Sie PROJECT_ID durch einen Namen für das Google Cloud Projekt, das Sie erstellen.

    • Wählen Sie das von Ihnen erstellte Google Cloud Projekt aus:

      gcloud config set project PROJECT_ID

      Ersetzen Sie PROJECT_ID durch den Namen Ihres Projekts in Google Cloud .

  13. Wenn Sie für diese Anleitung ein vorhandenes Projekt verwenden, prüfen Sie, ob Sie die erforderlichen Berechtigungen haben. Wenn Sie ein neues Projekt erstellt haben, haben Sie bereits die erforderlichen Berechtigungen.

  14. Prüfen Sie, ob die Abrechnung für Ihr Google Cloud Projekt aktiviert ist.

  15. Aktivieren Sie die Cloud FTP API:

    Rollen, die zum Aktivieren von APIs erforderlich sind

    Zum Aktivieren von APIs benötigen Sie die Berechtigung serviceusage.services.enable. Wenn Sie das Projekt erstellt haben, haben Sie diese Berechtigung wahrscheinlich bereits über die Rolle „Inhaber“ (roles/owner). Andernfalls können Sie diese Berechtigung über die Rolle „Service Usage-Administrator“ (roles/serviceusage.serviceUsageAdmin) erhalten. Informationen zum Zuweisen von Rollen

    gcloud services enable ftp.googleapis.com
  16. Erfassen Sie die folgenden Informationen zu den Nutzern Ihres Servers:

    • Eine Liste der Projekt-IDs oder Projektnummern, die auf den Server zugreifen dürfen.
    • (Optional) Eine Liste von Projekt-IDs oder Projektnummern, deren Zugriff auf den Server abgelehnt wird.

Erforderliche Rollen

Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Cloud FTP Admin (roles/ftp.admin) für Ihr Projekt zuzuweisen, um die Berechtigung zu erhalten, die Sie zum Erstellen eines SFTP-Servers benötigen. Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

Diese vordefinierte Rolle enthält die Berechtigung ftp.servers.create, die zum Erstellen eines SFTP-Servers erforderlich ist.

Sie können diese Berechtigung auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.

Internen Server erstellen

Console

  1. Rufen Sie in der Google Cloud Console die Seite Cloud FTP auf.

    Zu Cloud FTP

  2. Klicken Sie auf Server erstellen.

  3. Geben Sie auf dem Tab Serverkonfiguration grundlegende Details für den Server ein:

    1. Geben Sie im Feld Server-ID eine eindeutige ID für den Server ein.

    2. Wählen Sie in der Liste Region den Google Cloud -Standort für den Server aus.

      Um die schnellsten Datenübertragungsgeschwindigkeiten zu erzielen, erstellen Sie den Server am selben Standort wie den Cloud Storage-Bucket, in dem Ihre Daten gespeichert sind. Wenn der Standort des Buckets nicht von Cloud FTP unterstützt wird, wählen Sie den nächstgelegenen verfügbaren Standort aus.

    3. Optional: Geben Sie einen Anzeigenamen für den Server ein.

    4. Klicken Sie auf Weiter.

  4. Konfigurieren Sie auf dem Tab Netzwerk und Sicherheit die Verbindung für den Server:

    1. Wählen Sie Intern (nur VPC) aus.

    2. Geben Sie im Abschnitt Akzeptierte Projekte die Nutzerprojekte an, die über Private Service Connect eine Verbindung zum Server herstellen dürfen. Gehen Sie dazu so vor:

      1. Geben Sie im Feld Projekt die Projekt-ID oder ‑nummer eines Projekts ein, das eine Verbindung herstellen darf. Beispiel: example-allowed-project

      2. Geben Sie im Feld Verbindungslimit die maximale Anzahl von Private Service Connect-Endpunkten ein, die im Nutzerprojekt erstellt werden können. Der Wert muss zwischen 1 und 250 Endpunkten liegen.

      3. Wenn Sie weitere Projekte hinzufügen möchten, klicken Sie auf Akzeptiertes Projekt hinzufügen und wiederholen Sie die vorherigen Schritte.

    3. Optional: Wenn Sie verhindern möchten, dass Projekte eine Verbindung zum Server herstellen, klicken Sie im Bereich Abgelehnte Projekte auf Abgelehnte Projekte hinzufügen. Geben Sie die Projekt-ID oder ‑nummer eines Nutzerprojekts ein, das keine Verbindung zum Server herstellen darf.

      Projekte in dieser Liste werden für den Zugriff auf den Server abgelehnt, auch wenn sie in der Liste der zulässigen Projekte enthalten sind.

  5. Klicken Sie auf Erstellen.

    Die Erstellung des Servers dauert etwa 10 Minuten.

gcloud

Führen Sie den gcloud alpha storage ftp servers create-Befehl aus und geben Sie das Flag --access-type=INTERNAL an, um einen internen Server zu erstellen.

Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:

  • SERVER_ID: eine eindeutige ID für den Server. Muss mit einem Kleinbuchstaben beginnen und mit einem Kleinbuchstaben oder einer Ziffer enden. Kann Kleinbuchstaben, Ziffern und Bindestriche enthalten. Die maximale Länge beträgt 30 Zeichen.
  • LOCATION_ID: der Google Cloud Standort des Servers, z. B. us-west1.

    Um die schnellsten Datenübertragungsgeschwindigkeiten zu erzielen, sollten Sie den Server am selben Standort wie den Cloud Storage-Bucket erstellen, in dem Ihre Daten gespeichert sind. Wenn der Standort des Buckets nicht von Cloud FTP unterstützt wird, wählen Sie den nächstgelegenen verfügbaren Standort aus.

  • PROJECT_TO_ALLOW: die Projekt-ID oder -Nummer eines Nutzerprojekts, das über Private Service Connect eine Verbindung zum Server herstellen darf. Beispiel: example-allowed-project. Sie müssen mindestens ein Projekt angeben.

    Sie können maximal 500 Projekte zulassen. Geben Sie mehrere Projekte und die jeweiligen Verbindungslimits in einer durch Kommas getrennten Liste an. z. B. --consumer-accept-list=projectA=20,projectB=15

  • CONNECTION_LIMIT: die maximale Anzahl von Private Service Connect-Endpunkten, die im Nutzerprojekt erstellt werden können. Der Wert muss zwischen 1 und 250 Endpunkten liegen.
  • (Optional) PROJECT_TO_REJECT: die Projekt-ID oder ‑nummer eines Nutzerprojekts, das keine Verbindung zum Server herstellen darf. Beispiel: example-rejected-project. Projekte in dieser Liste werden für den Zugriff auf den Server abgelehnt, auch wenn sie in der Liste der zulässigen Projekte enthalten sind.

    Sie können maximal 64 Projekte ablehnen. Geben Sie mehrere Projekte in einer durch Kommas getrennten Liste an.

    Wenn Sie keine Projekte explizit ablehnen möchten, lassen Sie das Flag --consumer-reject-list weg.

Führen Sie folgenden Befehl aus:

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

Die Erstellung des Servers dauert etwa 10 Minuten.

REST

Verwenden Sie zum Erstellen eines internen Servers die Methode servers.create und geben Sie eine internalConfig-Zugriffskonfiguration an.

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

  • PROJECT_ID: die Google Cloud Projekt-ID des Servers.
  • LOCATION_ID: der Google Cloud Standort des Servers, z. B. us-west1.

    Um die schnellsten Datenübertragungsgeschwindigkeiten zu erzielen, sollten Sie den Server am selben Standort wie den Cloud Storage-Bucket erstellen, in dem Ihre Daten gespeichert sind. Wenn der Standort des Buckets nicht von Cloud FTP unterstützt wird, wählen Sie den nächstgelegenen verfügbaren Standort aus.

  • SERVER_ID: eine eindeutige ID für den Server. Muss mit einem Kleinbuchstaben beginnen und mit einem Kleinbuchstaben oder einer Ziffer enden. Kann Kleinbuchstaben, Ziffern und Bindestriche enthalten. Die maximale Länge beträgt 30 Zeichen.
  • PROJECT_TO_ALLOW: die Projekt-ID oder -Nummer eines Nutzerprojekts, das über Private Service Connect eine Verbindung zum Server herstellen darf. Beispiel: example-allowed-project. Sie müssen mindestens ein Projekt angeben.

    Sie können maximal 500 Projekte zulassen.

  • CONNECTION_LIMIT: die maximale Anzahl von Private Service Connect-Endpunkten, die im Nutzerprojekt erstellt werden können. Der Wert muss zwischen 1 und 250 Endpunkten liegen.
  • (Optional) PROJECT_TO_REJECT: die Projekt-ID oder ‑nummer eines Nutzerprojekts, das keine Verbindung zum Server herstellen darf. Beispiel: example-rejected-project. Projekte in dieser Liste werden für den Zugriff auf den Server abgelehnt, auch wenn sie in der Liste der zulässigen Projekte enthalten sind.

    Sie können maximal 64 Projekte ablehnen.

    Wenn Sie keine Projekte explizit ablehnen möchten, lassen Sie das consumerRejectList-Objekt weg.

HTTP-Methode und URL:

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

JSON-Text anfordern:

{
  "accessType": "INTERNAL",
  "internalConfig": {
    "consumerAcceptList": [
      {
        "project": "projects/PROJECT_TO_ALLOW",
        "connectionLimit": CONNECTION_LIMIT
      }
    ],
    "consumerRejectList": [
      {
        "project": "projects/PROJECT_TO_REJECT"
      }
    ]
  }
}

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

Die Antwort identifiziert einen Vorgang mit langer Ausführungszeit.

Die Erstellung des Servers dauert etwa 10 Minuten.

Nächste Schritte