Ich versuche, SCP auf meinem lokalen Server zu verwenden, um eine Datei von einem Remoteserver auf einen anderen Remoteserver zu kopieren (beide Remoteserver verwenden einen benutzerdefinierten Port (xxxx).
Ich versuche:
scp -r -P xxxx root@xxx.xxx.xxx.111:/home/myimages/images.tar.gz root@xxx.xxx.xxx.222:/home/myimages/images.tar.gz
Aber ich bekomme folgenden Fehler:
ssh: connect to host xxx.xxx.xxx.222 port 22: Connection timed out
Irgendwelche Vorschläge?
Antworten:
Haben Sie überprüft, ob die direkte Authentifizierung vom ersten zum zweiten Remote-Host funktioniert?
scp user@host:/file user@otherhost:/otherfile
ist eine Abkürzung fürssh user@host scp /file user@otherhost:/otherfile
was mich zum Nachdenken bringt:
ssh -p XXX user@host scp -P XXX /file user@otherhost:/otherfile
könnte funktionieren.quelle
Es scheint
scp
nicht klar zu sein, dass der spezielle Port auch auf dem zweiten Server verwendet werden sollte. Sie könnten versuchen, explizit aufzurufenssh
, um die Fernübertragung zu startenscp
:quelle
Definieren Sie die Server in Ihrem
.ssh/config file
Beispiel:Sie können dann einfach tun:
und es werden die definierten benutzerdefinierten Ports verwendet.
quelle
Ich habe Remote-Server, die sich nicht sehen können, aber mein lokaler Server kann beide sehen. Der ssh-Daemon auf den Remote-Servern überwacht verschiedene nicht standardmäßige ssh-Ports. So mache ich das:
Der zweite Befehl ssh fragt zuerst nach dem Kennwort, dann fragt remote1 nach dem Kennwort für Benutzer A. Sie können dies automatisieren lassen, wenn Sie autorisierte SSH-Schlüssel eingerichtet haben, was in meiner Umgebung nicht der Fall ist.
quelle