..png)
Ich habe eine Synology, die eine Datei vom SFTP-Server herunterladen und archivieren muss.
Früher habe ich WGET verwendet, als das FTP-Protokoll genutzt wurde, aber der Dateieigentümer hat das Protokoll auf SFTP geändert.
wget -m ftp://username:password@host/* -P /volume1/local/folder
Daher kann ich WGET jetzt nicht verwenden und muss etwas anderes verwenden.
Aus meiner Lektüre kann ich verwendensftpoderlftpBefehle.
Die Einzeiler hierfür funktionieren nicht, da das Passwort das Zeichen @ enthält.
Ich habe versucht:
sftp --password="password" "username"@"host":/* /volume1/local/folder
Aber sftp gibt Folgendes aus:
unknown option -- -
Ich kann auch nicht installierensshpass, weil es nicht mehr funktioniert, sobald ich ein Update auf der Synology-Maschine bekomme.
Gibt es eine Möglichkeit, dies zu tun? Sollte ich dies über ein Bash-Skript tun?
PS: Ich kann den SSH-Schlüssel nicht auf dem SFTP-Server installieren. Er gehört einer anderen Entität und diese wird das nicht für mich tun.
AKTUALISIEREN:
lftp -u 'username','password@' 'host' -p 22 "ls; bye"
Das scheint zu funktionieren. Ich versuche, den Download zum Laufen zu bringen.
DerlsDer Befehl zeigt aus irgendeinem Grund diese Ausgabe:
`ls' at 0 [FEAT negotiation...]
UPDATE: Ein bisschen Fortschritt, aber nicht genug:
lftp -u 'username','password@' 'host' -p 22 -e "set ftp:use-feat false; set ssl:verify-certificate no; get FILE.ZIP; bye"
Die Verbindung scheint herzustellen, bleibt aber bei der TLS-Aushandlung hängen:
`FILE.ZIP' at 0 [TLS negotiation...]