Apache 2.2.14 / mod_auth_kerb 5.4:Apache 实例的自定义 krb5.conf

Apache 2.2.14 / mod_auth_kerb 5.4:Apache 实例的自定义 krb5.conf

客观的:使用自定义 krb5.conf 文件来使用 Apache/mod_auth_kerb,而不是系统标准/etc/krb5.conf

问题:我有一个严格控制的环境,我们应用程序所有者可以在其指定的目录中配置 Apache 实例,但基线配置(操作系统和 Apache 核心)由单独的组维护。因此,我对核心配置所做的任何更改都意味着将/etc/krb5.conf更改复制到数千台服务器(风险+)或为此服务器编写自定义系统配置脚本(风险+,$+)。

成功典范:为了调用kinit测试或ktutil生成密钥表文件以供 Apache 在此环境中使用,请重载KRB5_CONFIG环境变量(在StackOverflow:传递 kinit 自定义 krb5.conf 文件

问题:有没有办法指定KRB5_CONFIGApache 的环境变量或强制 mod_auth_kerb 使用其他配置?

失败的尝试:我尝试env在 apachectl restart 上运行相同的命令。Apache 指令 SetEnv 被忽略了,因为它适用于基于用户请求的脚本执行,而不是 Apache“后台”功能。

答案1

在大多数系统上,还有一个/etc/init.d/httpd用于启动 Apache 服务器的脚本。我认为你唯一的解决方案是在该脚本中设置环境变量,然后使用类似

/sbin/service httpd restart 

使用新的环境变量重新启动 apache。您必须以某种方式修改启动 httpd 的进程的环境。

答案2

我认为 Red Hat 系统/etc/sysconfig/httpd是环境变量更好的存放位置。

相关内容