SSHd не разрешает аутентификацию по публичному ключу из-за ошибки libcrypto
Я не могу войти на свой сервер с открытым ключом.
Детали сервера:
- Ubuntu Server 16.04LTS
- SSHd: OpenSSH_7.2p2 Ubuntu-4ubuntu2.4, OpenSSL 1.0.2g 1 марта 2016 г.
Мой открытый ключ добавлен в /home/user/.ssh/authorized_keys, но метод аутентификации с помощью открытого ключа пропускается при попытке подключения.
Только одна строка в /var/log/auth.log соответствует:
sshd[3830]: error: key_verify: error in libcrypto
Ubuntu на сервере свежая, только что обновленная до последней версии ядра и пакетов.
У кого-нибудь есть идеи, как я могу преодолеть эту ситуацию?
1 ответ
На самом деле, повышение уровня журнала не обнаружило ничего связанного.
Это только кажется, что клиент просто перепрыгнул через следующий возможный ключ (DSA), который я не получил, и затем метод был отброшен, и пароль был спрошен.
Мой клиент - 14.04LTS, сервер - 16.04LTS.
Ключ был сгенерирован очень давно (к тому времени, когда мне установили 14.04LTS).
Решение состояло в том, чтобы восстановить ключи RSA на клиенте, и теперь это работает как предназначено. Каким-то образом 16.04LTS не имеет обратной совместимости с ключами, сгенерированными давным-давно.