1

Я использую Cygwin на Windows 7. Я установил клиент OpenSSH и использую его для подключения к серверу Ubuntu, установленному на virtualbox через localhost. Я подключаюсь через SSH с этой командой:

ssh -p 3022 root@127.0.0.1

Но когда я пытаюсь использовать ту же команду для подключения через sftp, я получаю это сообщение:

ssh: не удалось разрешить имя хоста 3022: имя или служба неизвестны
Соединение закрыто

Команда, которую я использую, это

sftp -p 3022 root@127.0.0.1

Любая идея, почему я могу подключиться через ssh, но не через sftp?

1 ответ1

1

Потому что с sftp ключ -p имеет другое значение. Это означает "всегда береги время". Это переключатель без аргументов, поэтому следующий 3022 интерпретируется как отдельный аргумент (= имя хоста).

Чтобы установить пользовательский порт, используйте ключ -P (заглавная P), поддерживаемый OpenSSH 5.4p1 и новее:

sftp -P 3022 root@127.0.0.1

В старых версиях OpenSSH используйте:

sftp -o Port=3022 root@127.0.0.1

Помните, что в некоторых старых версиях OpenSSH -P имел еще одно значение.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .