В прошлом я наткнулся на несколько руководств, описывающих, как добиться настройки ssh без пароля, но некоторые из них, к сожалению, ошибочны.
Давайте начнем сначала и проверим каждый шаг:
ssh-keygen -t rsa
id_rsa.pub
и id_rsa
) будут автоматически сохранены в каталоге ~/.ssh/
. ssh-copy-id user@server
~/.ssh/authorized_keys
. ssh user@server
Теперь, если после описанных трех шагов все еще не работает, попробуем следующее:
~/ssh
на машине клиента и сервера. /etc/ssh/sshd_config
на сервере, чтобы убедиться, что опции RSAAuthentication
, PubkeyAuthentication
и UsePAM
не отключены, они могут быть включены по умолчанию с помощью yes
. ssh-agent
и ssh-add
для достижения беспарольных соединений в вашей сессии. /var/log/auth.log
на сервере, чтобы найти проблему, почему аутентификация ключа вообще пропускается. Сертификаты добавляются в базу данных сертификатов ЦС с помощью команды update-ca-certificates
. Это сценарий оболочки, который сканирует каталоги исходных сертификатов и добавляет все найденные сертификаты в пакет сертификатов (/etc/ssl/certs/ca-certificates.crt
), а также создает символическую ссылку в /etc/ssl/certs
на сертификат.
Файл ca-certificates.crt
представляет собой объединение сертификатов, каждый в формате PEM.
Сценарий не преобразует какие-либо форматы сертификатов, поэтому предполагается, что все сертификаты в исходных папках имеют формат PEM с расширением файла .crt
.
There are different methods of storing a certificate file? DER, PEM, PKCS: PKCS7 & PKCS12?
Да, это так.
И,
Are all of these formats accept as valid in /usr/local/share/ca-certificates?
Из man update -ca -раздел FILES сертификатов:
/usr/local/share/ca-certificates
Directory of local CA certificates (with.crt extension).
Я думаю, что ответ отрицательный, только формат PEM.crt может быть принят там как действительный, используйте его, чтобы быть уверенным.