Назад | Перейти на главную страницу

Почему сертификат ssl может не пройти проверку после установки корневого сертификата?

Я создаю центр сертификации openssl для интрасети.

у меня есть root.crt, intermediate.crt который подписан корнем, и server.crt который подписан промежуточным звеном.

Я могу проверить промежуточное значение на корень

#> openssl verify -CAfile root.crt intermediate.crt && echo ok
ok

В Ubuntu я могу установить корневой сертификат

#> mv root.crt /usr/local/share/ca-certificates/my-root.crt
#> update-ca-certificates 
Updating certificates in /etc/ssl/certs...
0 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d...

done.
done.

Но если я попытаюсь проверить сервер на промежуточном уровне, это не удастся.

#> openssl verify -CAfile intermediate.crt server.crt && echo ok
error 2 at 1 depth lookup:unable to get issuer certificate

Я думаю, это означает, что он не может проверить всю цепочку server.crt -> intermediate.crt -> my-root.crt.

Я проверил сертификаты вручную с openssl x509 -noout -text и выглядят они нормально: Issuer для server.crt соответствует теме промежуточного сертификата, для двух других он соответствует корню, а даты находятся в правильном диапазоне.

Цель состоит в том, чтобы распространить серверные и промежуточные сертификаты в приложениях, а также установить глобальный корневой сертификат. Клянусь, это сработало некоторое время назад, так что я упустил?