CentOS6 – Apache2的工作,但安装/启用SSL时,服务器将无法启动,因为权限错误

我正尝试在CentOS6上安装Apache,并使用SSL作为开发服务器。

我一直在这里发布的指示,以获得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守护进程也将无法读取具有错误上下文的文件。 就我而言,解决scheme是要做到以下几点:

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

这将从参考文件复制上下文到证书。 如果你没有文件你可以参考,稍微棘手的方法(因为必须input)设置正确的上下文是:

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