Partilhar via


Usar o SCP para mover arquivos de e para uma VM

Aplica-se a: ✔️ Linux VMs ✔️ Windows VMs ✔️ Conjuntos de escala flexível

Este artigo mostra como mover ficheiros da sua estação de trabalho para uma VM do Azure ou de uma VM do Azure para a sua estação de trabalho, utilizando o Secure Copy (SCP). Mover arquivos entre sua estação de trabalho e uma VM, de forma rápida e segura, é essencial para gerenciar sua infraestrutura do Azure.

Para este artigo, você precisa de uma VM implantada no Azure com SSH habilitado. Você também precisa de um cliente SCP para seu computador local. Ele é construído sobre SSH e incluído no shell padrão da maioria das instalações Linux e Windows (10 e mais recentes).

Comandos rápidos

Carregar um arquivo para a VM

scp file azureuser@azurehost:directory/targetfile

Baixar um arquivo da VM

scp azureuser@azurehost:directory/file targetfile

Instruções detalhadas

Como exemplos, movemos um arquivo de configuração do Azure para uma VM e puxamos para baixo um diretório de arquivo de log, ambos usando SCP.

Autenticação de par de chaves SSH

O SCP usa SSH para a camada de transporte. O SSH lida com a autenticação no host de destino e move o arquivo em um túnel criptografado fornecido por padrão com SSH. Para autenticação SSH, nomes de usuário e senhas podem ser usados. No entanto, a autenticação de chave pública e privada SSH é recomendada como uma prática recomendada de segurança. Depois que o SSH autentica a conexão, o SCP começa a copiar o arquivo. Quando você usa chaves públicas e privadas SSH configuradas ~/.ssh/config corretamente, a conexão SCP pode ser estabelecida usando apenas um nome de servidor (ou endereço IP). Se você tiver apenas uma chave SSH, o ~/.ssh/ SCP a procurará no diretório e a usará por padrão para efetuar login na VM.

Para obter mais informações sobre como configurar suas ~/.ssh/config chaves públicas e privadas SSH, consulte Criar chaves SSH.

Carregar um ficheiro para uma VM

Para o primeiro exemplo, copiamos um arquivo de configuração do Azure até uma VM usada para implantar a automação. Como esse arquivo contém credenciais da API do Azure, que incluem segredos, a segurança é importante. O túnel criptografado fornecido pelo SSH protege o conteúdo do arquivo.

O comando a seguir copia o arquivo .azure/config local para uma VM do Azure com FQDN myserver.eastus.cloudapp.azure.com. Se você não tiver um FQDN definido, também poderá usar o endereço IP da VM. O nome de usuário admin na VM do Azure é azureuser. O arquivo é direcionado para o diretório /home/azureuser/ . Substitua seus próprios valores neste comando.

scp ~/.azure/config azureuser@myserver.eastus.cloudapp.com:/home/azureuser/config

Baixar um diretório de uma VM

Neste exemplo, copiamos um diretório de arquivos de log da VM para sua estação de trabalho. Um arquivo de log pode ou não conter dados confidenciais ou secretos. No entanto, usar SCP garante que o conteúdo dos ficheiros de registo são encriptados. Um diretório de log pode conter muitos arquivos relevantes para copiar um de cada vez, portanto, baixar o diretório inteiro é preferível nessa situação. Usar o SCP para transferir os arquivos é a maneira mais fácil de obter o diretório de log e os arquivos para sua estação de trabalho e, ao mesmo tempo, ser seguro.

O comando a seguir copia arquivos no diretório /home/azureuser/logs/ na VM do Azure para o diretório /tmp local:

scp -r azureuser@myserver.eastus.cloudapp.com:/home/azureuser/logs/. /tmp/

O -r sinalizador instrui o SCP a copiar recursivamente os arquivos e diretórios do ponto do diretório listado no comando. Observe também que a sintaxe da linha de comando é semelhante a um cp comando copy.

Próximos passos