Я пытаюсь включить ssl на сервере, используя сертификат от 123-reg, но я получаю эту ошибку:
nginx: [emerg] SSL_CTX_use_certificate_chain_file("/opt/nginx/conf/cleantechlms.crt") failed (SSL: error:0906D06C:PEM routines:PEM_read_bio:no start line error:140DC009:SSL routines:SSL_CTX_use_certificate_chain_file:PEM lib)
Это мой конфиг nginx:
server {
listen 443;
server_name a-fake-url.com;
root /file/path/public;
passenger_enabled on;
ssl on;
ssl_certificate /opt/nginx/conf/cleantechlms.crt;
ssl_certificate_key /opt/nginx/conf/cleantechlms.key;
}
Я попытался установить мой crt и ключ для полных прав доступа к файлу, но нет никакой разницы.
Мой файл crt - это тот элт-диск, который мне выдан, соединенный с ca crt.
Обновить
Я попытался скопировать оба ключа в отдельных файлах и затем запустить 'cat mykey.crt >> ca.cert'
Также я попытался вручную скопировать ключи в тот же файл.
Любые идеи?
/opt/nginx/conf/cleantechlms.crt
сломан как-то. Как ты это создал? Не могли бы вы опубликовать все шаги, которые вы сделали?cleantechlms.crt
вы хотите иметь только ваш публичный сертификат без ключа и цепочки сертификатов от вашего ca. Если вы откроете его в текстовом редакторе, вы должны увидеть только --BEGIN-CERTIFICATE-- blocks ..Ответы:
Спасибо за вашу помощь, вот как я решил это:
Скопируйте сертификаты в текстовый редактор, чтобы убедиться, что нет пробелов (я уже сделал это)
Убедитесь, что начальные и конечные операторы сертификата находятся в отдельной строке и имеют одинаковое число «-» на каждом конце.
Убедитесь, что каждая строка имеет 64 символа (кроме последней строки)
источник
Я закончил с тем же исключением и исправил его, добавив закрытый ключ (x.509 + privatekey в конце) в тот же файл pem (формат pem). Я думаю, потому что раньше у меня был тот же формат и проверка конфигурации с помощью "nignx -t".
Надеюсь, поможет.
источник