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_kerb
モジュールは、mod_auth_gssapi
モジュールに置き換わります。
前提条件
-
httpd
、mod_auth_gssapi
、およびgssproxy
パッケージがインストールされている。 -
Apache Web サーバーが設定され、
httpd
サービスが実行している。
1.7.1. IdM 環境で GSS-Proxy の設定 リンクのコピーリンクがクリップボードにコピーされました!
この手順では、Apache HTTP Web サーバーで Kerberos 認証を実行するように GSS-Proxy
を設定する方法を説明します。
手順
サービスプリンシパルを作成し、HTTP/<SERVER_NAME>@realm プリンシパルの
keytab
ファイルへのアクセスを有効にします。ipa service-add HTTP/<SERVER_NAME>
# ipa service-add HTTP/<SERVER_NAME>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow /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)
# ipa-getkeytab -s $(awk '/^server =/ {print $3}' /etc/ipa/default.conf) -k /etc/gssproxy/http.keytab -p HTTP/$(hostname -f)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow このステップでは、パーミッションを 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
[service/HTTP] mechs = krb5 cred_store = keytab:/etc/gssproxy/http.keytab cred_store = ccache:/var/lib/gssproxy/clients/krb5cc_%U euid = apache
Copy to Clipboard Copied! Toggle word wrap Toggle overflow gssproxy
サービスを再起動して、有効にします。systemctl restart gssproxy.service systemctl enable gssproxy.service
# systemctl restart gssproxy.service # systemctl enable gssproxy.service
Copy to Clipboard Copied! Toggle word wrap Toggle overflow