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

CentOS6 - Apache2 работает, но при установке / включении SSL сервер не запускается из-за ошибки разрешений

Я пытаюсь установить Apache с SSL на CentOS6 использовать в качестве сервера разработки.

Я следовал указанным здесь инструкциям, чтобы заставить SSL работать: http://wiki.centos.org/HowTos/Https (Примечание: Apache работал нормально, пока я не попытался включить SSL.)

Когда мне пришлось расстаться с перезапуском Apache, сервер не запускался. Я просто получаю следующее сообщение об ошибке:

[Mon Feb 13 18:31:36 2012] [error] (13)Permission denied: Init: Can't open 
 server certificate file /etc/pki/tls/certs/ca.crt

Я увидел, что зарегистрированный сертификат принадлежит моему пользователю и моей группе, поэтому я изменил его на root:root но это не имело значения. Я не знаю, что еще попробовать и на что посмотреть. Спасибо.

Примечание. Мои вопросы похожи на этот но ошибка в другом.

Итак, для тех, кто не понимает, какой на самом деле ответ здесь:

Это проблема с selinux. Файлы могут иметь разные «контексты» selinux, и файл с неправильным контекстом будет нечитаемым демоном httpd, даже если обычные разрешения верны. В моем случае решение заключалось в следующем:

chcon --reference /file/with/correct/context /path/to/certificate/file

Что скопирует контекст из указанного файла в сертификат. Если у вас нет файла, на который вы можете сослаться, более сложный способ (из-за того, что вам нужно вводить его) для установки правильного контекста:

chcon unconfined_u:object_r:httpd_config_t:s0 /path/to/certificate/file