SSH Auth
В продолжение старой темы хотел задать вопрос. В чем различие между SSH авторизацией в Linux и в Windows (используется Putty).
MiddleWare OpenSC, ключ инициализирован и в нем сделан приватный RSA длиной 2048 бит.
$ pkcs15-init --erase-card
$ pkcs15-init --create-pkcs15 --so-pin "87654321" --so-puk ""
$ pkcs15-init --store-pin --label "User PIN" --auth-id 02 --pin "12345678" --puk ""
$ pkcs15-init --generate-key rsa/2048 --auth-id 02
При запросе через pkcs15-tool --read-ssh-key 45 получаю публичный ключ и могу авторизоваться на сервере. Однако в Windows так сделать не удается(в putty подключаю opensc-pkcs11.dll, программа ключ видит), в логе SSH на сервере:
Feb 14 13:05:27 localhost sshd[24919]: error: buffer_get_ret: trying to get more bytes 4 than in buffer 1
Feb 14 13:05:27 localhost sshd[24919]: error: buffer_get_string_ret: cannot extract length
Feb 14 13:05:27 localhost sshd[24919]: fatal: buffer_get_string: buffer error
С аладдиновскими токенами все наоборот нормально работает, но там всплывают другие проблемы (кроссплатворменность и прочее).
Вопрос вот в чем. Для того, чтобы такой трюк удался надо все-таки использовать ruToken ECP или же можно ограничится ruToken S. Если да, то что я неверно делал?