Я пытаюсь использовать SCP на своем локальном сервере для копирования файла с одного удаленного сервера на другой удаленный сервер (оба удаленных сервера используют собственный порт (xxxx)
Я стараюсь:
scp -r -P xxxx root@xxx.xxx.xxx.111:/home/myimages/images.tar.gz root@xxx.xxx.xxx.222:/home/myimages/images.tar.gz
Но я получаю следующую ошибку:
ssh: connect to host xxx.xxx.xxx.222 port 22: Connection timed out
Какие-либо предложения?
Ответы:
Вы проверили, что прямая аутентификация работает с первого удаленного хоста на второй?
scp user@host:/file user@otherhost:/otherfile
это сокращение дляssh user@host scp /file user@otherhost:/otherfile
что заставляет меня думать:
ssh -p XXX user@host scp -P XXX /file user@otherhost:/otherfile
может работать.источник
Кажется, что
scp
не понимает, что специальный порт должен также использоваться на втором сервере. Вы можете попробовать явно позвонить,ssh
чтобы начать удаленнуюscp
передачу:источник
Определите серверы на вашем
.ssh/config file
, например:Затем вы можете просто сделать:
и он будет использовать определенные пользовательские порты.
источник
У меня есть удаленные серверы, которые не могут видеть друг друга, но мой локальный сервер может видеть оба. Демон ssh на удаленных серверах прослушивает разные нестандартные порты ssh. Вот как я это сделал:
Вторая команда ssh сначала запрашивает пароль, затем remote1 запрашивает пароль для пользователя A. Это может быть автоматизировано, если вы настроили авторизованные ключи ssh, что не так в моей среде.
источник