SCP da un server esterno a un altro


12

Sto cercando di utilizzare SCP sul mio server locale per copiare un file da un server remoto a un altro server remoto (entrambi i server remoti utilizzano una porta personalizzata (xxxx)

Sto provando:

scp -r -P xxxx root@xxx.xxx.xxx.111:/home/myimages/images.tar.gz root@xxx.xxx.xxx.222:/home/myimages/images.tar.gz

Ma ottengo il seguente errore:

ssh: connect to host xxx.xxx.xxx.222 port 22: Connection timed out

Eventuali suggerimenti?


Presumo che tu possa ssh a xxx.xxx.xxx.222 normalmente?

Sì, posso inviare ssh a tutti i server da tutti i server
Lizard,

Risposte:


17

hai verificato che l'autenticazione diretta funzioni dal primo host remoto al secondo?

scp user@host:/file user@otherhost:/otherfile è una scorciatoia per

ssh user@host scp /file user@otherhost:/otherfile

che mi fa pensare:

ssh -p XXX user@host scp -P XXX /file user@otherhost:/otherfile potrebbe funzionare.


1
Sì, ho inviato a entrambi i server da ciascun server :(
Lizard

Buon punto, solo perché puoi vedere xxx.222 non significa che xxx.111 può.

È un buon punto, ma l'ho già verificato, altri suggerimenti?
Lizard,

Lo ssh quindi lo scp fa quello di cui ho bisogno.
Lucertola,

3

Sembra che scpnon si renda conto che la porta speciale dovrebbe essere utilizzata anche sul secondo server. Potresti provare a chiamare esplicitamente sshper avviare il scptrasferimento remoto :

ssh -P xxxx user@host scp -P xxxx /file user@otherhost:/otherfile

3

Definisci i server nel tuo .ssh/config file, ad esempio:

Host foobar
User youruser
Port 2222
Hostname the.real.hostname

Host foobar2
User youruser
Port 2222
Hostname the2.real.hostname

Puoi quindi semplicemente fare:

scp foobar:file foobar2:

e utilizzerà le porte personalizzate definite.


3

Ho server remoti che non possono vedersi, ma il mio server locale può vedere entrambi. Il demone ssh nei server remoti è in ascolto in diverse porte ssh non standard. Ecco come ottengo questo fatto:

ssh -p 111 userA@remote1 'cat myfile' | ssh -p 222 userB@remote2 'cat - > myfile'

Il secondo comando ssh richiede prima la password, quindi remote1 richiede la password per l'utenteA. Potresti averlo automatizzato se hai impostato le chiavi autorizzate ssh, il che non è il caso nel mio ambiente.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.