J'ai une instance EC2 en cours d'exécution (FreeBSD 9 AMI ami-8cce3fe5) et je peux y insérer SSH à l'aide de mon fichier de clé créé par Amazon sans mot de passe. Invite, pas de problème.
Cependant, lorsque je veux copier un fichier sur l'instance à l'aide de scp, je suis invité à entrer un mot de passe:
scp somefile.txt -i mykey.pem [email protected]:/
Password:
Des idées pour expliquer pourquoi cela se produit/comment il peut être évité?
Je l'ai compris. J'ai eu les arguments dans le mauvais ordre. Cela marche:
scp -i mykey.pem somefile.txt [email protected]:/
scp -i /path/to/your/.pemkey -r /copy/from/path user@server:/copy/to/path
J'ai utilisé la commande ci-dessous pour copier de linux local Centos 7 vers AWS EC2.
scp -i user_key.pem file.txt [email protected]:/home/ec2-user
scp -i ~/.ssh/key.pem ec2-user@ip:/home/ec2-user/file-to-copy.txt .
Le nom du fichier ne doit pas être entre le fichier pem et la chaîne ec2-user - cela ne fonctionne pas. Cela vous permet également de réserver le nom du fichier copié.
Faire du commentaire de siliconerockstar une réponse puisqu'il a fonctionné pour moi
scp -i kp1.pem ./file.txt [email protected]:/home/ec2-user
supposons que votre fichier PEM et le fichier somefile.txt que vous souhaitez envoyer se trouvent dans le dossier Téléchargements
scp -i ~/Downloads/mykey.pem ~/Downloads/somefile.txt [email protected]:~/
laissez-moi savoir si ça ne marche pas
scp -i /home/barkat/Downloads/LamppServer.pem lampp_x64_12.04.tar.gz
ce sera très utile à tous les gars
J'ai été suspendu parce que je spécifiais mon fichier de clé publique dans
scp -i [private key file path]
Lorsque j'ai détecté cette erreur et que je l'ai remplacé par le chemin de la clé privée, j'étais prêt.
Dans votre cas, l'utilisateur root
n'aura aucun problème. Mais dans certains cas où vous devez vous connecter sous SSH en tant qu'utilisateur différent, assurez-vous que le répertoire dans lequel vous êtes scp
ing dispose des autorisations adéquates pour l'utilisateur que vous êtes en SSH.
Mon fichier hadoopec2cluster.pem
était le seul dans le répertoire de mon Mac local. Impossible de le scp à aws avec scp -i hadoopec2cluster.pem hadoopec2cluster.pem ubuntu@serverip:~
.
Copié hadoopec2cluster.pem dans hadoopec2cluster_2.pem puis scp -i hadoopec2cluster.pem hadoopec2cluster_2.pem ubuntu@serverip:~
. Voila!
Pour utiliser PSCP, vous avez besoin de la clé privée que vous avez générée dans Conversion de votre clé privée à l'aide de PuTTYgen. Vous avez également besoin de l'adresse DNS publique de votre instance Linux.
pscp -i C:\path\my-key-pair.ppk C:\path\Sample_file.txt ec2-user@public_dns:/home/ec2-user/Sample_file.txt
écrire ce code
scp -r -o "ForwardAgent=yes" /Users/pengge/11.vim [email protected]:/root/
Si vous avez une clé SSH avec accès au serveur de destination et que le serveur source n'en a pas, l'ajout de -o "ForwardAgent = yes" vous permettra de transférer votre agent SSH sur le serveur source afin qu'il puisse utiliser votre clé SSH pour se connecter. le serveur de destination.