Este documento mostra como criar um servidor SFTP externo usando o Cloud FTP. Um servidor SFTP externo pode ser acessado pela Internet. Parceiros fora da sua rede podem usar o servidor para transferir arquivos com segurança para o Cloud Storage e dele.
É possível restringir o acesso a um servidor SFTP externo com base nos endereços IP dos usuários.
Para conferir as etapas de criação de um servidor interno, que só pode ser acessado na sua rede de nuvem privada virtual (VPC), consulte Criar um servidor SFTP interno. Não é possível mudar se um servidor é externo ou interno depois que ele é criado.
Antes de começar
Console
- Faça login na sua Google Cloud conta do. Se você não conhece o Google Cloud, crie uma conta para avaliar o desempenho dos nossos produtos em cenários reais. Clientes novos também recebem US $300 em créditos para executar, testar e implantar cargas de trabalho.
-
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 theresourcemanager.projects.createpermission. Learn how to grant roles.
-
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.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Cloud FTP API.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. 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.-
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 theresourcemanager.projects.createpermission. Learn how to grant roles.
-
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.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Cloud FTP API.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. 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.- Se você quiser restringir o acesso ao servidor com base nos endereços IP dos usuários, colete uma lista de blocos CIDR que podem acessar o servidor.
gcloud
- Faça login na sua Google Cloud conta do. Se você não conhece o Google Cloud, crie uma conta para avaliar o desempenho dos nossos produtos em cenários reais. Clientes novos também recebem US $300 em créditos para executar, testar e implantar cargas de trabalho.
-
Instale a Google Cloud CLI.
-
Ao usar um provedor de identidade (IdP) externo, primeiro faça login na CLI gcloud com sua identidade federada.
-
Para inicializar a CLI gcloud, execute o seguinte comando:
gcloud init -
Crie ou selecione um Google Cloud projeto.
Funções necessárias para selecionar ou criar um projeto
- Selecionar um projeto: a seleção de um projeto não exige um papel específico do IAM. É possível selecionar qualquer projeto em que você tenha recebido um papel.
-
Criar um projeto: para criar um projeto, é necessário ter o papel de Criador de projetos
(
roles/resourcemanager.projectCreator), que contém aresourcemanager.projects.createpermissão. Saiba como conceder papéis.
-
Crie um Google Cloud projeto do:
gcloud projects create PROJECT_ID
Substitua
PROJECT_IDpor um nome para o Google Cloud projeto do que você está criando. -
Selecione o Google Cloud projeto do que você criou:
gcloud config set project PROJECT_ID
Substitua
PROJECT_IDpelo nome do Google Cloud projeto do.
-
Se este guia estiver usando um projeto atual, verifique se você tem as permissões necessárias para concluir o guia. Se você criou um projeto, já tem as permissões necessárias.
-
Verifique se o faturamento está ativado para o Google Cloud projeto.
Ative a API Cloud FTP:
Funções necessárias para ativar APIs
Para ativar as APIs, é necessário ter a permissão
serviceusage.services.enable. Se você criou o projeto, provavelmente já tem essa permissão pelo papel de Proprietário (roles/owner). Caso contrário, é possível receber essa permissão pelo papel de Administrador de uso do serviço (roles/serviceusage.serviceUsageAdmin). Saiba como conceder papéis.gcloud services enable ftp.googleapis.com
-
Instale a Google Cloud CLI.
-
Ao usar um provedor de identidade (IdP) externo, primeiro faça login na CLI gcloud com sua identidade federada.
-
Para inicializar a CLI gcloud, execute o seguinte comando:
gcloud init -
Crie ou selecione um Google Cloud projeto.
Funções necessárias para selecionar ou criar um projeto
- Selecionar um projeto: a seleção de um projeto não exige um papel específico do IAM. É possível selecionar qualquer projeto em que você tenha recebido um papel.
-
Criar um projeto: para criar um projeto, é necessário ter o papel de Criador de projetos
(
roles/resourcemanager.projectCreator), que contém aresourcemanager.projects.createpermissão. Saiba como conceder papéis.
-
Crie um Google Cloud projeto do:
gcloud projects create PROJECT_ID
Substitua
PROJECT_IDpor um nome para o Google Cloud projeto do que você está criando. -
Selecione o Google Cloud projeto do que você criou:
gcloud config set project PROJECT_ID
Substitua
PROJECT_IDpelo nome do Google Cloud projeto do.
-
Se este guia estiver usando um projeto atual, verifique se você tem as permissões necessárias para concluir o guia. Se você criou um projeto, já tem as permissões necessárias.
-
Verifique se o faturamento está ativado para o Google Cloud projeto.
Ative a API Cloud FTP:
Funções necessárias para ativar APIs
Para ativar as APIs, é necessário ter a permissão
serviceusage.services.enable. Se você criou o projeto, provavelmente já tem essa permissão pelo papel de Proprietário (roles/owner). Caso contrário, é possível receber essa permissão pelo papel de Administrador de uso do serviço (roles/serviceusage.serviceUsageAdmin). Saiba como conceder papéis.gcloud services enable ftp.googleapis.com
- Se você quiser restringir o acesso ao servidor com base nos endereços IP dos usuários, colete uma lista de blocos CIDR que podem acessar o servidor.
Funções exigidas
Para receber a permissão necessária para criar um servidor SFTP, peça ao administrador para conceder a você o Administrador do Cloud FTP (roles/ftp.admin) papel do IAM no projeto.
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Esse papel predefinido contém a
ftp.servers.create
permissão,
que é necessária para
criar um servidor SFTP.
Também é possível conseguir essa permissão com papéis personalizados ou outros papéis predefinidos.
Criar um servidor externo
Console
- No Google Cloud console do, acesse a página Cloud FTP.
Clique em Criar servidor.
Na guia Configuração do servidor, insira os detalhes básicos do servidor:
No campo ID do servidor, insira um ID exclusivo para o servidor.
Na lista Região, selecione o Google Cloud local para o servidor.
Para ter as velocidades de transferência de dados mais rápidas, crie o servidor no mesmo local que o bucket do Cloud Storage que armazena seus dados. Se o local do bucket não for compatível com o Cloud FTP, selecione o local disponível mais próximo.
(Opcional) Insira um nome de exibição para o servidor.
Clique em Continuar.
Na guia Rede e segurança, configure a conectividade do servidor:
Selecione Externo (IP público).
No campo Intervalos de IP permitidos, forneça um bloco CIDR que possa acessar o servidor e pressione Enter. Por exemplo,
192.0.2.0/24. É necessário fornecer pelo menos um valor e é possível fornecer um máximo de 500 blocos CIDR. Para permitir conexões de todos os endereços IP, use0.0.0.0/0.
Clique em Criar.
Leva cerca de 10 minutos para o servidor ser criado.
gcloud
Para criar um servidor externo, execute o
gcloud alpha storage ftp servers create comando
e forneça a --access-type=EXTERNAL flag.
Antes de usar os dados do comando abaixo, faça estas substituições:
- SERVER_ID: um ID exclusivo para o servidor. Precisa começar com uma letra minúscula e terminar com uma letra minúscula ou um número. Pode conter letras minúsculas, números e hifens. O comprimento máximo é de 30 caracteres.
-
LOCATION_ID: o Google Cloud local do servidor, como
us-west1.Para ter as velocidades de transferência de dados mais rápidas, crie o servidor no mesmo local que o bucket do Cloud Storage que armazena seus dados. Se o local do bucket não for compatível com o Cloud FTP, selecione o local disponível mais próximo.
- CIDR_BLOCK: um bloco CIDR que pode acessar o servidor. Por exemplo,
192.0.2.0/24. É necessário fornecer pelo menos um valor e é possível fornecer um máximo de 500 blocos CIDR em uma lista separada por vírgulas. Para permitir conexões de todos os endereços IP, use0.0.0.0/0.
Execute o comando a seguir:
Linux, macOS ou 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
Leva cerca de 10 minutos para o servidor ser criado.
REST
Para criar um servidor externo, use o
servers.create método
e forneça uma externalConfig configuração de acesso.
Antes de usar os dados da solicitação, faça estas substituições:
- PROJECT_ID: o Google Cloud ID do projeto do servidor.
-
LOCATION_ID: o Google Cloud local do servidor, como
us-west1.Para ter as velocidades de transferência de dados mais rápidas, crie o servidor no mesmo local que o bucket do Cloud Storage que armazena seus dados. Se o local do bucket não for compatível com o Cloud FTP, selecione o local disponível mais próximo.
- SERVER_ID: um ID exclusivo para o servidor. Precisa começar com uma letra minúscula e terminar com uma letra minúscula ou um número. Pode conter letras minúsculas, números e hifens. O comprimento máximo é de 30 caracteres.
- CIDR_BLOCK: um bloco CIDR que pode acessar o servidor. Por exemplo,
192.0.2.0/24. É necessário fornecer pelo menos um valor e é possível fornecer um máximo de 500 blocos CIDR . Para permitir conexões de todos os endereços IP, use0.0.0.0/0.
Método HTTP e URL:
POST https://ftp.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/servers?serverId=SERVER_ID
Corpo JSON da solicitação:
{
"accessType": "EXTERNAL",
"externalConfig": {
"allowedCidrBlocks": [
"CIDR_BLOCK"
]
}
}
Para enviar a solicitação, expanda uma destas opções:
A resposta identifica uma operação de longa duração.Leva cerca de 10 minutos para o servidor ser criado.