の検索結果 :

×

会員登録 お問い合わせ

UBUNTU/RHEL/CentOS 用の NTLM/Kerberos SSO シングル サインオンの設定

Kerberos SSO 拡張機能を使用すると、組織の Active Directory またはその他の ID プロバイダー ドメインから Kerberos チケット保証チケット (TGT) を簡単に取得できるため、ユーザーは Web サイト、アプリケーション、ファイル サーバーなどのリソースに対して認証できるようになります。


UBUNTUの場合:

  • 端末で次のコマンドを使用して、Kerberos クライアント ライブラリをインストールします。
  • sudo apt-get install krb5-user

RHEL/CentOSの場合:

  • 端末で次のコマンドを使用して、Kerberos クライアント ライブラリをインストールします。
  • yum install krb5-workstation krb5-libs krb5-auth-dialog

Kerberos 構成ファイルで Active Directory ドメインを構成するには、次の手順を使用します。

  • /etc/krb5.conf ファイルを開いて編集します。
  • 次の構成スニペットを krb5.conf ファイルに追加します。
  • EXAMPLE.ORG= { kdc = <AD DOMAIN CONTROLLER IP/DNS> :88 }

    注: 置き換える 広告ドメインコントローラーのIP/DNS IP/DNSアドレスを入力してください。 Example.org 大文字にする必要があります。

    置き換える Example.org Active Directory ドメイン名を使用します。

    また、AD ドメイン コントローラーのポート 88 がこのサーバーからアクセスできることを確認してください。


  • ファイルを保存します。

UBUNTUの場合:

  • 次のコマンドを使用して、Apache の auth_kerb モジュールをインストールします。
  • sudo apt-get install libapache2-mod-auth-kerb
  • auth_kerb モジュールをインストールしたら、次のコマンドを使用して有効にする必要があります。
  • a2enmod auth_kerb
  • 有効にした後、Apache を再起動して有効にします。

RHEL/CentOSの場合:

  • 次のコマンドを使用して、Apache の auth_kerb モジュールをインストールします。
  • yum install mod_auth_kerb
  • Apache を再起動して有効にします。
  • AD ドメイン コントローラーで次のコマンドを実行して Keytab ファイルを作成します。
  • ktpass -princ HTTP/<Server Host Name>@EXAMPLE.ORG -pass PASSWORD -mapuser <svc@EXAMPLE.ORG> -Ptype KRB5_NT_PRINCIPAL -out "<PATH>\spn.keytab"

    注: EXPLAIN.ORG が大文字であることを確認してください。


サーバーのホスト名: これは、サーバー上でホストされているサイトのホスト名です。
サーバーのホスト名: これは、サーバー上でホストされているサイトのホスト名です。
例.org: これは、Active Directory ドメイン名です。
パスワード: 上記で使用したサービスアカウントのパスワードです。
svc@EXAMPLE.ORG: これは、Active Directory のサービス アカウントです。
パス: キータブ ファイルを保存するローカルの場所へのパス。

    注: 上記のコマンドは、キータブ ファイルを作成します。このファイルはサーバー上に配置する必要があります。Apache を実行しているユーザーには、このファイルへのフル アクセス権が必要です。ユーザーには、キータブ ファイルへのアクセス許可が必要です。


  • サービス アカウントにはいくつかの前提条件があります。
    • アカウントのパスワードは次のように設定されている必要があります。 有効期限が切れていない.
    • アカウントは委任に対して信頼される必要があります。
  • コピー キータブ ファイルを AD ドメイン コントローラーから Apache でホストされている Web サーバーに送信します。

UBUNTUの場合:

  • /etc/apache2/sites-enabled/000-default.conf ファイルを編集します。
  • サイトのディレクトリに次のセクションを追加します。
  • <Directory "/placeholder"> AuthType Kerberos KrbAuthRealms EXAMPLE.ORG KrbServiceName HTTP Krb5Keytab <PATH TO KEYTAB> KrbMethodNegotiate on KrbMethodK5Passwd on require valid-user </Directory>

RHEL/CentOSの場合:

  • /etc/httpd/conf.d/ フォルダ内の auth_kerb.conf 設定ファイルを編集します。
  • サイトのディレクトリに次のセクションを追加します。
  • LoadModule auth_kerb_module /usr/lib/apache2/modules/mod_auth_kerb.so <Directory "/placeholder"> AuthType Kerberos KrbAuthRealms EXAMPLE.ORG KrbServiceName HTTP Krb5Keytab <PATH TO KEYTAB> KrbMethodNegotiate on KrbMethodK5Passwd on require valid-user </Directory>

    注: EXPLAIN.ORG が大文字であることを確認してください。


上記の構成のコンポーネントは次のとおりです。

例.org: これは、krb5.conf で構成されている Active Directory ドメインです。
キータブへのパス: このサーバー上のキータブへのアクセス可能なパス。
  • この構成後、変更を有効にするために Apache を再起動する必要があります。

最も一般的なエラー メッセージは次のとおりです。

    gss_acquire_cred() failed: Unspecified GSS failure. Minor code may provide more information (, Permission denied).
  • /etc/krb5.keytab に対するファイル システムのアクセス許可が間違っています。つまり、Web サーバーの Linux ユーザーが読み取ることができません。
  • ファイル システムのアクセス許可を変更するには、次のコマンドを使用します。 $ chmod 400 ファイル名.
  • gss_acquire_cred() failed: Unspecified GSS failure. Minor code may provide more information (, Key table entry not found).
  • /etc/krb5.keytab にサービス プリンシパル (おそらく HTTP/webserver.yourdomain.com@YOURDOMAIN.COM) がありません。
  • Warning: received token seems to be NTLM, which isn't supported by the Kerberos module. Check your IE configuration. gss_accept_sec_context() failed: An unsupported mechanism was requested (, Unknown error)
  • Web サイトが IE の「ローカル イントラネット」ゾーンにないか、IE が正しく構成されていません。認証で Kerberos ではなく NTLM が使用されるを参照してください。
  • gss_accept_sec_context() failed: Unspecified GSS failure. Minor code may provide more information (, ).
  • /etc/krb5.keytab 内の kvno またはマシンのパスワードが間違っている → 正しい情報を使用して keytab を再作成します。
  • ワークステーションのローカル Kerberos チケット キャッシュに問題があります。Kerbtray.exe を使用してチケット キャッシュを消去し、IE で Web サイトを再度開いてください。

ADFS_sso ×
こんにちは!

助けが必要? 私たちはここにいます!

対応