HTTPS в Apache. Ошибка: AH02241: Init: Unable to read server certificate from file … certificate.crt

В процессе настройки бесплатного SSL от StartSSL для ownCloud на Apache/2.4.6 (CentOS 7), столкнулся с ошибкой которая мешала запустить Apache.
logo_log_ah02241

Фрагмент лог файла Apache:

Обратите внимание на: «AH02241: Init: Unable to read server certificate from file /etc/ssl/certs/test.crt»

В процессе траблшутинга и поиска информации по данной ошибке, стало понятно, что проблема в содержимом (формате) файла сертификата, но когда я просматривал файл сертификата с помощью mc (Midnight Commander), то не находил ни каких ошибок. Содержимое файла, было абсолютно таким же, что и сгенерил StartSSL.

Содержимое файла сертификатов. Просмотр (F3) в MC

Содержимое файла сертификатов. Просмотр (F3) в MC

Потупил я ещё некоторые время…

Далее, я решил с помощью mc не просмотреть (F3), а отредактировать (F4) файл сертификата (зачем я это делал, уже не помню). И что я вижу:

Редактирование (F4) сертификата в MC

Редактирование (F4) сертификата в MC

Тут то всё стало ясно… ^M это дополнительные символы перевода строки в Windows. При просмотре в mc их не было видно, а при редактировании они появились.

Как же это произошло?

А произошло это очень просто. StartSSL генерит сертификат и приватный ключи, а далее нам необходимо используя Copy/Past перенести их в файлы.

Просмотр сертификата в Notepad++. Формат файла Dos/Windows

Просмотр сертификата в Notepad++. Формат файла Dos/Windows

Для Past я использовал Notepad++ , а у него по умолчанию используется формат «Dos/Windows». Если в Notepad++ включить «Отображение всех символов» (1) то мы увидим лишние символы «CR» (2).

Нужно сохранить файл в формате «Unix». Для этого правой кнопкой мыши нажимаем на названии текущего формата «Dos/Windows» (3) и выбираем «Unix».

Просмотр сертификата в Notepad++. Формат файла Dos/Windows

Просмотр сертификата в Notepad++. Формат файла Dos/Windows

Лишние символы исчезли. Сохраняем файл сертификата и проделываем такую же процедуру и с файлом ключа.

Просмотр сертификата в Notepad++. Формат файла Unix

Просмотр сертификата в Notepad++. Формат файла Unix

Данная ошибка была весьма глупа и я на неё потратил много времени, но ни кто не застрахован от ошибок. Может кому-то, данная статья поможет и он затратит значительно меньше времени на устранение ошибки.

Конфиг SSL виртуального хоста в Apache

И напоследок выложу рабочий конфиг SSL/HTTPS виртуального хоста Apache.

Ссылки

 

The following two tabs change content below.
В профессиональной сфере занимаюсь всем, что связанно с IT. Основная специализация - VoIP и сети передачи данных. Стараюсь не заниматься Windows серверами (но иногда приходится) и 1С.

Добавить комментарий