Подтвердить что ты не робот

Почему для Apache требуется SSLCertificateKeyFile?

Какова техническая причина SSLCertificateKeyFile (частный ключ)? Где это используется и для чего?

4b9b3361

Ответ 1

Файл сертификата SSL содержит сертификат X.509 (который, в свою очередь, содержит открытый ключ, используемый для шифрования). Файл ключа SSL-сертификата содержит закрытый ключ, соответствующий открытому ключу сертификата. Для того, чтобы веб-сервер шифровал и расшифровывал трафик, он должен иметь как открытый ключ (сертификат), так и соответствующий закрытый ключ. Apache, в отличие от многих других серверных продуктов, хранит ключ и сертификат в отдельных файлах. Например, продукты на основе Java обычно используют файлы Java KeyStore, которые являются зашифрованной базой данных, содержащей как сертификат, так и закрытый ключ.

Ответ 2

Обычно есть три директивы:

SSLCertificateFile /opt/csw/apache2/certs/icompany/publicCert.pem
SSLCertificateChainFile /opt/csw/apache2/certs/icompany/chain.pem
SSLCertificateKeyFile /opt/csw/apache2/certs/icompany/PrivateKeyCert.pem

SSLCertificateFile должен содержать только общедоступную часть вашего сертификата, которую вы хотите доставить с веб-сайта клиенту.

Если указан SSLCertificateChainFile, веб-сервер присоединяет соответствующие сертификаты (для создания цельной цепочки к корневому ЦС) к сертификату веб-сервера. Вы также можете поместить частную часть своего сертификата в файл, как указано в SSLCertificateFile, но это рекомендуется для НЕ по соображениям безопасности (например, на веб-сервере есть ошибка, происходит буферизация потока и выводится закрытый ключ для злоумышленника).

Вместо этого поместите только закрытый ключ в отдельный файл и объявите его в SSLCertificateKeyFile

Ответ 3

Обзор криптографии с открытым ключом, включая использование закрытых ключей:

http://en.wikipedia.org/wiki/Public-key_cryptography#How_it_works

И подробная разбивка всех шагов, используемых в TLS, протокол, используемый вашим сервером для трафика https, который показывает, где именно используется закрытый ключ:

http://en.wikipedia.org/wiki/Transport_Layer_Security