BIT Design: web site design +7 (903) 363-85-36   |   info@bitdesign.ru

> Главная > Статьи > Как настроить ssh сервер на Windows 10

Как настроить ssh сервер на Windows 10

6.01.2018

Казалось бы все просто, есть подробная инструкция, выполнив которую можно ожидать работающий ssh сервис. И действительно, сервис завелся, соединиться с ним из-под Linux получилось. Но только вводя логи и пароль ручками, настроить соединение без пароля по ключу не удавалось никак. Пришлось перерыть весь интернет на эту тему, в процессе был настроен лог сервера, в самом подробном виде

> sshd_config
LogLevel DEBUG3

и перепробованы все варианты всех других, сколько-нибудь подходящих для решения проблемы настроек. Чтобы видеть максимум подробностей на стороне клиента:

# ssh -vvv User@192.168.0.98

Ничего не помогало, сервер молча игнорировал открытый ключ, созданный командой

# ssh-keygen -t rsa-sha2-512

Все другие алгоритмы ключа тоже были перепробованы. В логе сервера наблюдалось следующее:

19852 01:51:46:772 debug1: unable to send pubkeyauth request
19852 01:51:46:772 debug2: userauth_pubkey: authenticated 0 pkalg rsa-sha2-512
19852 01:51:46:772 Failed publickey for User from 192.168.0.129 port 33580 ssh2: RSA SHA256:3Db7MgNFWU0...

Поиск в интернете "unable to send pubkeyauth request" и "Failed publickey for sr from" в сочетании с "windows 10" и другими словами - ничего не дал. Зато стало понятно, что существуют и другие проблемы с настройкой ssh под Windows 10 - много рекомендаций было связано с настройкой прав на папку .ssh, файл authorized_keys и саму папку C:\Program Files\OpenSSH - кто-то поначалу распаковал архив с файлами в другую папку, а после изменения на приведенный вариант заработало. Также много рекомендаций попадалось насчет того, от какой учетной записи нужно запускать сервис. Их там на самом деле два: sshd и ssh-agent. Снова безрезультатно, были перепробованы разные варианты прав. Вспоминались старинные выражения сукс и мастдай (применительно к Windows) и приходило чуть ли не отчаяние от того, что Linux-Linux соединение с использованием ключа настраивается в считанные несколько минут. Но требовалось соединение именно с Windows 10.

Прошли многие часы борьбы и многократного внимательного просмотра результатов поиска по вышеописанным мотивам. На одном из форумов в самом конце был короткий рецепт "переустановить" сервис, несколько раз я прошел мимо, но все другие уже были перепробованы. И сработало. В процессе установки там запускается скрипт для установки прав. Подозреваю, что к моменту его запуска нужно уже иметь созданную папку .ssh и в ней файл authorized_keys, чтобы на них поставились нужные права (которые видимо невозможно поставить ручками). В результате для получения работающей авторизации ключом что было сделано:

* файлы распакованы по инструкции в папку C:\Program Files\OpenSSH
* сервис установлен
* папка .ssh создана в процессе исполнения команды ssh-keygen.exe -t..., от пользователя, к которому нужно в конечном итоге настроить соединение
* концы строк в файле authorized_keys LF
* после установки и удаления сервиса каждый раз выполнена перезагрузка компьютера (тоже где-то попадался совет)
* алгоритм ключа ecdsa-sha2-nistp256 (такой алгоритм использован для ключа хоста), соответственно, команда для создания ключа ssh-keygen -t ecdsa-sha2-nistp256
* сервис переустановлен после создания папки .ssh и файла authorized_keys, по исходной инструкции, включая запуск скрипта для постановки прав
* сервис запускается от системной учетной записи, как и настроено установщиком, тут без изменений

Такие вот танцы с бубном.

Спецпредложение

Действует с 26.09.2022 по 30.09.2022
При заказе сайта доменное имя в подарок!

Знаете ли вы что...

Чтобы страницы сайта открывались максимально быстро, нужен качественный хостинг плюс хорошо оптимизированная программная часть сайта (либо отсутствие программной части, когда сайт состоит только из статических страниц).

Услуги | Портфолио | Цены | Диалог | Статьи
© 2001 — 2019 BIT design