Questo documento mostra come connettersi a un server SFTP interno in Cloud FTP. Un server SFTP ti consente di trasferire in modo sicuro file da e verso Cloud Storage. Puoi caricare o scaricare dati nei bucket Cloud Storage utilizzando i comandi SFTP standard e i client SFTP.
È possibile accedere ai server interni solo all'interno della rete Virtual Private Cloud (VPC) utilizzando Private Service Connect. Per informazioni di base, consulta Panoramica di VPC e Panoramica di Private Service Connect.
Prima di iniziare
Completa i prerequisiti nelle sezioni seguenti.
Configura una rete VPC
I passaggi descritti in questo documento presuppongono che tu abbia una rete VPC. Per i passaggi per creare una rete VPC, consulta Crea e gestisci le reti VPC.
Puoi connetterti all'indirizzo IP privato dell'endpoint Private Service Connect da un'istanza o un servizio Compute Engine nella stessa rete dell'endpoint. Potresti dover configurare la rete per consentire queste connessioni. Ad esempio, se ti connetti all'endpoint utilizzando una VM client Compute Engine, aggiungi una regola firewall che consenta le connessioni SSH in entrata alle istanze VM.
Configura un endpoint Private Service Connect
Prima di connetterti a un server SFTP interno per la prima volta, completa i seguenti passaggi:
Genera una coppia di chiavi SSH che utilizzerai per l'autenticazione al server.
Di quale formato di chiave hai bisogno?
Il formato della chiave di cui hai bisogno dipende dal client che utilizzi per connetterti al server SFTP. Per ulteriori informazioni, consulta Client SFTP supportati.
Formato PEM
-
Per creare una coppia di chiavi OpenSSH (formato PEM), utilizza l'
ssh-keygenutilità.Nella macchina client che si connetterà al server SFTP, esegui questo comando:
ssh-keygen -t rsa -b 4096 -f ~/.ssh/KEY_PAIR_NAME
Sostituisci
KEY_PAIR_NAMEcon un nome per la coppia di chiavi, ad esempiosftp_user_key. -
Estrai la chiave pubblica:
cat ~/.ssh/KEY_PAIR_NAME.pub
Formato PPK
-
Per creare una coppia di chiavi PuTTY (formato PPK), utilizza lo
PuTTYgenstrumento.Nella macchina client che si connetterà al server SFTP, esegui questo comando:
puttygen -t rsa -b 4096 -o KEY_PAIR_NAME.ppk
Sostituisci
KEY_PAIR_NAMEcon un nome per la coppia di chiavi, ad esempiosftp_user_key. -
Estrai la chiave pubblica:
puttygen -L KEY_PAIR_NAME.ppk
Fornisci la chiave pubblica all'amministratore di Cloud FTP. L'amministratore creerà un account utente SFTP per te e ti aggiungerà a un server.
-
Chiedi all'amministratore di Cloud FTP di fornirti le seguenti informazioni, necessarie per connetterti al server:
- L'URI del collegamento al servizio per il server.
- Il tuo nome utente SFTP.
- (Facoltativo) L'impronta della chiave del server.
Segui i passaggi per creare un endpoint Private Service Connect. Fornisci le seguenti informazioni:
- Destinazione: seleziona Servizio pubblicato.
- Servizio di destinazione: l'URI del collegamento al servizio. L'URI del collegamento al servizio
è nel formato
projects/SERVICE_PROJECT/regions/REGION/serviceAttachments/SERVICE_NAME. - Nome: un nome per l'endpoint. Utilizza lo stesso valore di
SERVICE_PROJECTdell'URI del collegamento al servizio. - Rete: la rete VPC per l'endpoint.
- Subnet: la subnet per l'endpoint.
- Indirizzo IP: crea un indirizzo IP per l'endpoint.
- Se stai creando la VM client in una regione diversa da quella del collegamento al servizio, seleziona Attiva accesso globale.
Prendi nota dell'indirizzo IP dell'endpoint.
Nella stessa rete dell'endpoint, configura un client, ad esempio un'istanza o un servizio Compute Engine, in modo che l'istanza o il servizio possa connettersi all'indirizzo IP privato dell'endpoint.
Ad esempio, per utilizzare un'istanza Compute Engine come VM client, procedi nel seguente modo:
Segui i passaggi per creare un'istanza Compute Engine, se non esiste già. Fornisci le seguenti informazioni:
- Regione: se non hai attivato l'accesso globale quando hai creato l' endpoint, seleziona la stessa regione del collegamento al servizio del server SFTP.
- Interfaccia di rete: seleziona la stessa rete VPC e la stessa subnet dell'endpoint.
Prendi nota del nome e della zona della VM client.
Trasferisci la chiave privata alla VM client:
gcloud compute scp ~/.ssh/KEY_PAIR_NAME CLIENT_VM_NAME:~/.ssh/KEY_PAIR_NAME \ --zone=CLIENT_VM_ZONE --project=PROJECT_ID
Sostituisci quanto segue:
CLIENT_VM_NAME: il nome della VM client.CLIENT_VM_ZONE: la zona della VM client.PROJECT_ID: l'ID progetto o il numero del tuo Google Cloud progetto.
Connettiti a un server SFTP interno
OpenSSH
-
Connettiti all'istanza o al servizio Compute Engine client nella stessa rete VPC network dell'endpoint Private Service Connect.
Ad esempio, se utilizzi un'istanza Compute Engine come VM client, connettiti a la VM client tramite SSH:
gcloud compute ssh CLIENT_VM_NAME --zone=CLIENT_VM_ZONE --project=PROJECT_ID
Sostituisci quanto segue:
CLIENT_VM_NAME: il nome della VM clientCLIENT_VM_ZONE: la zona della VM clientPROJECT_ID: l'ID o il numero del progetto Google Cloud
-
Utilizza OpenSSH per connetterti al server SFTP:
sftp -i ~/.ssh/KEY_PAIR_NAME USERNAME@IP_ADDRESS
Sostituisci quanto segue:
KEY_PAIR_NAME: il nome della coppia di chiavi SSH, ad esempiosftp_user_keyUSERNAME: il tuo nome utente SFTPIP_ADDRESS: l'indirizzo IP dell' endpoint Private Service Connect
Se è la prima volta che ti connetti al server, potresti visualizzare un messaggio simile a
The authenticity of host 'HOSTNAME (IP_ADDRESS)' can't be established, e l'impronta della chiave del server. Per verificare il server, inserisci l'impronta della chiave che ti ha fornito l' amministratore. In alternativa, se ti fidi del server, digitayesper aggiungerlo all' elenco dei server attendibili.
Al termine del trasferimento dei file, disconnettiti dalla VM client inserendo exit.
PuTTY
-
Connettiti all'istanza o al servizio Compute Engine client nella stessa rete VPC network dell'endpoint Private Service Connect.
Ad esempio, se utilizzi un'istanza Compute Engine come VM client, connettiti a la VM client tramite SSH:
gcloud compute ssh CLIENT_VM_NAME --zone=CLIENT_VM_ZONE --project=PROJECT_ID
Sostituisci quanto segue:
CLIENT_VM_NAME: il nome della VM clientCLIENT_VM_ZONE: la zona della VM clientPROJECT_ID: l'ID o il numero del progetto Google Cloud
-
Utilizza PuTTY per connetterti al server SFTP:
psftp -i ~/.ssh/KEY_PAIR_NAME.ppk USERNAME@IP_ADDRESS
Sostituisci quanto segue:
KEY_PAIR_NAME: il nome della coppia di chiavi SSH, ad esempiosftp_user_keyUSERNAME: il tuo nome utente SFTPIP_ADDRESS: l'indirizzo IP dell' endpoint Private Service Connect
Se è la prima volta che ti connetti al server, potresti visualizzare un messaggio che indica che la chiave host non è memorizzata nella cache. Verifica l'impronta della chiave che ti ha fornito l'amministratore e, se vuoi, aggiungi la chiave alla cache. Poi, procedi con la connessione.