Невозможно выполнить scp с удаленного на локальный Mac

Невозможно выполнить scp с удаленного на локальный Mac

Я просмотрел посты SU и SO в поисках способа заставить это работать, но я собираюсь поднять руки и остановиться на GUI. Я хочу перенести scpZIP-файл с удаленного сервера на свою локальную машину. Я могу нормально подключиться по SSH. Я могу создавать, удалять, редактировать и т. д., но не могу загрузить ZIP-файл. Пока что это «ближайший» вариант.

# scp backup.zip [email protected]:/Users/Steven/Desktop/test.

Для ясности, "backup.zip" — это то, что я хочу скачать с сервера, и оно находится в моем текущем каталоге. "Steven" — это мое имя пользователя на моем ноутбуке. Я зачеркнул IP-адрес моей локальной машины единицами, а path — это путь к месту, куда я хочу скопировать.

Однако при этом я получаю:

ssh: connect to host 111.111.111.11 port 22: Connection timed out lost connection

Забавно, что меня не выгружают из сеанса. Он просто оставляет меня там, где я был до ввода команды. Я что-то не понимаю в синтаксисе?

решение1

Правильно ли я понимаю, что вы используете SSH для подключения к удаленному хосту, а затем запускаете scpна удаленном хосте копирование файла обратно на локальный хост?

Не имея никаких сведений об этих двух хостах, вполне возможно, что ваш локальный хост может устанавливать SSH-подключения к удаленному, но удаленный хост не может устанавливать SSH-подключения к локальному.

Если вы можете установить SSH-подключение с локального хоста на удаленный хост, вы можете запустить scpна локальном хосте вместо удаленного:

scp remoteuser@remotehost:/path/to/backup.zip /Users/Steven/Desktop/test/

решение2

Вы уверены, что ваш локальный Mac доступен по этому IP-адресу с удаленной машины? Например, если у вас есть частный адрес RFC 1918, такой как 192.168.xy на вашем локальном Mac, потому что он находится за шлюзом NAT, а удаленная машина находится на публичной стороне шлюза NAT, то удаленная машина не сможет связаться с вашим локальным Mac по этому адресу, потому что частные адреса RFC 1918 не маршрутизируются. Вам придется установить сопоставление портов на вашем шлюзе NAT, чтобы сопоставить порт 22 с его публичного адреса с портом 22 на частном адресе Mac, а затем scpс публичным адресом шлюза NAT.

Или сделайте то, что предложил @Kenster, и выполните scpкоманду наоборот, с локальной машины.

Связанный контент