Red Hat Training

A Red Hat training course is available for RHEL 8

1.8. Apache HTTP Web サーバーの Kerberos 認証の設定

Apache HTTP Web サーバーで Kerberos 認証を実行するために、RHEL 8 は mod_auth_gssapi Apache モジュールを使用します。Generic Security Services API (GSSAPI) は、Kerberos などのセキュリティーライブラリーを使用する要求を行うアプリケーションのインターフェイスです。gssproxy サービスでは、httpd サーバーに特権の分離を実装できます。これにより、セキュリティーの観点からこのプロセスが最適化されます。

注記

削除した mod_auth_kerb モジュールは、mod_auth_gssapi モジュールに置き換わります。

前提条件

  • httpd パッケージおよび gssproxy パッケージがインストールされている。
  • Apache Web サーバーが設定され、httpd サービスが実行している。

1.8.1. IdM 環境で GSS-Proxy の設定

この手順では、Apache HTTP Web サーバーで Kerberos 認証を実行するように GSS-Proxy を設定する方法を説明します。

手順

  1. サービスプリンシパルを作成し、HTTP/<SERVER_NAME>@realm プリンシパルの keytab ファイルへのアクセスを有効にします。

    # ipa service-add HTTP/<SERVER_NAME>
  2. /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 ユーザーは異なります。

  3. 以下の内容で /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
  4. gssproxy サービスを再起動して、有効にします。

    # systemctl restart gssproxy.service
    # systemctl enable gssproxy.service

関連情報

  • gssproxy(8) の man ページ
  • gssproxy-mech(8) の man ページ
  • gssproxy.conf(5) の man ページ