Citrix ADC

外部ユーザー認証

Citrix ADCアプライアンスの認証サービスは、ローカルでも外部でもかまいません。外部ユーザー認証では、アプライアンスは LDAP、RADIUS、TACACS+ などの外部サーバーを使用してユーザーを認証します。外部ユーザーを認証し、アプライアンスへのユーザー・アクセスを許可するには、認証ポリシーを適用する必要があります。Citrix ADCシステム認証では、高度な認証ポリシーと高度なポリシー式が使用されます。高度な認証ポリシーは、パーティション分割されたCitrix ADCアプライアンスのシステムユーザー管理にも使用されます。

注:

アプライアンスでクラシックポリシーとその式がまだ使用されている場合は、その使用を中止し、クラシックポリシーの使用をアドバンストポリシーインフラストラクチャに移行する必要があります。

認証ポリシーを作成したら、システムグローバルエンティティにバインドする必要があります。単一の認証ポリシーをシステムグローバルエンティティにバインドすることで、外部認証サーバ(TACACS など)を設定できます。また、複数のポリシーをシステムグローバルエンティティにバインドすることによって、認証サーバのカスケードを構成することもできます。

注:

外部ユーザーがアプライアンスにログインすると、ns.logファイルに「ユーザーが存在しません」というエラー・メッセージが生成されます。これは、システムが systemuser_systemcmdpolicy_binding コマンドを実行してユーザーの GUI を初期化するために発生します。

LDAP 認証(外部 LDAP サーバを使用)

Citrix ADCアプライアンスは、1つ以上のLDAPサーバーによるユーザーアクセスを認証するように構成できます。LDAP認証では、Active Directory、LDAPサーバー、およびアプライアンスで同じグループ名が必要です。文字と大文字小文字も同じである必要があります。

LDAP 認証ポリシーの詳細については、LDAP 認証ポリシー トピックを参照してください。

デフォルトでは、LDAP 認証は SSL/TLS プロトコルを使用して保護されています。セキュア LDAP 接続には 2 つのタイプがあります。最初のタイプでは、LDAP サーバーは、クリア LDAP 接続を受け入れるために使用されるポートとは別のポートで SSL/TLS 接続を受け入れます。ユーザーが SSL/TLS 接続を確立すると、LDAP トラフィックは接続を介して送信できます。2 番目のタイプは、セキュアでないLDAP接続とセキュアなLDAP接続の両方を許可し、サーバー上の単一のポートによって処理されます。このシナリオでは、セキュリティで保護された接続を作成するには、クライアントはまず、クリア LDAP 接続を確立します。次に、 LDAP コマンド StartTLS が接続を介してサーバーに送信されます。LDAP サーバーが StartTLS をサポートしている場合、接続は TLS を使用してセキュリティで保護された LDAP 接続に変換されます。

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

  • セキュリティで保護されていない LDAP 接続の場合は 389
  • 安全なLDAP接続用の636
  • Microsoftのセキュリティで保護されていない LDAP 接続の場合 3268
  • Microsoftの LDAP 接続のセキュリティで保護された 3269

StartTLS コマンドを使用する LDAP 接続では、ポート番号 389 が使用されます。アプライアンスでポート番号389または3268が構成されている場合、StartTLSを使用して接続を試みます。他のポート番号が使用されている場合、接続試行は SSL/TLS を使用します。StartTLS または SSL/TLS を使用できない場合、接続は失敗します。

LDAPサーバを設定する場合、英字の大文字と小文字は、サーバとアプライアンスの大文字と小文字と一致する必要があります。LDAP サーバーのルートディレクトリが指定されている場合、すべてのサブディレクトリも検索され、ユーザー属性が検索されます。大きなディレクトリでは、パフォーマンスに影響を与える可能性があります。このため、特定の組織単位(OU)を使用することをお勧めします。

次の表に、ベース識別名 (DN) の例を示します。

LDAPサーバ ベース DN
Microsoft Active Directory DC=Citrix、DC=Local
Novell eDirectory dc=Citrix、dc=net
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 CN=管理者、CN=ユーザー、DC=Citrix、DC=ローカル
Novell eDirectory cn=admin, dc=Citrix, dc=net
IBM Directory Server LDAP_dn
Lotus Domino CN=Notes Administrator, O=Citrix, C=US
Sun ONE Directory(旧iPlanet) uid=admin, ou=Administrators, ou=TopologyManagement, o=NetscapeRoot
LDAPサーバ バインド DN
Microsoft Active Directory CN=管理者、CN=ユーザー、DC=Citrix、DC=ローカル
Novell eDirectory cn=admin, dc=Citrix, dc=net
IBM Directory Server LDAP_dn
Lotus Domino CN=Notes Administrator, O=Citrix, C=US
Sun ONE Directory(旧iPlanet) uid=admin, ou=Administrators, ou=TopologyManagement, o=NetscapeRoot

CLI を使用した LDAP ユーザー認証の設定

外部ユーザーの LDAP 認証を設定するには、次の手順を実行します。

LDAP ポリシーの設定

コマンドプロンプトで、次の操作を行います。

ステップ 1: LDAP アクション を作成します。

add authentication ldapAction <name> {-serverIP <ip_addr|ipv6_addr|*> | {-serverName <string>}} >] [-authTimeout <positive_integer>] [-ldapBase <string>] [-ldapBindDn <string>] {-ldapBindDnPassword } [-ldapLoginName <string>] [-groupAttrName <string>] [-subAttributeName <string>]

例:

add authentication ldapAction ldap_act -serverIP <IP> -authTimeout 30 -ldapBase "CN=xxxxx,DC=xxxx,DC=xxx" -ldapBindDn "CN=xxxxx,CN=xxxxx,DC=xxxx,DC=xxx" -ldapBindDnPassword abcd -ldapLoginName sAMAccountName -groupattrName memberOf -subAttributeName CN

パラメータの説明については、認証および認可コマンドリファレンス トピックを参照してください。

手順 2: 従来の LDAP ポリシーを作成します。

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

例:

add authentication ldappolicy ldap_pol_classic ns_true ldap_act

注:

従来のLDAPポリシーまたは高度なLDAPポリシーを使用して構成できますが、 従来のポリシーはCitrix ADC 13.1リリース以降では廃止されるため、高度な認証ポリシーを使用することをお勧めします。

手順 3: 詳細な LDAP ポリシーを作成する

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

例:

add authentication policy ldap_pol_advance -rule true -action ldap_act

ステップ 4: LDAP ポリシーをシステムグローバルにバインドします。

bind system global <policyName> [-priority <positive_integer]

CLI を使用して LDAP 認証用に認証ポリシーをシステムグローバルにバインドする

コマンドラインプロンプトで、次の操作を実行します。

bind system global <policyName> [-priority <positive_integer>]

例:

bind system global ldap_pol_advanced -priority 10

Citrix ADC GUIを使用したLDAP認証用の認証ポリシーをシステムグローバルにバインドする

  1. [システム] > [認証] > [ポリシー] に移動します。
  2. 詳細ウィンドウで、[グローバルバインド] をクリックして、システムグローバル認証ポリシーバインドを作成します。
  3. [バインド] をクリックします。

LDAP 認証用に認証ポリシーをシステムグローバルにバインドする

Citrix ADC GUIを使用してLDAPユーザー認証を構成する

  1. [システム] > [認証] > [詳細ポリシー] > [ポリシー] に移動します
  2. [Add] をクリックして、LDAP タイプの認証ポリシーを作成します。
  3. [作成 して 閉じる] をクリックします。

LDAP ユーザー認証の設定

LDAP ディレクトリ内の属性の決定

LDAPディレクトリ属性の決定にヘルプが必要な場合は、Softerraから無償のLDAPブラウザで簡単に検索できます。

LDAPブラウザは、Softerra LDAP管理者Webサイト<http://www.ldapbrowser.com>からダウンロードできます。ブラウザをインストールしたら、次の属性を設定します。

  • LDAP サーバーのホスト名または IP アドレス。
  • LDAP サーバーのポート。デフォルトは 389 です。
  • ベース DN フィールドは空白のままにできます。
  • LDAP ブラウザから提供される情報は、[認証] タブに必要なベース DN を決定するのに役立ちます。
  • 匿名バインドチェックは、LDAP サーバーが接続するためにブラウザーのユーザークレデンシャルを必要とするかどうかを決定します。LDAP サーバーでクレデンシャルが必要な場合は、チェックボックスをオフのままにします。

設定が完了すると、LDAP ブラウザは左ペインにプロファイル名を表示し、LDAP サーバに接続します。

詳細については、LDAPを参照してください。

RADIUS 認証(外部 RADIUS サーバを使用)

Citrix ADCアプライアンスは、1つ以上のRADIUSサーバーによるユーザーアクセスを認証するように構成できます。RSA SecurID、SafeWord、またはGemalto Protiva製品を使用している場合は、RADIUSサーバを使用してください。

RADIUS 認証ポリシーの詳細については、RADIUS 認証ポリシー トピックを参照してください。

構成によっては、ネットワークアクセスサーバの IP アドレス (NAS IP) またはネットワークアクセスサーバ識別子 (NAS ID) の使用が必要になる場合があります。RADIUS認証サーバを使用するようにアプライアンスを設定する場合は、次のガイドラインに従ってください。

  • NAS IPの使用を有効にした場合、アプライアンスは、RADIUS接続の確立に使用される送信元IPアドレスではなく、構成済みのIPアドレスをRADIUSサーバに送信します。
  • NAS IDを構成すると、アプライアンスはRADIUSサーバーにこの識別子を送信します。NAS IDを構成しないと、アプライアンスはRADIUSサーバーにホスト名を送信します。
  • NAS IPアドレスが有効な場合、アプライアンスはRADIUSサーバとの通信に使用されたNAS IDを無視します。

Citrix ADC GUIを使用してRADIUSユーザー認証を構成する

  1. [システム] > [認証] > [ポリシー] に移動します。
  2. [Add] をクリックして、RADIUS タイプの認証ポリシーを作成します。
  3. [作成 して 閉じる] をクリックします。

RADIUS ポリシーの設定

RADIUS ユーザ認証プロトコルの選択

Citrix ADCアプライアンスは、ユーザー認証に次のようないくつかのプロトコルのいずれかを使用するように構成されたRADIUSの実装をサポートします。

  • パスワード認証プロトコル
  • チャレンジハンドシェイク認証プロトコル (CHAP)
  • Microsoftのチャレンジハンドシェイク認証プロトコル (MS-CHAP バージョン 1 およびバージョン 2)

環境が RADIUS 認証を使用するように設定されていて、RADIUS サーバが Password Authentication Protocol で構成されている場合、RADIUS サーバに強力な共有シークレットを割り当てることで、ユーザ認証を強化できます。強力な RADIUS 共有シークレットは、大文字と小文字、数字、および句読点のランダムなシーケンスで構成され、最低 22 文字の長さです。可能であれば、ランダムな文字生成プログラムを使用して RADIUS 共有秘密を特定します。

RADIUSトラフィックをさらに保護するには、各アプライアンスまたは仮想サーバに異なる共有シークレットを割り当てます。RADIUS サーバでクライアントを定義する場合、各クライアントに個別の共有シークレットを割り当てることもできます。また、RADIUS 認証を使用する各ポリシーを個別に設定する必要があります。

共有シークレットは、RADIUSポリシーの作成時にアプライアンス上で構成されます。

IP アドレス抽出の構成

RADIUSサーバからIPアドレスを抽出するようにアプライアンスを構成できます。ユーザが RADIUS サーバで認証されると、サーバはユーザに割り当てられたフレーム IP アドレスを返します。IP アドレス抽出の属性を次に示します。

  • リモートRADIUSサーバが、アプライアンスにログオンしたユーザーの内部ネットワークからのIPアドレスを提供できるようにします。
  • ベンダーでエンコードされたものを含む、タイプ ip-address を使用して、任意の RADIUS 属性の設定を許可します。

IP アドレス抽出用に RADIUS サーバを設定する場合は、ベンダー ID と属性タイプを設定します。

ベンダー識別子により、RADIUS サーバは、RADIUS サーバ上で設定されている IP アドレスのプールから IP アドレスをクライアントに割り当てることができます。ベンダー ID と属性は、RADIUS クライアントと RADIUS サーバ間のアソシエーションを作成するために使用されます。ベンダー ID は、内部ネットワークの IP アドレスを提供する RADIUS 応答の属性です。値 0 は、属性がベンダーエンコードされていないことを示します。属性タイプは、RADIUS 応答のリモート IP アドレス属性です。最小値は 1 で、最大値は 255 です。

一般的な設定では、 RADIUS 属性 フレーム付き IP アドレスを抽出します。ベンダー ID がゼロに設定されているか、指定されていません。属性タイプは8に設定されています。

Citrix ADC GUIを使用してIPアドレス抽出を構成する

  1. [システム] > [認証] > [Radius] に移動し、ポリシーを選択します。
  2. サーバー・パラメータを変更し、「グループ・ ベンダー識別子」フィールドと「グループ属性タイプ」 フィールドで関連する値を設定します。

TACACS+ 認証(外部 TACACS+ サーバを使用)

TACACS+ サーバを認証用に設定できます。RADIUS 認証と同様に、TACACS+ は秘密キー、IP アドレス、およびポート番号を使用します。デフォルトのポート番号は 49 です。TACACS+ サーバを使用するようにアプライアンスを設定するには、サーバの IP アドレスと TACACS+ シークレットを指定します。使用中のサーバーのポート番号がデフォルトのポート番号である49以外のものである場合にのみ、port を指定する必要があります。

詳細については、TACACS 認証を参照してください。

Citrix ADC GUIを使用してTACACS+認証を構成する

  1. [システム] > [認証] > [ポリシー] に移動します。
  2. [Add] をクリックして、TACACS タイプの認証ポリシーを作成します。
  3. [作成 して 閉じる] をクリックします。

TACACS ポリシーの設定

アプライアンスで TACACS+ サーバ設定を構成したら、ポリシーをシステムグローバルエンティティにバインドします。

CLI を使用して認証ポリシーをシステムグローバルエンティティにバインドする

認証ポリシーを設定したら、ポリシーをシステムグローバルエンティティにバインドします。

コマンドラインプロンプトで、次の操作を実行します。

bind system global <policyName> [-priority <positive_integer>]

例:

bind system global pol_classic -priority 10

また、TACACSを使用した外部認証については、Citrixの記事CTX113820を参照してください。

外部ユーザーのログオン試行に失敗した回数を表示する

Citrix ADC管理コンソールに正常にログオンする前に、少なくとも1回失敗したログインを試行すると、Citrix ADCアプライアンスは、外部ユーザーに対する無効なログイン試行回数を表示します。

注:

現在、Citrix は、システムパラメータで「PersistentLoginAttempts」パラメータが有効になっている外部ユーザーに対してのみキーボード対話型認証をサポートしています。

コマンドプロンプトで、次のように入力します。 set aaa parameter -maxloginAttempts <value> -failedLoginTimeout <value> -persistentLoginAttempts (ENABLED | DISABLED )]

例: set aaa parameter –maxloginAttempts 5 -failedLoginTimeout 4 –persistentLoginAttempts ENABLED

Following msg will be seen to external user when he tries 1 invalid login attempt before successfully login to the ADC management access.

Connection established.
To escape to local shell, press 'Ctrl+Alt+]'.
###############################################################################
#                                                                             #
#        WARNING: Access to this system is for authorized users only          #
#         Disconnect IMMEDIATELY if you are not an authorized user!           #
#                                                                             #
###############################################################################


WARNING! The remote SSH server rejected X11 forwarding request.
Last login: Mon Aug 24 17:09:00 2020 from 10.150.32.39

The number of unsuccessful login attempts since the last successful login : 1
Done
>
The number of unsuccessful login attempts since the last successful login : 1
Done
>