Проблема с SSH (Server refused public-key signature)

Добрый день!

Столкнулся с проблемой при использовании rutoken ecp для SSH аутентификации.

Вводные данные следующие

1. Используется Рутокен ЭЦП.
2. На сервере установлен Ubuntu 12.04.1 (актуальный на текущее время). Так же проверялось на других версиях.
3. На клиенте стоит Windows 7 x64.
4. Драйверы Рутокен 2.85.00.0453.
5. В качестве SSH-клиента используется "Putty на русском языке" (http://putty.org.ru/download.html) с поддержкой PKCS11.
6. Используется XCA 0.9.3 (Win32) для генерации ключей/сертификатов и экспорта их на Рутокен.

Предварительные действия

1. В XCA сгенерирован RSA-ключ 2048, экспортирован в файл, из него получен .PPK-файл для Putty и ssh-rsa строка для сервера
2. На сервер добавлена ssh-rsa строка в authorized_keys
3. Putty настроен на аутентификацию по ключевому файлу, т.е. без использования токена
4. Проверена аутентификация, работает.

Использование Рутокен

1. В XCA ранее созданный RSA-ключ помещен на Рутокен.
2. В XCA с помощью ключа сделан самоподписанный сертификат (т.к. в Putty нельзя выбрать отдельно ключ, только по сертификату)
3. В Putty выбрана PKCS11-библиотека: C:\Windows\System32\rtPKCS11ECP.dll
4. В настойках аутентификации Putty указан ранее созданный сертификат (токен и его содержимое из Putty видно)
5. При попытке подключения возникает ошибка.

Протокол входа с ошибкой

login as: root
Authenticating with public key "test"
Passphrase for smartcard "rutokenecp":
Server refused public-key signature despite accepting key!
root@192.168.246.128's password:

Ошибка "Server refused public-key signature despite accepting key!" поставила в меня тупик.

Подскажите, в чем может быть дело?

Re: Проблема с SSH (Server refused public-key signature)

Похоже, разобрался.

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

Решением проблемы является загрузка ключа с "usage sign".

Re: Проблема с SSH (Server refused public-key signature)

anatolyb пишет:

Похоже, разобрался.

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

Решением проблемы является загрузка ключа с "usage sign".

Не могли бы вы рассказать поподробнее, как это сделать?

Re: Проблема с SSH (Server refused public-key signature)

foxik пишет:

Не могли бы вы рассказать поподробнее, как это сделать?

Конкретно как это сделать в XCA не подскажу.

Я отформатировал токен в OpenSC, а утилита pkcs15-init{.exe} имеет параметр -u (--key-usage), которым можно задавать ограничения на использование ключа.

В OpenSC сейчас нельзя удалять приватные ключи (см. https://forum.rutoken.ru/topic/1726/), это приводит к неработоспособности токена. Поэтому для смены ограничений нужно форматировать токен и заливать/создавать ключи заново.

Re: Проблема с SSH (Server refused public-key signature)

anatolyb пишет:

Конкретно как это сделать в XCA не подскажу.

Я отформатировал токен в OpenSC, а утилита pkcs15-init{.exe} имеет параметр -u (--key-usage), которым можно задавать ограничения на использование ключа.

В OpenSC сейчас нельзя удалять приватные ключи (см. https://forum.rutoken.ru/topic/1726/), это приводит к неработоспособности токена. Поэтому для смены ограничений нужно форматировать токен и заливать/создавать ключи заново.

Спасибо!