Eu tenho uma instância do EC2 em execução (FreeBSD 9 AMI ami-8cce3fe5) e posso fazer ssh nela usando meu arquivo de chave criado pela amazon sem solicitação de senha, sem problemas.
No entanto, quando eu quero copiar um arquivo para a instância usando scp, sou solicitado a inserir uma senha:
scp somefile.txt -i mykey.pem [email protected]:/
Password:
Alguma idéia de por que isso está acontecendo / como pode ser evitado?
-i
opção para fornecer sua identidade. Pode ser que você também deva mostrar o comando usado para efetuar login com o ssh.Respostas:
Eu descobri. Eu tive os argumentos na ordem errada. Isso funciona:
fonte
ssh
comandoscp
e adicionar o arquivo de nome após o arquivo pem.[email protected]:/home/ec2-user
é facilmente substituída pela mais curta e fácil[email protected]:./
./
FTW!fonte
Eu usei o comando abaixo para copiar do linux local Centos 7 para o AWS EC2.
fonte
Fazer do comentário da siliconerockstar uma resposta, uma vez que funcionou para mim
fonte
O nome do arquivo não deve estar entre o arquivo pem e a string do usuário ec2 - isso não funciona. Isso também permite reservar o nome do arquivo copiado.
fonte
copiar um arquivo de um servidor local para um servidor remoto
copiar um arquivo de um servidor remoto para uma máquina local
Portanto, a sintaxe basicamente é: -
-i
é para o arquivo de identidadefonte
vamos supor que seu arquivo pem e somefile.txt que você deseja enviar estejam na pasta Downloads
deixe-me saber se não funcionar
fonte
:/
no final, mas com:~/
isso funcionascp -i /home/barkat/Downloads/LamppServer.pem lampp_x64_12.04.tar.gz
isso será muito útil para todos vocês
fonte
Meu
hadoopec2cluster.pem
arquivo era o único no diretório do meu mac local, não podia scp-lo para aws usandoscp -i hadoopec2cluster.pem hadoopec2cluster.pem ubuntu@serverip:~
.Copiou hadoopec2cluster.pem para hadoopec2cluster_2.pem e, em seguida
scp -i hadoopec2cluster.pem hadoopec2cluster_2.pem ubuntu@serverip:~
. Voila!fonte
Fiquei desligado porque estava especificando meu arquivo de chave pública em
Quando percebi esse erro e o alterei para o caminho da chave privada, estava tudo pronto.
fonte
No seu caso, o usuário
root
não terá problemas. Mas em certos casos em que você é obrigado a fazer login no SSH como um usuário diferente, verifique se o diretório que você estáscp
inserindo tem permissões adequadas para o usuário que você está acessando o SSH.fonte
Para usar o PSCP, você precisa da chave privada gerada em Convertendo sua chave privada usando o PuTTYgen. Você também precisa do endereço DNS público da sua instância do Linux
fonte
escreva este código
Se você tiver uma chave SSH com acesso ao servidor de destino e o servidor de origem não, adicionar -o "ForwardAgent = yes" permitirá encaminhar seu agente SSH para o servidor de origem, para que ele possa usar sua chave SSH para conectar-se ao o servidor de destino.
fonte
Apenas testado:
Execute o seguinte comando:
Então:
fonte