Citrix ADC

LDAP認証

他のタイプの認証ポリシーと同様に、ライトウェイトディレクトリアクセスプロトコル(LDAP)認証ポリシーは、式とアクションで構成されます。認証ポリシーを作成したら、それを認証仮想サーバにバインドし、プライオリティを割り当てます。また、バインドするときは、プライマリポリシーまたはセカンダリポリシーとして指定します。標準の認証機能に加えて、LDAP は他のアクティブディレクトリ (AD) サーバーを検索して、ローカルに存在しないユーザーのユーザーアカウントを検索できます。この関数は、紹介サポートまたは紹介追跡と呼ばれます。

通常、認証時に認証サーバーのIPアドレスを使用するようにCitrix ADCを構成します。LDAP 認証サーバを使用すると、ADC が IP アドレスではなく LDAP サーバの FQDN を使用してユーザを認証するように設定することもできます。FQDN を使用すると、認証サーバが複数の IP アドレスのいずれかに存在し、常に 1 つの FQDN を使用する環境において、より複雑な認証、承認、および監査の構成を簡素化できます。IP アドレスの代わりにサーバーの FQDN を使用して認証を構成するには、認証アクションを作成する場合を除き、通常の構成プロセスに従います。アクションを作成するときは、 serverIP パラメーターの代わりに serverName パラメーターを使用し、サーバーの FQDN を IP アドレスに置き換えます。

LDAP サーバの IP または FQDN を使用してユーザを認証するように ADC を設定する前に、IP アドレスの代わりに FQDN に対して認証を行うように認証、承認、および監査を構成して、認証プロセスに余分な手順を追加することを検討してください。ADC は、ユーザを認証するたびに、FQDN を解決する必要があります。多数のユーザーが同時に認証を試みると、結果として生じる DNS ルックアップによって認証プロセスが遅くなる可能性があります。

LDAP 参照サポートはデフォルトで無効になっており、グローバルに有効にすることはできません。LDAP アクションごとに、明示的に有効にする必要があります。ADサーバーが参照(GC)サーバーで使用されているものと同じ binddn credentials を受け入れることを確認してください。紹介サポートを有効にするには、紹介に従うように LDAP アクションを設定し、フォローする紹介の最大数を指定します。

参照サポートが有効で、Citrix ADCが要求に対するLDAP_REFERRAL応答を受信した場合、認証、承認、および監査は、参照に含まれるアクティブディレクトリ(AD)サーバーへの参照に従い、そのサーバーで更新を実行します。まず、認証、承認、および監査は DNS 内の参照サーバーを検索し、そのサーバーに接続します。紹介ポリシーで SSL/TLS が必要な場合は、SSL/TLS 経由で接続します。次に、前のサーバーで使用した binddn credentials を使用して新しいサーバーにバインドし、参照を生成した操作を実行します。この機能はユーザーに対して透過的です。

LDAP 接続のポート番号は次のとおりです。

  • セキュリティで保護されていない LDAP 接続の場合は 389 (プレーンテキスト LDAP の場合)
  • セキュア LDAP 接続の場合は 636 (SSL LDAP の場合)
  • Microsoftのセキュリティで保護されていない LDAP 接続の場合は 3268 (プレーンテキストのグローバルカタログサーバーの場合)
  • Microsoftのセキュリティで保護された LDAP 接続の場合は 3269 (SSL グローバルカタログサーバーの場合)

次の表に、LDAP サーバーのユーザー属性フィールドの例を示します。

LDAPサーバ ユーザー属性 大文字と小文字を区別する
Microsoft Active Directory Server sAMAccountName いいえ
Novell eDirectory ou はい
IBM Directory Server uid はい
Lotus Domino CN はい
Sun ONE Directory(旧iPlanet) uid または cn はい

次の表に、ベース DN の例を示します。

LDAPサーバ ベース DN
Microsoft Active Directory Server DC =citrix,DC=local
Novell eDirectory ou=users,ou=dev
IBM Directory Server cn=users
Lotus Domino OU=City,O=Citrix、 C=US
Sun ONE Directory(旧iPlanet) ou=People,dc=citrix,dc=com

次の表に、バインド DN の例を示します。

LDAPサーバ バインド DN
Microsoft Active Directory Server CN=Administrator, CN=Users, DC =citrix、 DC=local
Novell eDirectory cn=admin, o=citrix
IBM Directory Server LDAP_dn
Lotus Domino CN=Notes 管理者、 O=Citrix、 C=US
Sun ONE Directory(旧iPlanet) uid=admin,ou=Administrators, ou=TopologyManagement,o=NetscapeRoot

認証ポリシーの設定全般の詳細については、「認証ポリシー」を参照してください。ポリシー規則で使用される Citrix ADC 式の詳細については、「ポリシーと式」を参照してください。

コマンドラインインターフェイスを使用して LDAP 認証サーバーを作成するには

コマンドプロンプトで、次のコマンドを入力します。

add authentication ldapAction <name> {-serverIP} <ip_addr|ipv6_addr|> | {-serverName <string>}}

add authentication ldapAction ldap_server -serverip 1.1.1.1 -serverName ldap_test

構成ユーティリティを使用して LDAP 認証サーバーを作成するには

  1. [システム] > [認証] > [基本ポリシー] > [LDAP] > [サーバー] > [追加]に移動します。

    LDAPサーバーを追加する

  2. 認証LDAPサーバー の作成」ページで、LDAPサーバーのパラメーターを構成します。
  3. [作成] をクリックします。

コマンドラインインターフェイスを使用して認証ポリシーを有効にするには

add authentication ldappolicy <name> <rule> [<reqAction>]

例:

add authentication ldappolicy ldap-service-policy ns_true ldap_Server

構成ユーティリティを使用して LDAP 認証ポリシーを作成するには

  1. [システム] > [認証] > [基本ポリシー] > [LDAP] > [ポリシー] > [追加]に移動します。
  2. [認証 LDAP ポリシーの作成] ページで、LDAP ポリシーのパラメータを設定します。

    LDAPポリシーを作成する

  3. [作成] をクリックします。

LDAPを構成できます servers/policies [セキュリティ]タブから。[セキュリティ] > [AAA-アプリケーショントラフィック] > [ポリシー] > [認証] > [基本ポリシー] > [LDAP] > [サーバ/ポリシー] に移動します。

コマンドラインインターフェイスを使用して LDAP 参照サポートを有効にするには

コマンドプロンプトで、次のコマンドを入力します。

  • set authentication ldapAction <name> -followReferrals ON
  • set authentication ldapAction <name> -maxLDAPReferrals <integer>

> set authentication ldapAction ldapAction-1 -followReferrals ON
> set authentication ldapAction ldapAction-1 -maxLDAPReferrals 2

LDAP ユーザーに対するキーベース認証のサポート

キーベース認証では、SSH を介して LDAP サーバーのユーザーオブジェクトに格納されている公開鍵のリストを取得できるようになりました。ロールベース認証(RBA)プロセス中のCitrix ADCアプライアンスは、LDAPサーバーから公開SSHキーを抽出する必要があります。取得した公開鍵は SSH と互換性があり、RBA メソッドを使用してログインできるようにする必要があります。

「認証の追加 ldapAction」コマンドと「認証の設定 ldapAction」コマンドに新しい属性「sshPublicKey」が導入されました。この属性を使用すると、次の利点があります。

  • 取得した公開キーを格納できます。LDAP アクションは、この属性を使用して LDAP サーバから SSH キー情報を取得します。
  • 最大 24 KB の属性名を抽出できます。

LDAP などの外部認証サーバは、SSH キー情報の取得にのみ使用されます。認証目的には使用されません。

次に、SSH を介したイベントのフローの例を示します。

  • SSH デーモンは、パスワードフィールドが空の AAA_AUTHENTICATE 要求を認証、認可、および監査デーモンポートに送信します。
  • LDAP が SSH 公開鍵を保存するように設定されている場合、認証、承認、および監査は「sshPublicKey」属性と他の属性とともに応答します。
  • SSH デーモンは、クライアントキーでこれらのキーを検証します。
  • SSH デーモンは、要求ペイロードでユーザー名を渡し、認証、承認、および監査は、汎用キーとともにこのユーザーに固有のキーを返します。

sshPublicKey 属性を構成するには、コマンドプロンプトで次のコマンドを入力します。

  • 追加操作では、ldapActionコマンドの設定中に「sshPublicKey」属性を追加できます。

    add authentication ldapAction <name> {-serverIP <ip_addr|ipv6_addr|*> | {-serverName <string>}} [-serverPort <port>] … [-Attribute1 <string>] … [-Attribute16 <string>][-sshPublicKey <string>][-authentication off]

  • 設定操作では、すでに追加されている ldapAction コマンドに「sshPublicKey」属性を設定できます。

    set authentication ldapAction <name> [-sshPublicKey <string>][-authentication off]

LDAP 認証に対する名前/値属性のサポート

LDAP 認証の属性に、一意の名前と値を設定できるようになりました。名前は LDAP アクションパラメータで設定され、値は名前を照会することによって取得されます。この機能を使用することにより、Citrix ADCアプライアンス管理者は次の利点を実現できます。

  • 属性を(値だけでなく)名前で記憶することで、管理者の労力を最小限に抑えます。
  • 名前に関連付けられた属性値を照会するための検索機能が拡張されます。
  • 複数の属性を抽出するオプションを提供します。

Citrix ADCアプライアンスのコマンドプロンプトでこの機能を構成するには、次のように入力します。

add authentication ldapAction <name> [-Attribute1 <string>]

add authentication ldapAction ldapAct1 attribute1 mail

エンドツーエンドの LDAP 認証の検証のサポート

Citrix ADCアプライアンスは、GUIを介してエンドツーエンドのLDAP認証を検証できるようになりました。この機能を検証するために、GUIに新しい「テスト」ボタンが導入されました。Citrix ADCアプライアンスの管理者は、この機能を使用して次の利点を実現できます。

  • 完全なフロー(パケットエンジン– Citrix ADC AAAデーモン–外部サーバー)を統合して、より適切な分析を提供します
  • 個々のシナリオに関連する問題の検証とトラブルシューティングにかかる時間を短縮

GUI を使用して LDAP エンドツーエンド認証のテスト結果を構成および表示するには、2 つのオプションがあります。

システム・オプションから

  1. [システム] > [認証] > [基本ポリシー] > [LDAP] に移動し、[サーバー] タブをクリックします。
  2. リストから使用可能な LDAP アクション を選択します。
  3. [認証 LDAP サーバーの構成] ページで、[接続の設定] セクション に 2 つのオプションがあります。
  4. LDAP サーバの接続を確認するには、[LDAP 到達可能性のテスト] タブをクリックします。LDAP サーバへの接続に成功したことを示すポップアップメッセージを、TCP ポートの詳細と有効なクレデンシャルの信頼性とともに表示できます。
  5. エンドツーエンドの LDAP 認証を表示するには、「 エンドユーザー接続のテスト 」リンクをクリックします。
  6. [エンドユーザ接続のテスト] ページで、[テスト] をクリックします。
    • 認証ページで、ログインするための有効な資格情報を入力します。成功の画面が表示されます。

    認証成功画面

    • 認証に失敗した場合は、エラー画面が表示されます。

    認証失敗画面

「認証から」オプション

  1. [認証] > [ダッシュボード] に移動し、リストから使用可能な LDAP アクションを選択します。
  2. [認証 LDAP サーバーの構成] ページで、[接続の設定] セクション に 2 つのオプションがあります。
  3. LDAP サーバの接続を確認するには、[LDAP 到達可能性のテスト] タブをクリックします。LDAP サーバへの接続に成功したことを示すポップアップメッセージを、TCP ポートの詳細と有効なクレデンシャルの信頼性とともに表示できます。
  4. エンドツーエンドの LDAP 認証ステータスを表示するには、「 エンドユーザー接続のテスト 」リンクをクリックします。
  5. [エンドユーザ接続のテスト] ページで、[テスト] をクリックします。

    • 認証ページで、ログインするための有効な資格情報を入力します。成功の画面が表示されます。

    認証成功画面

    • 認証に失敗した場合は、エラー画面が表示されます。

    認証失敗画面

LDAP 認証の 14 日間のパスワード有効期限通知

Citrix ADCアプライアンスは、LDAPベースの認証で14日間のパスワード有効期限通知をサポートするようになりました。この機能を使用することにより、管理者はエンドユーザーにパスワードの有効期限のしきい値を日数で通知できます。14 日間のパスワード有効期限の通知は、セルフサービスパスワードリセット (SSPR) の前兆です。

注:

パスワードの有効期限の通知の最大値またはしきい値の期間 (日数) は 255 日です。

パスワードの有効期限通知の利点

  • ユーザーが自分でパスワードをリセットすることを許可し、パスワードの有効期限を日数でエンドユーザーに通知する柔軟な方法を管理者に提供します。
  • パスワードの有効期限日を追跡するためのエンドユーザーの依存性を排除します。
  • 有効期限が切れる前にパスワードを変更するために、(日数に基づいて)VPN ポータルページに通知をユーザに送信します。

この機能は、LDAP ベースの認証方式だけに適用できます。RADIUS または TACACS には適用されません。

14 日間のパスワード通知について

Citrix ADCアプライアンスは、LDAP認証サーバーから2つの属性(Max-Pwd-Age and Pwd-Last-Set)をフェッチします。

  • 最大有効期間。この属性は、パスワードが有効になるまでの最大時間を 100 ナノ秒間隔で示します。この値は、パスワードの有効期限が切れる前にパスワードが設定されてから 100 ナノ秒の間隔を表す大きな整数として格納されます。
  • Pwd-Last-set。この属性は、アカウントのパスワードが最後に変更された日時を決定します。

Citrix ADCアプライアンスは、LDAP認証サーバーから2つの属性を取得することにより、特定のユーザーのパスワードの有効期限が切れるまでの時間を決定します。この情報は、認証サーバー上でユーザーの資格情報が検証され、通知がユーザーに返されたときに収集されます。

set aaa parameterコマンドに新しいパラメータ「pwdExpiryNotification」が導入されました。このパラメータを使用すると、管理者はパスワードの有効期限の残り日数を追跡できます。Citrix ADCアプライアンスは、エンドユーザーにパスワードの有効期限の通知を開始できます。

現在、この機能は、LDAP を実装した Microsoft AD サーバを持つ認証サーバに対してのみ機能します。OpenLDAP ベースのサーバーのサポートは、後ほど対象となります。

次に、14 日間のパスワード有効期限通知を設定するイベントのフローの例を示します。

  1. 管理者は、Citrix ADCアプライアンスを使用して、パスワードの有効期限の時間(14日間)を設定します。
  2. ユーザーは、バックエンドサーバー上のリソースにアクセスするための HTTP または HTTPS 要求を送信します。
  3. Citrix ADCアプライアンスは、アクセスを提供する前に、LDAP認証サーバー上で構成されているものを使用してユーザーの資格情報を検証します。
  4. 認証サーバーへのこのクエリとともに、Citrix ADCアプライアンスは2つの属性の詳細をフェッチする要求を伝送します(Max-Pwd-Age and Pwd-Last-Set)。
  5. パスワードの有効期限が切れるまでの残り時間に基づいて、有効期限の通知が表示されます。
  6. その後、ユーザーは適切なアクションを実行してパスワードを更新します。

コマンドラインインターフェイスを使用して 14 日間の有効期限の通知を構成するには

14日間の有効期限通知は、ICAプロキシではなく、クライアントレスVPNおよびフルVPNのユースケース用に構成できます。

コマンドプロンプトで、次のコマンドを入力します。

  • set aaa parameter –pwdExpiryNotificationDays <positive_integer>
  • show aaa parameter

> set aaa parameter -pwdExpiryNotificationDays 14
完了
> show aaa parameter                          Configured AAA parameters  EnableStaticPageCaching: YES  EnableEnhancedAuthFeedback: NO  DefaultAuthType: LOCAL MaxAAAUsers:           Unlimited                                       AAAD nat ip: None            EnableSessionStickiness : NO  aaaSessionLoglevel : INFORMATIONAL               AAAD Log Level : INFORMATIONAL                 Dynamic address: OFF
GUI モード:オン
最大SAMLデフレートサイズ:1024              パスワード有効期限通知日数:14日

GUI を使用して 14 日間の有効期限の通知を構成するには

  1. [セキュリティ] > [AAA-アプリケーショントラフィック] > [認証設定]に移動します。
  2. [認証 AAA 設定の変更] をクリックします。
  3. [AAA パラメータの設定(Configure AAA Parameter)] ページで、[パスワード有効期限通知(days)] フィールドに日数を指定します。

    Citrix ADC AAA設定

  4. [OK]をクリックします。

    通知はVPNポータルページの右上隅に表示されます。

    通知