Ich kann nicht scp, der andere Server nimmt nur SFTP-Verbindungen.
Derzeit versuche ich zu tun
sftp [email protected]:/files> put -r ~/
-i keyname
funktioniert nicht, löst nur mit illegal option -- i
.
Ich kann nicht scp, der andere Server nimmt nur SFTP-Verbindungen.
Derzeit versuche ich zu tun
sftp [email protected]:/files> put -r ~/
-i keyname
funktioniert nicht, löst nur mit illegal option -- i
.
Versuchen:
sftp -o "IdentityFile=keyname" [email protected]
Sie können -o
jede Option übergeben, die in gültig ist ~/.ssh/config
.
IdentityFile
Option immer automatisch vergeben werden soll, lesen Sie die Antwort von UtahJarhead zum Einfügen~/.ssh/config
Kopieren Sie Ihren PUBLIC-Schlüssel auf herkömmliche Weise auf den Server.
Auf dem Server:
.ssh
wenn es nicht existiert:Danach sollten Sie sich mit dem PRIVATE-Schlüssel vom Client aus anmelden können. Um eine Übertragung zu automatisieren, möchten Sie eine Stapeldatei verwenden, bei der es sich lediglich um eine Textdatei handelt, die eine Liste der auszuführenden Befehle enthält.
Alternativ können Sie auch eine ~ / .ssh / config-Datei im ssh_config-Format erstellen, damit Sie dies in Zukunft einfach eingeben können:
Beispielinhalt von
~/.ssh/config
quelle
Wenn Sie sftp auf ec2 einrichten möchten, kann dieser Artikel hilfreich sein
quelle
Ich habe mich vor kurzem mit diesem Problem befasst und bei meinem MacBook-Standard-Terminal-Setup hat Folgendes funktioniert
Beachten Sie, dass Sie möglicherweise mit einer NICHT GESCHÜTZTEN PRIVATEN SCHLÜSSELDATEI befördert werden! In diesem Fall müssen Sie diesen Befehl ausführen, um sicherzustellen, dass andere Benutzer nicht auf Ihren privaten Schlüssel zugreifen können.
In einigen Fällen müssen Sie sudo vor den Befehl stellen. Dies ist nur möglich, wenn Sie in einem admin-geschützten Verzeichnis arbeiten
Ich wünschte, das wäre hilfreich :)
quelle
-i
Option nicht funktioniert?