Задача — настроить безпопасное соединение (ssl, которое сейчас tls) к вашему хосту, на котором работает apache2. Самоподписанные сертификаты нам не подходят, так как требуется чтобы с нашим сайтом работали интернет магазины. Они самоподписанным сертификатам не доверяют.
Заказываем сертификаты на доверенном центре сертификации:
В апаче в контексте насройки ключей ssl есть следующие параметры:
SSLCertificateFile
SSLCertificateKeyFile
SSLCertificateChainFile
С первыми двумя все понятно, это Сертификат нашего сайта и Приватный ключ. Решение было найдено на сайте redhat — в SSLCertificateChainFile нужно записать полученный
— Корневой сертификат
— Промежуточный сертификат
Использовать текстовые редакторы windows как советует документация nic.ru не рекомендую, так как есть опасность добавления в сертификат непечатных символов (например блокнот в начало файла может добавить BOM)
Делаем всё консольными средствами юникс:
cp root_pem_globalsign_ssl_dv_1.crt SSLCertificateChainFile.crt
echo >> SSLCertificateChainFile.crt # переход строки между сертификатами
cat intermediate_pem_globalsign_ssl_dv_1.crt_orig >> SSLCertificateChainFile.crt
Визуальная проверка, что все вставилось успешно в нужный файл:
cat SSLCertificateChainFile.crt
Осталось скорректировать расположение и имена сертификатов в /etc/apache2/sites-enabled/default-ssl.conf:
SSLCertificateFile /etc/ssl/certs/<мой приватный сертификат>
SSLCertificateKeyFile /etc/ssl/private/<ключ к моему приватному сертификату>
SSLCertificateChainFile /etc/ssl/certsSSLCertificateChainFile.crt
Спасибо за внимание!