Назад | Перейти на главную страницу

Nginx ssl - SSL: ошибка: 0906D06C: подпрограммы PEM: PEM_read_bio: нет начальной строки

Я пытаюсь включить 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 - это выданный мне crt, связанный с crt.

Обновить

Я попытался скопировать оба ключа в файлы sperate, а затем запустить cat mykey.crt >> ca.cert

Также я попытался вручную скопировать ключи в тот же файл.

Любые идеи?

Спасибо за вашу помощь, вот как я решил это:

  • Скопируйте сертификаты в текстовый редактор, чтобы убедиться, что нет пробелов (я уже сделал это)

  • Убедитесь, что операторы начала и конца сертификата находятся в отдельной строке и имеют одинаковое количество «-» на каждом конце.

  • Убедитесь, что каждая строка содержит 64 символа (кроме последней строки)

Я оказался с тем же исключением и исправил его, добавив закрытый ключ (x.509 + закрытый ключ в конце) в тот же файл pem (формат pem). Я думаю, это потому, что я использовал тот же формат и проверял конфигурацию с помощью "nignx -t".

Надеюсь, поможет.