Ich habe eine EC2-Instanz ausgeführt (FreeBSD 9 AMI ami-8cce3fe5) und kann mit meiner von Amazon erstellten Schlüsseldatei ohne Kennwortabfrage problemlos darauf zugreifen.
Wenn ich jedoch eine Datei mit scp in die Instanz kopieren möchte, werde ich aufgefordert, ein Kennwort einzugeben:
scp somefile.txt -i mykey.pem [email protected]:/
Password:
Irgendwelche Ideen, warum dies geschieht / wie es verhindert werden kann?
-i
Option verwenden, um Ihre Identität anzugeben. Möglicherweise sollten Sie auch den Befehl anzeigen, mit dem Sie sich mit ssh anmelden.Antworten:
Ich habe es herausgefunden. Ich hatte die Argumente in der falschen Reihenfolge. Das funktioniert:
quelle
ssh
Befehl inscp
und fügen Sie die Namensdatei nach der PEM-Datei hinzu.[email protected]:/home/ec2-user
leicht durch die kürzere und einfachere[email protected]:./
./
FTW ersetzt werden!quelle
Ich habe den folgenden Befehl verwendet, um von lokalem Linux Centos 7 nach AWS EC2 zu kopieren.
quelle
Den Kommentar von siliconerockstar zu einer Antwort zu machen, da er für mich funktioniert hat
quelle
Der Dateiname sollte nicht zwischen der PEM-Datei und der ec2-Benutzerzeichenfolge liegen - das funktioniert nicht. Auf diese Weise können Sie auch den Namen der kopierten Datei reservieren.
quelle
Kopieren Sie eine Datei von einem lokalen Server auf einen Remote-Server
Kopieren Sie eine Datei von einem Remote-Server auf einen lokalen Computer
Die grundlegende Syntax lautet also:
-i
ist für die Identitätsdateiquelle
Nehmen wir an, dass sich Ihre PEM-Datei und die Datei somefile.txt, die Sie senden möchten, im Ordner Downloads befinden
Lass es mich wissen, wenn es nicht funktioniert
quelle
:/
am Ende "Zugang verweigert" bekommen, aber:~/
damit funktioniert esscp -i /home/barkat/Downloads/LamppServer.pem lampp_x64_12.04.tar.gz
Das wird euch allen sehr hilfreich sein
quelle
Meine
hadoopec2cluster.pem
Datei war die einzige im Verzeichnis auf meinem lokalen Mac, konnte sie nicht mit aws scpscp -i hadoopec2cluster.pem hadoopec2cluster.pem ubuntu@serverip:~
.Kopierte hadoopec2cluster.pem nach hadoopec2cluster_2.pem und dann
scp -i hadoopec2cluster.pem hadoopec2cluster_2.pem ubuntu@serverip:~
. Voila!quelle
Ich wurde aufgehängt, weil ich meine öffentliche Schlüsseldatei in angegeben habe
Als ich diesen Fehler bemerkte und ihn stattdessen in den Pfad des privaten Schlüssels änderte, war ich fertig.
quelle
In Ihrem Fall hat der Benutzer
root
keine Probleme. Stellen Sie jedoch in bestimmten Fällen, in denen Sie sich unter SSH als anderer Benutzer anmelden müssen, sicher, dass das Verzeichnis, das Sie verwenden,scp
über ausreichende Berechtigungen für den Benutzer verfügt, den Sie mit SSH bearbeiten.quelle
Um PSCP verwenden zu können, benötigen Sie den privaten Schlüssel, den Sie beim Konvertieren Ihres privaten Schlüssels mit PuTTYgen generiert haben. Sie benötigen auch die öffentliche DNS-Adresse Ihrer Linux-Instanz
quelle
Schreiben Sie diesen Code
Wenn Sie einen SSH-Schlüssel mit Zugriff auf den Zielserver haben und der Quellserver nicht, können Sie Ihren SSH-Agenten durch Hinzufügen von -o "ForwardAgent = yes" an den Quellserver weiterleiten, damit er mit Ihrem SSH-Schlüssel eine Verbindung herstellen kann der Zielserver.
quelle
Gerade getestet:
Führen Sie den folgenden Befehl aus:
Dann:
quelle