在less数Apache服务器正在运行一堆使用HTTPS SSL证书的站点的环境中,应放置哪些证书? 在Debian或Ubuntu中,所有相关的文件应该放在/ etc / apache2 / ssl中? 还是有一些更适合这个的其他位置? 在同一台服务器上为多个网站select这些文件的位置时,应该解决哪些安全问题?
FWIW,我使用Debian。
我把所有私钥放在具有权限模式0700 /etc/ssl/private中。 我将所有证书放在具有权限模式0755 /etc/ssl/certs中。 两者的所有者/组是root:root。
基本上,你的SSL密钥文件应该只能由root用户读取(你应该对它们发出两个命令: sudo chown root:root /path/to/your/keyfile.key和sudo chmod 600 /path/to/your/keyfile.key )。 您的证书文件可以是世界可读的。 将密钥和证书保存在可访问Web的文档树之外总是一个好主意, /etc/apache/ssl应该可以正常工作。
下面的放置SSL证书的最佳实践通常对我来说效果不错:
/usr/share/ca-certificates/domainname/ – 将从CA权限获取的公共*.crt文件放在这里 /etc/ssl/certs – 创build放置在/usr/share/ca-certificates/domainname/目录中的文件的符号链接 /etc/ssl/private/private.key – 私钥直接放在这个目录下 /opt/ssl/csr/domainname/domain.csr – 我将原始CSR放置在这个目录中以供将来重新参考。 如果您打算将SSL证书用于Dovecot和Postfix等服务,则还需要*.pem文件。 您可以将这些转换的*.pem文件放在/opt/ssl/csr/domainname/*.pem并创build一个软链接到/etc/ssl/certs目录。