1.6. Apache HTTP Web サーバーの Kerberos 認証の設定
Apache HTTP Web サーバーで Kerberos 認証を実行するために、RHEL 10 は 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.6.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 = apacheCopy to Clipboard Copied! Toggle word wrap Toggle overflow gssproxyサービスを再起動して、有効にします。systemctl restart gssproxy.service systemctl enable gssproxy.service
# systemctl restart gssproxy.service # systemctl enable gssproxy.serviceCopy to Clipboard Copied! Toggle word wrap Toggle overflow