Этот поток имеет хорошее обсуждение темы. Короткий ответ: 1,015. Более длинный ответ: меньше, в зависимости от того, какому количеству групп они принадлежат, вкладываются в других группах.
У меня была та же проблема. Я просто заменил эти строки в /etc/apache2/site-enabled/default-ssl.conf
SSLCertificateFile /etc/ssl/certs/domain.crt
SSLCertificateKeyFile /etc/ssl/private/domain.key
#SSLCertificateChainFile /etc/apache2/ssl.crt/chain.crt
, Как Вы видите, я просто прокомментировал SSLCertificateChainFile
. Затем рассматривая ту же ошибку как Вас, я связал содержание моего chain.crt
в конце из эти domain.crt
, как так:
root@host~: cat /etc/apache2/ssl.crt/chain.crt >> /etc/ssl/certs/domain.crt
И это работало как очарование.
Я использую следующий сценарий для создания пакета сертификата, который содержит цепочечный сертификат.
#!/bin/sh
#
# Convert PEM Certificate to ca-bundle.crt format
#
test ! $1 && printf "Usage: `basename [110]` certificate" && exit 1
# Friendly Name and Underline Friendly Name with equal signs
openssl x509 -in $1 -text -noout | sed -e 's/^ *Subject:.*CN=\([^,]*\).*/\1/p;t c' -e 'd;:c' -e 's/./=/g'
# Output Fingerprint and swap = for :
openssl x509 -in $1 -noout -fingerprint | sed -e 's/=/: /'
# Output PEM Data:
echo 'PEM Data:'
# Output Certificate
openssl x509 -in $1
# Output Certificate text swapping Certificate with Certificate Ingredients
openssl x509 -in $1 -text -noout | sed -e 's/^Certificate:/Certificate Ingredients:/'
Для использования его, начиная с сертификата сервера и последовательно через любые посреднические сертификаты в цепочке сертификата назад к корневому сертификату.
./bundle.sh myserver.crt >myserver.chain
./bundle.sh intermediate.crt >>myserver.chain
./bundle.sh root.crt >>myserver.chain
, где соответствующие названия сертификата заменяются Вашим реальным названием сертификата.
Имейте сертификат сайта, промежуточные звенья также в файле, указанном директивой SSLCertificateFile и закрытым ключом, связанным в файле, указанном SSLCertificateKeyFile, и Вы должны быть все установлены. Хотя у Вас мог быть закрытый ключ в том же файле как сертификаты, но этому препятствуют. Проверьте документацию на большее количество деталей:
http://httpd.apache.org/docs/current/mod/mod_ssl.html#sslcertificatefile
я рекомендовал бы, чтобы корневой сертификат CA не был частью SSLCertificateFile, так как у клиента должен быть корневой сертификат CA, столь же доверяемый для проверки сертификата для работы, как разработано.
кроме того, если нет ничего в апачских журналах ошибок затем, что можно было бы поместить журнал ошибок в более прекрасную гранулярность как в http://httpd.apache.org/docs/current/mod/core.html#loglevel