はじめに
このドキュメントでは、Cisco Authentication Management Center(FMC)およびFirepower Threat Defense(FTD)でMicrosoft Lightweight Directory Access Protocol(LDAP)外部Firepowerを有効にする方法について説明します。
前提条件
要件
次の項目に関する知識があることが推奨されます。
- シスコFTD
- Cisco FMC
- Microsoft LDAP
使用するコンポーネント
このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づいています。
- FTD6.5.0-123
- FMC 6.5.0-115
- Microsoft Server 2012
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
背景説明
FMCと管理対象デバイスには、管理アクセス用のデフォルトの管理者アカウントが含まれています。FMCおよび管理対象デバイス上に、内部ユーザとして、またはモデルでサポートされている場合はLDAPまたはRADIUSサーバ上の外部ユーザとして、カスタムユーザアカウントを追加できます。外部ユーザ認証は、FMCとFTDでサポートされます。
・内部ユーザ:FMC/FTDデバイスは、ユーザ認証のためにローカルデータベースをチェックします。
・外部ユーザ:ユーザがローカルデータベースに存在しない場合、外部LDAPまたはRADIUS認証サーバからのシステム情報がユーザデータベースに入力されます。
ネットワーク図
設定
FMC GUIでの基本的なLDAP設定
ステップ 1:移動先 System > Users > External Authentication
:を入力します。
ステップ 2:選択 Add External Authentication Object
:を入力します。
ステップ 3:次の必須フィールドに入力します。
ステップ 4:次を有効にします。 External Authentication
オブジェクトと保存:
外部ユーザのシェルアクセス
FMCでは、Webインターフェイス用とCLIアクセス用の2つの異なる内部管理者ユーザがサポートされています。つまり、誰がGUIにアクセスできるのか、誰がCLIにアクセスできるのかということははっきりと区別されます。インストール時に、デフォルトの管理者ユーザのパスワードは、GUIとCLIの両方で同じになるように同期されますが、これらは異なる内部メカニズムによって追跡され、最終的には異なる場合があります。
LDAP外部ユーザにもシェルアクセスを許可する必要があります。
ステップ 1:移動先 System > Users > External Authentication
をクリックして Shell Authentication
図に示すドロップダウンボックスを使用して保存します。
ステップ 2:FMCで変更を展開します。
外部ユーザのシェルアクセスが設定されると、次の図に示すように、SSH経由のログインが有効になります。
FTDへの外部認証
外部認証はFTDでイネーブルにできます。
ステップ 1:移動先 Devices > Platform Settings > External Authentication
を参照。クリック Enabled
保存します。
ユーザ ロール
ユーザ権限は、割り当てられたユーザロールに基づきます。また、組織のニーズに合わせてアクセス権限を持つカスタムユーザロールを作成したり、セキュリティアナリストやディスカバリ管理者などの事前定義されたロールを使用することもできます。
ユーザロールには、次の2つのタイプがあります。
- Webインターフェイスユーザロール
- CLIユーザロール
事前定義されたロールの完全なリストと詳細については、「ユーザロール」を参照してください。
すべての外部認証オブジェクトのデフォルトユーザロールを設定するには、 System > Users > External Authentication
> Default User Role
を参照。 割り当てるデフォルトのユーザロールを選択し、 Save
を参照。
デフォルトのユーザロールを選択したり、特定のオブジェクトグループ内の特定のユーザに特定のロールを割り当てたりするには、オブジェクトを選択し、 Group Controlled Access Roles
次の図に示すように、
SSLまたはTLS
DNSはFMCで設定する必要があります。これは、証明書のサブジェクト値が Authentication Object Primary Server Hostname
を参照。セキュアLDAPが設定されると、パケットキャプチャでクリアテキストのバインド要求が表示されなくなります。
SSLではデフォルトポートが636に変更され、TLSでは389のままになります。
注:TLS暗号化では、すべてのプラットフォームで証明書が必要です。SSLの場合、FTDにも証明書が必要です。その他のプラットフォームでは、SSLに証明書は不要です。ただし、中間者攻撃を防ぐために、常にSSL用の証明書をアップロードすることをお勧めします。
ステップ 1:移動先 Devices > Platform Settings > External Authentication > External Authentication Object
SSL/TLSの詳細オプション情報を入力します。
ステップ 2:サーバの証明書に署名したCAの証明書をアップロードします。証明書はPEM形式である必要があります。
ステップ 3:設定を保存します。
確認
テスト検索ベース
LDAPが設定されているWindowsコマンドプロンプトまたはPowerShellを開き、次のコマンドを入力します。 dsquery user -name
を参照。
例:
PS C:\Users\Administrator> dsquery user -name harry*
PS C:\Users\Administrator> dsquery user -name *
LDAP統合のテスト
移動先 System > Users > External Authentication > External Authentication Object
を参照。ページの下部に、 Additional Test Parameters
図に示すセクション:
結果を表示するには、Testを選択します。
トラブルシュート
FMC/FTDとLDAPはどのように相互作用してユーザをダウンロードしますか。
FMCがMicrosoft LDAPサーバからユーザをプルできるようにするには、FMCは最初に、LDAP管理者クレデンシャルを使用して、ポート389(SSL)または636(SSL)でバインド要求を送信する必要があります。LDAPサーバがFMCを認証できるようになると、成功メッセージで応答します。最後に、FMCは次の図に示すように、検索要求メッセージを使用して要求を行うことができます。
<< --- FMC sends: bindRequest(1) "Administrator@SEC-LAB0" simple LDAP must respond with: bindResponse(1) success --- >> << --- FMC sends: searchRequest(2) "DC=SEC-LAB,DC=NET" wholeSubtree
デフォルトでは、認証はクリアテキストでパスワードを送信することに注意してください。
ユーザログイン要求を認証するためにFMC/FTDとLDAPはどのように相互作用しますか。
LDAP認証が有効な状態でユーザがFMCまたはFTDにログインできるように、最初のログイン要求がFirepowerに送信されます。ただし、ユーザ名とパスワードはLDAPに転送され、成功/拒否応答が返されます。つまり、FMCとFTDはパスワード情報をデータベース内にローカルに保持せず、代わりに続行する方法に関するLDAPからの確認を待ちます。
ユーザ名とパスワードが受け入れられると、次の図に示すようにWeb GUIにエントリが追加されます。
ユーザ情報を確認するには、FMC CLISHでshow userコマンドを実行します。 > show user
コマンドは、指定したユーザの詳細な設定情報を表示します。次の値が表示されます。
Login:ログイン名
UID:数値のユーザID
Auth(ローカルまたはリモート):ユーザの認証方法
Access(BasicまたはConfig):ユーザの特権レベル
有効(有効または無効):ユーザがアクティブかどうか
Reset(YesまたはNo):ユーザが次回ログイン時にパスワードを変更する必要があるかどうか
Exp(NeverまたはNumber):ユーザのパスワードを変更するまでの日数
Warn(N/Aまたは数値):パスワードの有効期限が切れるまでにパスワードを変更するためにユーザに与えられる日数
Str(YesまたはNo):ユーザのパスワードが強度チェックの基準を満たす必要があるかどうか
ロック(YesまたはNo):ログインの失敗回数が多すぎるためにユーザーのアカウントがロックされているかどうか
Max(N/Aまたは数値):ログインに失敗した回数の上限。この回数を超えると、ユーザのアカウントがロックされます。
SSLまたはTLSが期待どおりに機能しない
FTDでDNSを有効にしないと、ピグテールログにLDAPが到達不能であることを示すエラーが表示される場合があります。
root@SEC-FMC:/$ sudo cd /var/common
root@SEC-FMC:/var/common$ sudo pigtail
MSGS: 03-05 14:35:31 SEC-FTD sshd[10174]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=192.0.2.15 user=h.potter
MSGS: 03-05 14:35:31 SEC-FTD sshd[10174]: pam_ldap: ldap_starttls_s: Can't contact LDAP server
MSGS: 03-05 14:35:33 SEC-FTD sshd[10138]: error: PAM: Authentication failure for h.potter from 192.0.2.15
MSGS: 03-05 14:35:33 SEC-FTD sshd[10138]: Failed keyboard-interactive/pam for h.potter from 192.0.2.15 port 61491 ssh2
MSGS: 03-05 14:35:33 SEC-FTD sshd[10138]: error: maximum authentication attempts exceeded for h.potter from 192.0.2.15 port 61491 ssh2 [preauth]
MSGS: 03-05 14:35:33 SEC-FTD sshd[10138]: Disconnecting authenticating user h.potter 192.0.2.15 port 61491: Too many authentication failures [preauth]
firepowerがLDAPサーバのFQDNを解決できることを確認します。そうでない場合は、図に示すように正しいDNSを追加します。
FTD:FTD CLISHにアクセスし、次のコマンドを実行します。 > configure network dns servers
.
FMC:選択 System > Configuration
を選択し、次の図に示すようにManagement Interfacesを選択します。
次の図に示すように、FMCにアップロードされた証明書が、LDAPのサーバ証明書に署名したCAの証明書であることを確認します。
パケットキャプチャを使用して、LDAPサーバが正しい情報を送信していることを確認します。
関連情報