web-dev-qa-db-fra.com

Autorisation SCP refusée (publickey). sur EC2 uniquement lorsque l'option -r est utilisée sur les répertoires

scp -r /Applications/XAMPP/htdocs/keypairfile.pem uploads ec2-user@publicdns:/var/www/html

où uploads est un répertoire, retourne Permission denied (publickey).

Toutefois

scp -i /Applications/XAMPP/htdocs/keypairfile.pem footer.php ec2-user@publicdns:/var/www/html

fonctionne (notez le changement de drapeau).

uploads est un dossier vide

Ce sont les autorisations de fichier pour le répertoire de téléchargement

drwxrwxrwx 3 geoffreysangston admin 102 Nov 15 01:40 uploads

Ce sont les permissions de fichiers pour/var/www/html

drwxr-x--- 2 ec2-user ec2-user 4096 Jan 5 20:45 html

J'ai essayé de changer le code HTML en 777 et cela ne fonctionne pas non plus.

46
user3015797

Le -i flag spécifie la clé privée (fichier .pem) à utiliser. Si vous ne spécifiez pas cet indicateur (comme dans votre première commande), il utilisera votre clé ssh par défaut (généralement sous ~/.ssh/).

Donc, dans votre première commande, vous demandez en fait à scp de télécharger le fichier .pem lui-même à l'aide de votre clé ssh par défaut. Je ne pense pas que c'est ce que vous voulez.

Essayez plutôt avec:

scp -r -i /Applications/XAMPP/htdocs/keypairfile.pem uploads/* ec2-user@publicdns:/var/www/html/uploads
99
David Levesque

Même si les solutions ci-dessus ne fonctionnent pas, vérifiez les autorisations sur le fichier de destination de l'instance aws ec2. Peut-être que vous pouvez essayer avec- Sudo chmod 777 -R destinationFolder/*

18

transfert de fichier d'un hôte local vers un hôte distant

scp -i (chemin de votre clé) (chemin de votre fichier à transférer) (nom d'utilisateur @ ip) :( chemin où le fichier doit être copié)

e.g scp -i aws.pem /home/user1/Desktop/testFile   ec2-user@someipAddress:/home/ec2-user/

P.S. - ec2-user @ someipAddress de cette adresse IP devrait avoir accès au dossier de destination dans mon cas/home/ec2-user /

16
GKV

Si vous voulez télécharger le fichier /Applications/XAMPP/htdocs/keypairfile.pem à ec2-user@publicdns:/var/www/html, vous pouvez simplement faire:

scp -Cr /Applications/XAMPP/htdocs/keypairfile.pem/uploads/ ec2-user@publicdns:/var/www/html/

Où:

  • -C - Compresser les données
  • -r - Récursif
2
archetipo