1.7. 为 Apache HTTP web 服务器配置 Kerberos 验证
要在 Apache HTTP web 服务器中执行 Kerberos 身份验证,RHEL 9 使用 mod_auth_gssapi
Apache 模块。Generic Security Services API(GSSAPI
)是请求使用安全库(如 Kerberos)的应用程序的接口。gssproxy
服务允许对 httpd
服务器实施特权分离,从安全的角度来看,这优化了此过程。
mod_auth_gssapi
模块取代了已删除的 mod_auth_kerb
模块。
先决条件
-
已安装了
httpd
,mod_auth_gssapi
和gssproxy
软件包。 -
Apache Web 服务器已设置,并且
httpd
服务在运行。
1.7.1. 在 IdM 环境中设置 GSS-Proxy
这个流程描述了如何设置 GSS-Proxy
,以便在 Apache HTTP Web 服务器中执行 Kerberos 身份验证。
流程
通过创建服务主体来启用对 HTTP/<SERVER_NAME>@realm 主体的
keytab
文件的访问:# ipa service-add HTTP/<SERVER_NAME>
检索存储在
/etc/gssproxy/http.keytab
文件中的主体的keytab
:# ipa-getkeytab -s $(awk '/^server =/ {print $3}' /etc/ipa/default.conf) -k /etc/gssproxy/http.keytab -p HTTP/$(hostname -f)
此步骤将权限设置为 400,因此只有
root
用户有权访问keytab
文件。apache
用户无法访问。使用以下内容创建
/etc/gssproxy/80-httpd.conf
文件:[service/HTTP] mechs = krb5 cred_store = keytab:/etc/gssproxy/http.keytab cred_store = ccache:/var/lib/gssproxy/clients/krb5cc_%U euid = apache
重启并启用
gssproxy
服务:# systemctl restart gssproxy.service # systemctl enable gssproxy.service
其它资源
-
系统上的
gssproxy (8)
手册页 -
系统上的
gssproxy-mech (8)
手册页 -
您系统上的
gssproxy.conf (5)
手册页