SCP dari satu server eksternal ke yang lain

12

Saya mencoba menggunakan SCP di server lokal saya untuk menyalin file dari satu server jarak jauh ke server jarak jauh lain (kedua server jarak jauh menggunakan porta khusus (xxxx)

Aku sedang mencoba:

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

Tapi saya mendapatkan kesalahan berikut:

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

Ada saran?

Kadal
sumber
Saya kira Anda dapat ssh ke xxx.xxx.xxx.222 secara normal?
Ya, saya bisa ssh ke semua server dari semua server
Lizard
Cross diposting di sini: serverfault.com/questions/81650/...
Dijeda sampai pemberitahuan lebih lanjut.

Jawaban:

17

apakah Anda memeriksa bahwa otentikasi langsung berfungsi dari host jarak jauh pertama ke yang kedua?

scp user@host:/file user@otherhost:/otherfile adalah singkatan

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

yang membuat saya berpikir:

ssh -p XXX user@host scp -P XXX /file user@otherhost:/otherfile mungkin bekerja.

jhwist
sumber
1
Ya, saya ssh'd ke kedua server dari setiap server :(
Lizard
Poin bagus, hanya karena Anda dapat melihat xxx.222 tidak berarti bahwa xxx.111 dapat.
Ini poin yang bagus, tapi saya sudah memeriksanya, ada saran lain?
Lizard
Ssh maka scp melakukan apa yang saya butuhkan.
Lizard
3

Sepertinya scptidak menyadari bahwa port khusus juga harus digunakan pada server kedua. Anda dapat mencoba menelepon secara eksplisit sshuntuk memulai scptransfer jarak jauh :

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

Tetapkan server di Anda .ssh/config file, misalnya:

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

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

Anda kemudian bisa melakukan:

scp foobar:file foobar2:

dan itu akan menggunakan port khusus yang ditentukan.

sameproblemIhad
sumber
3

Saya punya server jarak jauh yang tidak dapat saling melihat, tetapi server lokal saya dapat melihat keduanya. Daemon ssh di server jauh mendengarkan di berbagai port ssh non-standar. Inilah cara saya menyelesaikan ini:

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

Perintah ssh kedua meminta kata sandi terlebih dahulu, kemudian remote1 meminta kata sandi untuk userA. Anda mungkin memiliki ini otomatis jika Anda telah mengatur kunci ssh resmi, yang tidak terjadi di lingkungan saya.

Joss
sumber