CentOS6 - Apache2 正在运行,但在安装/启用 SSL 时,服务器由于权限错误而无法启动

CentOS6 - Apache2 正在运行,但在安装/启用 SSL 时,服务器由于权限错误而无法启动

我正在尝试安装带有 SSL 的 ApacheCentOS6用作开发服务器。

我一直按照此处发布的说明来使 SSL 正常工作:http://wiki.centos.org/HowTos/Https(注意:在我尝试启用 SSL 之前,Apache 一直运行良好。)

当我重新启动 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但没有什么区别。我不确定还要尝试什么或查看什么。谢谢。

注意:我的问题类似于但错误不同。

答案1

因此,对于那些不明白这里答案到底是什么的人来说:

这是 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

相关内容