Citrix ADCアプライアンスでのKerberos認証の構成
このトピックでは、CLIとGUIを使用してCitrix ADCアプライアンスでKerberos認証を構成する詳細な手順について説明します。
CLI での Kerberos 認証の設定
-
認証、承認、および監査機能を有効にして、アプライアンス上のトラフィックの認証を確実に行います。
ns-cli-promp ns 機能 AAA を有効にする
-
キータブファイルをCitrix ADCアプライアンスに追加します。Kerberos 認証中にクライアントから受け取ったシークレットを復号するには、キータブファイルが必要です。1つのキータブファイルには、Citrix ADCアプライアンス上のトラフィック管理仮想サーバーにバインドされているすべてのサービスの認証詳細が含まれています。
まず、Active Directory サーバーでキータブファイルを生成し、Citrix ADCアプライアンスに転送します。
-
Active Directory サーバーにログオンし、Kerberos 認証用のユーザーを追加します。たとえば、「Kerb-SVC-Account」という名前のユーザーを追加するには:
net user Kerb-SVC-Account freebsd!@#456 /add
注
[ユーザーのプロパティ] セクションで、[次回のログオン時にパスワードを変更] オプションが選択されておらず、[パスワードが期限切れにならない] オプションが選択されていることを確認します。
-
HTTP サービスを上記のユーザーにマップし、keytab ファイルをエクスポートします。たとえば、Active Directory サーバーで次のコマンドを実行します。
ktpass /out keytabfile /princ HTTP/ owa.newacp.com@NEWACP.COM /pass freebsd!@ #456 /mapuser newacp\ dummy /ptype KRB5_NT_PRINCIPCIAL
注
複数のサービスに認証が必要な場合は、複数のサービスをマッピングできます。さらに多くのサービスをマップする場合は、サービスごとに上記のコマンドを繰り返します。出力ファイルには、同じ名前でも別の名前でもかまいません。
-
unix ftpコマンドまたはその他の任意のファイル転送ユーティリティを使用して 、keytabファイルをCitrix ADCアプライアンスに転送します。キータブファイルを Citrix ADC アプライアンスの /nsconfig/krb/ ディレクトリにアップロードします。
-
-
Citrix ADCアプライアンスは、完全修飾ドメイン名(FQDN)からドメインコントローラーのIPアドレスを取得する必要があります。したがって、Citrix ADCをDNSサーバーで構成することをお勧めします。
ns-cli-promp DNS ネームサーバーを追加 <ip-address>
注
または、静的ホストエントリを追加するか、その他の方法を使用して、Citrix ADCアプライアンスがドメインコントローラーのFQDN名をIPアドレスに解決できるようにすることもできます。
-
認証アクションを設定し、認証ポリシーに関連付けます。
-
ネゴシエートアクションを設定します。
ns-cli-promp 認証ネゴシエートアクションを追加 \ <name\ >-domain\ <domain name\ >-domainUser\ <domain user name\ >-domainUser\ <domain user password\ >-DomainUserPasswd\ <default authentication group>-defaultAuthenticationGroup\ <string>-keytab\ <string>
注:ドメインユーザおよびドメイン名の設定については、クライアントに移動し、次の例に示すように klist コマンドを使用します。
クライアント:ユーザー名 @ AAA.LOCAL
サーバー:http/onprem_idp.AAA.local @ AAA.LOCAL
add authentication negotiateAction <name> -domain
-domainUser <HTTP/onprem_idp.aaa.local> -
ネゴシエートポリシーを設定し、ネゴシエートアクションをこのポリシーに関連付けます。
ns-cli-promp 認証ネゴシエートポリシーを追加 \ <name\ >\ <rule\ >\ <reqAction\ >
-
-
認証仮想サーバを作成し、ネゴシエートポリシーを関連付けます。
-
認証仮想サーバーを作成します。
ns-cli-promp 認証仮想サーバの追加 <name\ >\ SSL\ <ipAuthVserver\ > 443-認証ドメイン\ <domainName\ >
-
ネゴシエートポリシーを認証仮想サーバーにバインドします。
ns-cli-promp 認証仮想サーバのバインド \ <name\ >-policy\ <negotiatePolicyName\ >
-
-
認証仮想サーバーをトラフィック管理 (負荷分散またはコンテンツスイッチング) 仮想サーバーに関連付けます。
ns-cli-prompt> set lb vserver <name> -authn401 ON -authnVsName <string>
注
コンテンツスイッチング仮想サーバーでも同様の構成を行うことができます。
-
次の操作を行って、設定を確認します。
-
FQDN を使用して、トラフィック管理仮想サーバにアクセスします。たとえば、 サンプル
-
CLI でセッションの詳細を表示します。
ns-cli-promp AAA セッションを表示
-
GUI での Kerberos 認証の設定
-
認証、認可、および監査機能を有効にします。
[ システム ] > [ 設定] に移動し、[ 基本機能の構成 ] をクリックして、認証、承認、および監査機能を有効にします。
-
前述の CLI 手順のステップ 2 で説明したように、keytab ファイルを追加します。
-
DNS サーバーを追加します。
[ トラフィック管理] > [DNS] > [ネームサーバー] に移動し、DNS サーバーの IP アドレスを指定します。
-
ネゴシエートアクションとポリシーを設定します 。
[ セキュリティ] > [AAA-アプリケーショントラフィック] > [ポリシー] > [認証] > [高度なポリシー] > [ポリシー] に移動し、アクションタイプとして [ ネゴシエート [ ADD ] をクリックして新しい認証ネゴシエートサーバーを作成するか、[ Edit ] をクリックして既存の詳細を設定します。
-
ネゴシエートポリシーを認証仮想サーバーにバインドします。
[ セキュリティ] > [AAA-アプリケーショントラフィック] > [仮想サーバ] に移動し、 ネゴシエートポリシーを認証仮想サーバに関連付けます 。
-
認証仮想サーバーをトラフィック管理 (負荷分散またはコンテンツスイッチング) 仮想サーバーに関連付けます。
[ トラフィック管理] > [負荷分散] > [仮想サーバー] に移動し、関連する認証設定を指定します。
注
コンテンツスイッチング仮想サーバーでも同様の構成を行うことができます。
-
上記の CLI 手順のステップ 7 で詳述した設定を確認します。