4

Я использую ПК без прав администратора и мне нужно настроить SSH сервер. Я пробовал mobaSSH, а также freeSSHd, но оба требуют привилегий администратора. Затем я обнаружил Win32-OpenSSH, который, кажется, наконец-то работает. Честно говоря, я на самом деле не понимаю, почему такие службы требуют привилегий администратора, потому что я настроил, например, FTP-сервер, прослушивающий порт 21, без проблем, но хорошо, вернемся к вопросу.

Я запустил ssh-keygen.exe -A включенный в Win32-OpenSSH, который создал следующие файлы в каталоге Win32-OpenSSH :

ssh_host_dsa_key
ssh_host_dsa_key.pub

ssh_host_ecdsa_key
ssh_host_ecdsa_key.pub

ssh_host_ed25519_key
ssh_host_ed25519_key.pub

ssh_host_rsa_key
ssh_host_rsa_key.pub

Тогда я запустил sshd.exe . Моей первой попыткой было соединиться с putty.exe с помощью: USERNAME@localhost . Я использовал те же учетные данные, что и для входа в Windows, но это не сработало:

Using username "USERNAME".
USERNAME@localhost's password:
Access denied
USERNAME@localhost's password:

Вторая попытка заключалась в использовании puttygen.exe для преобразования ssh_host_rsa_key в *.ppk файл и загрузки этого файла с помощью pageant.exe а затем используйте тот же шаг, что и в первой попытке. После этого сообщение sshd.exe изменилось, как вы можете видеть, но вход в систему все еще не работал:

Using username "USERNAME".
Authenticating with public key "imported-openssh-key" from agent
Server refused public-key signature despite accepting key!
USERNAME@localhost's password:
Access denied
USERNAME@localhost's password:

Я предполагаю, что сервер установлен правильно и проблема с аутентификацией. Как правильно настроить Win32-OpenSSH для возможности входа в систему, используя пароль или ключ?

1 ответ1

3

Для аутентификации по паролю используйте просто USERNAME . USERNAME@localhost не может работать.


Чтобы аутентификация с открытым ключом работала:

  • Создайте папку .ssh с authorized_keys файл с открытым ключом в ваши окна учетной записи профиля папку (обычно в C:\Users\username\.ssh
  • Убедитесь, что только соответствующая учетная запись Windows имеет доступ на запись к папке и файлу (каков уровень доступа по умолчанию, если вы создаете папку и файл при входе в систему с использованием соответствующей учетной записи).

Подробнее об обоих см. Мое руководство по установке SFTP/SSH-сервера в Windows с использованием OpenSSH.

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