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

10

Я пытаюсь включить 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'

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

Любые идеи?

Alex
источник
Ваш /opt/nginx/conf/cleantechlms.crtсломан как-то. Как ты это создал? Не могли бы вы опубликовать все шаги, которые вы сделали?
VBart
В cleantechlms.crtвы хотите иметь только ваш публичный сертификат без ключа и цепочки сертификатов от вашего ca. Если вы откроете его в текстовом редакторе, вы должны увидеть только --BEGIN-CERTIFICATE-- blocks ..
week

Ответы:

6

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

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

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

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

Alex
источник
Я также получил сообщение об ошибке, когда файл .cer содержал только сертификат верхнего уровня, а не всю связку / цепочку сертификатов (промежуточный и корневой)
radtek
0

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

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

БалаМуруган Махендран
источник