Conexões seguras com ambientes remotos
- Tópicos:
- Nuvem
Criado para:
- Desenvolvedor
O Secure Shell (SSH) é um protocolo comum usado para fazer logon com segurança em servidores e sistemas remotos. Você pode usar o SSH para acessar seus ambientes remotos para gerenciar o aplicativo do Adobe Commerce e acessar logs de ambientes remotos. O Adobe só oferece suporte a conexões FTP seguras (sFTP) usando sua chave pública SSH. Conexões FTP não são suportadas.
Gerar um par de chaves SSH
Crie um par de chaves SSH em cada máquina e espaço de trabalho que exija acesso ao código-fonte e aos ambientes do projeto. A chave SSH permite que você se conecte ao GitHub para gerenciar o código-fonte e se conectar aos servidores da nuvem sem precisar fornecer constantemente seu nome de usuário e senha. Consulte Conectando ao GitHub com SSH para obter mais instruções sobre como criar um par de chaves SSH.
- A chave pública é segura para fornecer acesso a um site, SSH e sFTP.
- A chave privada permanece privada na estação de trabalho.
Adicionar uma chave pública SSH à sua conta
Depois de adicionar ou atualizar sua chave pública SSH para sua conta do Adobe Commerce na infraestrutura em nuvem, reimplante todos os ambientes ativos em sua conta para instalar a chave.
Você pode adicionar chaves SSH à sua conta usando um dos seguintes métodos: Cloud CLI ou Cloud Console.
Adicione sua chave SSH usando a CLI da nuvem
-
Na estação de trabalho local, altere para o diretório do projeto.
-
Faça logon no projeto:
magento-cloud login
-
Adicione a chave pública.
magento-cloud ssh-key:add ~/.ssh/id_rsa.pub
ssh-key:list
e ssh-key:delete
.Adicione sua chave SSH usando o Cloud Console
Para adicionar uma chave SSH a um novo projeto:
-
Faça logon no Cloud Console.
-
Clique em No SSH key. Esse ícone fica à direita do campo de comando e é visível quando o projeto não contém uma chave SSH.
-
Copie e cole o conteúdo da sua chave SSH pública no campo Chave pública.
-
Siga os prompts restantes.
Para adicionar uma chave SSH ao seu perfil da nuvem:
-
Faça logon no Cloud Console.
-
No menu de conta superior direito, clique em Meu perfil.
-
Na exibição Chaves SSH, clique em Adicionar chave pública.
-
No formulário Adicionar uma chave SSH, dê à sua chave um Título e cole a chave SSH pública no campo Chave.
-
Clique em Salvar.
Conectar-se a um ambiente remoto
Você pode se conectar a um ambiente remoto usando a CLI do magento-cloud
ou um comando SSH. Os comandos da CLI do magento-cloud
só podem ser usados em ambientes de integração Starter e Pro.
Usar a CLI da nuvem
Para fazer logon em um ambiente de integração remota:
-
Na estação de trabalho local, altere para o diretório do projeto.
-
Listar os ambientes nesse projeto.
magento-cloud environment:list -p <project-ID>
-
Use o SSH para fazer logon no ambiente remoto.
magento-cloud ssh -p <project-ID> -e <environment-ID>
Usar um comando SSH
O Cloud Console inclui uma lista de comandos de acesso à Web e SSH para cada ambiente.
Para copiar o comando SSH:
-
Faça logon no Cloud Console.
-
Selecione um projeto na lista Todos os projetos.
-
Selecione um ambiente.
-
Clique em SSH.
-
Na guia SSH, clique no botão Copiar para copiar o comando SSH completo para a área de transferência.
-
Abra um terminal e cole o comando SSH para criar uma conexão.
ssh abcdefg123abc-branch-a12b34c--mymagento@ssh.us-2.magento.cloud
ssh <node>.ent-<project-ID>-<environment>-<user-ID>@ssh.<region>.magento.com
sFTP
A infraestrutura do Adobe Commerce na nuvem é compatível com o acesso a seus ambientes usando sFTP (FTP seguro) com autenticação SSH. Use um cliente compatível com autenticação de chave SSH para sFTP e use sua chave SSH pública. Sua chave SSH pública deve ser adicionada ao ambiente de destino. Para ambientes Starter e ambientes de integração Pro, você pode adicioná-lo por meio do Cloud Console.
Conexões sFTP somente leitura não suportadas; o acesso sFTP é fornecido com permissão de gravação por padrão.
Ao configurar o sFTP, use as informações do comando do ambiente de acesso SSH: <project-id>-<environment-id>--<app-name>@ssh<cloud-host>
- Nome de usuário: todo o conteúdo antes de
@
no seu destino de acesso SSH. - Senha: você não precisa de uma senha para sFTP. O acesso sFTP usa a autenticação de chave SSH.
- Host: todo o conteúdo após
@
no seu acesso SSH. - Porta: 22, que é a porta SSH padrão.
- SSH Chave privada: se necessário, forneça a localização da sua chave privada para o cliente sFTP. Por padrão, chaves privadas são armazenadas no diretório
~/.ssh
.
Dependendo do cliente, opções adicionais podem ser necessárias para concluir a autenticação SSH para sFTP. Revise a documentação do cliente selecionado.
Para ambientes iniciais e ambientes de integração Pro, você também pode considerar adicionar um mount
para acessar um diretório específico. Você adicionaria a montagem ao arquivo .magento.app.yaml
. Para obter uma lista de diretórios graváveis, consulte Estrutura de projeto. Esse ponto de montagem só funciona nesses ambientes.
Para ambientes de Preparo e Produção Pro, se você não tiver acesso SSH ao ambiente, deverá enviar um tíquete de Suporte da Adobe Commerce para solicitar acesso sFTP e um ponto de montagem para acesso à pasta específica, por exemplo, pub/media
.
Tunelamento SSH
Você pode usar o tunelamento SSH para se conectar a um serviço do ambiente de desenvolvimento local como se o serviço fosse local. Antes do túnel, configure o SSH.
Use um aplicativo de terminal para fazer logon e emitir comandos.
magento-cloud login
Verifique se algum túnel está aberto usando.
magento-cloud tunnel:list
Para criar um túnel, você deve saber o nome do aplicativo. Você pode verificar o nome do aplicativo usando a CLI:
magento-cloud apps
Configurar o túnel SSH
magento-cloud tunnel:open -e <environment-ID> --app <app-name>
Por exemplo, para abrir um túnel para a ramificação sprint5
em um projeto com um aplicativo chamado mymagento
, digite
magento-cloud tunnel:open -e sprint5 --app mymagento
Exemplo de resposta:
SSH tunnel opened on port 30004 to relationship: redis
SSH tunnel opened on port 30005 to relationship: database
Logs are written to: /home/magento_user/.magento/tunnels.log
List tunnels with: magento-cloud tunnels
View tunnel details with: magento-cloud tunnel:info
Close tunnels with: magento-cloud tunnel:close
Para exibir informações sobre o túnel:
magento-cloud tunnel:info -e <environment-ID>
Conectar-se a serviços
Depois de estabelecer um túnel SSH, você pode se conectar a serviços como se estivessem sendo executados localmente. Por exemplo, para se conectar ao banco de dados, use o seguinte comando:
mysql --host=127.0.0.1 --user='<database-username>' --pass='<user-password>' --database='<name>' --port='<port>'