Если я просто использую "SSLCertificateFile" и "SSLCertificateKeyFile" дважды, цепочка сертификата повреждается для первой.
Я могу использовать и RSA и сертификат ECC, который выпущен из другого промежуточного сертификата CA?
==================
Обновление: OpenSSL 1.0.2 Решает проблему. Просто используйте "SSLCertificateFile" и "SSLCertificateKeyFile" дважды. Обратите внимание, что "SSLCertificateFile" должен быть целой цепочкой сертификата.
Это возможно в зависимости от версии Apache и версии OpenSSL.
Для параллельного запуска сертификатов ECC и RSA на Apache с использованием различных промежуточных сертификатов требуются Apache 2.4.8+ и OpenSSL 1.0.2+.
В записи sslcertificatefile
добавлена поддержка промежуточных звеньев, начиная с Apache 2.4.8. OpenSSL добавляет возможность загрузки промежуточных звеньев для каждого сертификата, начиная с версии 1.0.2.
Файлы могут также включать промежуточные сертификаты CA, отсортированные от листа к корневому. Это поддерживается версией 2.4.8 и новее, и SSLCertificateChainFile устарел. При работе с OpenSSL 1.0.2 или более поздней версии это позволяет настраивать цепочку промежуточных центров сертификации для каждого сертификата.
Источник: http://httpd.apache.org/docs/2.4/mod/mod_ssl .html # sslcertificatefile
Хотя более ранние версии Apache поддерживают несколько записей sslcertificatefile
, они не загружают промежуточные данные из этих записей, а SSLCertificateChainFile
можно использовать только один раз. Поэтому в более ранних версиях вы все еще можете запускать сертификаты ECC / RSA / DSA параллельно, но все они должны использовать одно и то же промежуточное звено.
Но будьте осторожны: предоставление цепочки сертификатов работает только в том случае, если вы используете один сертификат сервера на основе RSA или DSA. Если вы используете пару связанных сертификатов RSA + DSA, это будет работать, только если на самом деле оба сертификата используют одну и ту же цепочку сертификатов. Иначе в этой ситуации браузеры запутаются.
Источник: http://httpd.apache.org/docs/2.4/mod/mod_ssl.html#SSLCertificateChainFile