ADC

Kerberos認証を物理サーバーからオフロードする

NetScalerアプライアンスは、認証タスクをサーバーからオフロードできます。物理サーバーがクライアントからの要求を認証する代わりに、NetScalerはすべてのクライアント要求を認証してから、バインドされた物理サーバーに転送します。ユーザー認証は、Active Directory トークンに基づいています。

NetScalerと物理サーバー間の認証は行われず、認証のオフロードはエンドユーザーには意識されません。Windows コンピュータに最初にログオンした後、エンドユーザーはポップアップまたはログオンページに追加の認証情報を入力する必要はありません。

現在のNetScalerアプライアンスリリースでは、Kerberos認証はトラフィック管理仮想サーバーの認証、承認、監査にのみ使用できます。Kerberos認証は、NetScaler Gateway アドバンスドエディションアプライアンスのSSL VPNまたはCitrix ADCアプライアンス管理ではサポートされていません。

Kerberos認証には、NetScalerアプライアンスとクライアントブラウザーでの構成が必要です。

NetScalerアプライアンスでKerberos認証を構成するには

次の設定例で使用されるパスワードは単なる例であり、実際の設定パスワードではありません。

  1. Active Directory にユーザーアカウントを作成します。ユーザーアカウントを作成するときは、[ユーザープロパティ] セクションで次のオプションを確認します。

    • [次回ログオン時にパスワードを変更する] オプションを選択していないことを確認します。
    • 必ず [パスワードは期限切れではない] オプションを選択してください。
  2. AD サーバーの CLI コマンドプロンプトで、次のように入力します。

    • ktpass -princ HTTP/kerberos.crete.lab.net@crete.lab.net -ptype KRB5_NT_PRINCIPAL -mapuser kerbuser@crete.lab.net -mapop set -pass Citrix1 -out C:\kerbtabfile.txt

    上記のコマンドは必ず 1 行で入力してください。上記のコマンドの出力は C:\kerbtabfile.txt ファイルに書き込まれます。

  3. セキュアコピー(SCP)クライアントを使用して、kerbtabfile.txt ファイルをNetScalerアプライアンスの/etcディレクトリにアップロードします。

  4. 次のコマンドを実行して、DNSサーバーをNetScalerアプライアンスに追加します。

    • add dns nameserver 1.2.3.4

    NetScalerアプライアンスは、DNSサーバーがないとKerberosリクエストを処理できません。必ず、Microsoft Windows ドメインで使用されているものと同じ DNS サーバーを使用してください。

  5. NetScalerのコマンドラインインターフェイスに切り替えます。

  6. 次のコマンドを実行して、Kerberos 認証サーバーを作成します。

    • add authentication negotiateAction KerberosServer -domain “crete.lab.net” -domainUser kerbuser -domainUserPasswd Citrix1 -keytab /var/mykcd.keytab

    :キータブが使用できない場合は、ドメイン、domainUser、および-domainUserPasswd のパラメータを指定できます。

  7. 次のコマンドを実行して、ネゴシエーションポリシーを作成します。

    • add authentication negotiatePolicy Kerberos-Policy "REQ.IP.DESTIP == 192.168.17.200" KerberosServer<!--NeedCopy-->
  8. 次のコマンドを実行して、認証仮想サーバーを作成します。

    • add authentication vserver Kerb-Auth SSL 192.168.17.201 443 -AuthenticationDomain crete.lab.net<!--NeedCopy-->
  9. 次のコマンドを実行して、Kerberos ポリシーを認証仮想サーバーにバインドします。

    • bind authentication vserver Kerb-Auth -policy Kerberos-Policy -priority 100<!--NeedCopy-->
  10. 次のコマンドを実行して、SSL 証明書を認証仮想サーバーにバインドします。GUI NetScalerアプライアンスからインストールできるテスト証明書のいずれかを使用できます。次のコマンドを実行して、ServerTestCert サンプル証明書を使用します。

    • bind ssl vserver Kerb-Auth -certkeyName ServerTestCert<!--NeedCopy-->
  11. IP アドレス 192.168.17.200 を使用して HTTP 負荷分散仮想サーバーを作成します。

    NetScaler 9.3リリースが9.3.47.8より古い場合は、コマンドラインインターフェイスから仮想サーバーを作成するようにしてください。

  12. 次のコマンドを実行して、認証仮想サーバーを構成します。

    • set lb vserver <name>-authn401 ON -authnVsName Kerb-Auth<!--NeedCopy-->
  13. Web ブラウザのアドレスバーにホスト名 Example を入力します。

    Kerberos 認証がブラウザで設定されていないため、Web ブラウザに認証ダイアログボックスが表示されます。

    Kerberos 認証には、クライアント上で特定の設定が必要です。クライアントがホスト名を解決できることを確認します。これにより、Web ブラウザが HTTP 仮想サーバーに接続します。

  14. クライアントコンピュータの Web ブラウザで Kerberos を構成します。

  15. 認証なしでバックエンド物理サーバにアクセスできるかどうかを確認します。

Internet Explorerで Kerberos 認証を構成するには

  1. [ ツール ] メニューの [ インターネットオプション ] を選択します。
  2. [ セキュリティ ] タブを有効にします。
  3. [セキュリティ設定を変更するゾーンを選択してください] セクションから [ ローカルイントラネット ] を選択します。
  4. [ サイト] をクリックします。
  5. [詳細設定]をクリックします。
  6. URL、 ] を指定し、[ 追加] をクリックします。
  7. Internet Explorerを再起動します。

Mozilla Firefox をケルベロス認証用に設定するには

  1. ブラウザのアドレスバーに about: config と入力します。
  2. 警告免責事項をクリックします。
  3. [ フィルタ ] ボックスに「 network.negotiate-auth.trusted-URI 」と入力します。
  4. [ Network.negotiate-auth.trusted-URI] をダブルクリックします。サンプル画面を以下に示します。

    ローカライズされた画像

  5. [文字列値の入力] ダイアログボックスで、www.crete.lab.net を指定します。
  6. Firefox を再起動します。
Kerberos認証を物理サーバーからオフロードする