3

我在 Debian 上安装了 Apache 2,并安装了 mod_ssl。服务器私钥受启动时需要输入的密码保护。错误和访问日志每周都会进行 logrotate。我发现 Apache 在 logrotate 运行后不久崩溃并出现与密码相关的错误。

我知道 logrotate 在归档日志后会向 Apache 触发 SIGHUP,我怀疑这会导致重新加载以及随后无法获取服务器密钥的密码。

好吧,我的理论说得够多了,问题来了:

是否有一种“最佳实践”方式来配置 Apache 以允许其 SSL 服务器密钥受密码保护(而不将该密码存储在某处的文件中),以便在运行 logrotate 时不会崩溃?

在服务器启动时要求用户输入很好,但不需要重新启动或重新加载。

4

3 回答 3

2

您可以使用不需要叹气的Cronolog。这是一个例子:

CustomLog "| /usr/sbin/cronolog /pathtologs/%Y_%m/sitename.com-%Y%m%d.log" combined
于 2008-09-16T22:33:50.953 回答
2

您还可以使用以下命令关闭密码:

openssl rsa -in example.tld.key -out example.tld.key
于 2009-01-07T17:03:43.773 回答
1

一种选择是使用 Apache 提供的日志轮换工具。它的配置与系统 logrotate 略有不同,但由于它与管道一起使用,因此可以在不重新启动 Apache 的情况下移动文件。

于 2008-09-16T22:28:06.583 回答