In diesem Dokument wird beschrieben, wie Sie eine Verbindung zu einem internen SFTP-Server in Cloud FTP herstellen. Mit einem SFTP-Server können Sie Dateien sicher zu und von Cloud Storage übertragen. Sie können Daten in Cloud Storage Buckets mit Standard-SFTP-Befehlen und SFTP Clients hochladen oder herunterladen.
Auf interne Server kann nur innerhalb Ihres VPC-Netzwerks (Virtual Private Cloud) über Private Service Connect zugegriffen werden. Hintergrundinformationen finden Sie unter VPC-Übersicht und Private Service Connect-Übersicht.
Hinweis
Erfüllen Sie die Voraussetzungen in den folgenden Abschnitten.
VPC-Netzwerk konfigurieren
In diesem Dokument wird davon ausgegangen, dass Sie ein VPC-Netzwerk haben. Eine Anleitung zum Erstellen eines VPC-Netzwerk finden Sie unter VPC-Netzwerke erstellen und verwalten.
Sie können von einer Compute Engine-Instanz oder einem Dienst im selben Netzwerk wie der Endpunkt eine Verbindung zur privaten IP-Adresse des Private Service Connect-Endpunkts herstellen. Möglicherweise müssen Sie das Netzwerk so konfigurieren, dass diese Verbindungen zugelassen werden. Wenn Sie beispielsweise über eine Compute Engine-Client-VM eine Verbindung zum Endpunkt herstellen, fügen Sie eine Firewallregel hinzu, die eingehende SSH-Verbindungen zu VM-Instanzen zulässt.
Private Service Connect-Endpunkt konfigurieren
Führen Sie die folgenden Schritte aus, bevor Sie zum ersten Mal eine Verbindung zu einem internen SFTP-Server herstellen:
Generieren Sie ein SSH-Schlüsselpaar, mit dem Sie sich beim Server authentifizieren.
Welches Schlüsselformat benötigen Sie?
Das erforderliche Schlüsselformat hängt davon ab, welchen Client Sie verwenden, um eine Verbindung zum SFTP-Server herzustellen. Weitere Informationen finden Sie unter Unterstützte SFTP-Clients.
PEM-Format
-
Verwenden Sie das
ssh-keygenDienstprogramm, um ein OpenSSH-Schlüsselpaar (PEM-Format) zu erstellen.Führen Sie auf dem Clientcomputer, der eine Verbindung zum SFTP-Server herstellt, den folgenden Befehl aus:
ssh-keygen -t rsa -b 4096 -f ~/.ssh/KEY_PAIR_NAME
Ersetzen Sie
KEY_PAIR_NAMEdurch einen Namen für das Schlüsselpaar, z. B.sftp_user_key. -
Extrahieren Sie den öffentlichen Schlüssel:
cat ~/.ssh/KEY_PAIR_NAME.pub
PPK-Format
-
Verwenden Sie das
PuTTYgenTool, um ein PuTTY-Schlüsselpaar (PPK-Format) zu erstellen.Führen Sie auf dem Clientcomputer, der eine Verbindung zum SFTP-Server herstellt, den folgenden Befehl aus:
puttygen -t rsa -b 4096 -o KEY_PAIR_NAME.ppk
Ersetzen Sie
KEY_PAIR_NAMEdurch einen Namen für das Schlüsselpaar, z. B.sftp_user_key. -
Extrahieren Sie den öffentlichen Schlüssel:
puttygen -L KEY_PAIR_NAME.ppk
Geben Sie den öffentlichen Schlüssel an Ihren Cloud FTP-Administrator weiter. Der Administrator erstellt ein SFTP-Nutzerkonto für Sie und fügt Sie einem Server hinzu.
-
Bitten Sie Ihren Cloud FTP-Administrator, Ihnen die folgenden Informationen zu geben, die Sie für die Verbindung zum Server benötigen:
- Der URI des Dienstanhangs für den Server.
- Ihr SFTP-Nutzername.
- Optional: Der Schlüssel-Fingerabdruck des Servers.
Folgen Sie der Anleitung, um einen Private Service Connect-Endpunkt zu erstellen. Geben Sie die folgenden Informationen an:
- Ziel: Wählen Sie Veröffentlichter Dienst aus.
- Zieldienst: Der URI des Dienstanhangs. Der Dienstanhang-URI hat das Format
projects/SERVICE_PROJECT/regions/REGION/serviceAttachments/SERVICE_NAME. - Name: Ein Name für den Endpunkt. Verwenden Sie denselben Wert wie
SERVICE_PROJECTaus dem URI des Dienstanhangs. - Netzwerk: Das VPC-Netzwerk für den Endpunkt.
- Subnetzwerk: Das Subnetzwerk für den Endpunkt.
- IP-Adresse: Erstellen Sie eine IP-Adresse für den Endpunkt.
- Wenn Sie die Client-VM in einer anderen Region als den Dienstanhang erstellen, wählen Sie Globalen Zugriff aktivieren aus.
Notieren Sie sich die IP-Adresse des Endpunkts.
Konfigurieren Sie im selben Netzwerk wie der Endpunkt einen Client, z. B. eine Compute Engine-Instanz oder einen Dienst, damit die Instanz oder der Dienst eine Verbindung zur privaten IP-Adresse des Endpunkts herstellen kann.
Wenn Sie beispielsweise eine Compute Engine-Instanz als Client-VM verwenden möchten, gehen Sie so vor:
Folgen Sie der Anleitung, um eine Compute Engine-Instanz zu erstellen, falls sie noch nicht vorhanden ist. Geben Sie die folgenden Informationen an:
- Region: Wenn Sie beim Erstellen des Endpunkts den globalen Zugriff nicht aktiviert haben, wählen Sie dieselbe Region wie den Dienstanhang des SFTP-Servers aus.
- Netzwerkschnittstelle: Wählen Sie dasselbe VPC-Netzwerk und Subnetzwerk wie den Endpunkt aus.
Notieren Sie sich den Namen und die Zone der Client-VM.
Übertragen Sie Ihren privaten Schlüssel an die Client-VM:
gcloud compute scp ~/.ssh/KEY_PAIR_NAME CLIENT_VM_NAME:~/.ssh/KEY_PAIR_NAME \ --zone=CLIENT_VM_ZONE --project=PROJECT_ID
Ersetzen Sie Folgendes:
CLIENT_VM_NAME: der Name der Client-VM.CLIENT_VM_ZONE: die Zone der Client-VM.PROJECT_ID: die Projekt-ID oder die Projektnummer Ihres Google Cloud Projekts.
Verbindung zu einem internen SFTP-Server herstellen
OpenSSH
-
Stellen Sie eine Verbindung zur Compute Engine-Instanz oder zum Dienst im selben VPC Netzwerk wie der Private Service Connect-Endpunkt her.
Wenn Sie beispielsweise eine Compute Engine-Instanz als Client-VM verwenden, stellen Sie über SSH eine Verbindung zu der Client-VM her:
gcloud compute ssh CLIENT_VM_NAME --zone=CLIENT_VM_ZONE --project=PROJECT_ID
Ersetzen Sie Folgendes:
CLIENT_VM_NAME: der Name der Client-VMCLIENT_VM_ZONE: die Zone der Client-VMPROJECT_ID: die Projekt-ID oder die Projektnummer Ihres Google Cloud Projekts
-
Stellen Sie mit OpenSSH eine Verbindung zum SFTP-Server her:
sftp -i ~/.ssh/KEY_PAIR_NAME USERNAME@IP_ADDRESS
Ersetzen Sie Folgendes:
KEY_PAIR_NAME: der Name Ihres SSH-Schlüsselpaars, z. B.sftp_user_keyUSERNAME: Ihr SFTP-NutzernameIP_ADDRESS: die IP-Adresse des Private Service Connect-Endpunkts
Wenn Sie zum ersten Mal eine Verbindung zum Server herstellen, wird möglicherweise eine Meldung wie
The authenticity of host 'HOSTNAME (IP_ADDRESS)' can't be established, und der Schlüssel-Fingerabdruck des Servers angezeigt. Geben Sie den Schlüssel-Fingerabdruck ein, den Sie von Ihrem Administrator erhalten haben, um den Server zu bestätigen. Wenn Sie dem Server vertrauen, geben Sieyesein, um den Server Ihrer Liste vertrauenswürdiger Server hinzuzufügen.
Wenn Sie mit der Übertragung von Dateien fertig sind, trennen Sie die Verbindung zur Client-VM, indem Sie exit eingeben.
PuTTY
-
Stellen Sie eine Verbindung zur Compute Engine-Instanz oder zum Dienst im selben VPC Netzwerk wie der Private Service Connect-Endpunkt her.
Wenn Sie beispielsweise eine Compute Engine-Instanz als Client-VM verwenden, stellen Sie über SSH eine Verbindung zu der Client-VM her:
gcloud compute ssh CLIENT_VM_NAME --zone=CLIENT_VM_ZONE --project=PROJECT_ID
Ersetzen Sie Folgendes:
CLIENT_VM_NAME: der Name der Client-VMCLIENT_VM_ZONE: die Zone der Client-VMPROJECT_ID: die Projekt-ID oder die Projektnummer Ihres Google Cloud Projekts
-
Stellen Sie mit PuTTY eine Verbindung zum SFTP-Server her:
psftp -i ~/.ssh/KEY_PAIR_NAME.ppk USERNAME@IP_ADDRESS
Ersetzen Sie Folgendes:
KEY_PAIR_NAME: der Name Ihres SSH-Schlüsselpaars, z. B.sftp_user_keyUSERNAME: Ihr SFTP-NutzernameIP_ADDRESS: die IP-Adresse des Private Service Connect-Endpunkts
Wenn Sie zum ersten Mal eine Verbindung zum Server herstellen, wird möglicherweise eine Meldung angezeigt, dass der Hostschlüssel nicht im Cache gespeichert ist. Prüfen Sie den Schlüssel-Fingerabdruck, den Sie von Ihrem Administrator erhalten haben, und fügen Sie den Schlüssel optional dem Cache hinzu. Fahren Sie dann mit der Verbindung fort.