Я просмотрел посты SU и SO в поисках способа заставить это работать, но я собираюсь поднять руки и остановиться на GUI. Я хочу перенести scp
ZIP-файл с удаленного сервера на свою локальную машину. Я могу нормально подключиться по 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
команду наоборот, с локальной машины.