内容

はじめに

前提条件

要件

使用するコンポーネント

TACACS の動作の仕組み

TACACS に関する問題のトラブルシューティング

関連情報

はじめに

このドキュメントでは、Cisco IOS®/Cisco IOS-XEルータおよびスイッチでTACACS認証の問題をトラブルシューティングする手順について説明します。

前提条件

要件

次の項目に関する基本的な知識が推奨されます。

- シスコ デバイスでの認証、認可、およびアカウンティング（AAA）設定

- TACACS 設定

使用するコンポーネント

このドキュメントの内容は、特定のソフトウェアやハードウェアのバージョンに限定されるものではありません。

このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな（デフォルト）設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。

TACACS の動作の仕組み

TACACS+ プロトコルでは、宛先ポート番号 49 とともに、トランスポート プロトコルとして Transmission Control Protocol（TCP）を使用します。ルータがログイン要求を受信すると、TACACSサーバとのTCP接続が確立され、その後ユーザ名プロンプトがユーザに表示されます。ユーザがユーザ名を入力すると、ルータはパスワード プロンプトについて TACACS サーバと再度通信します。ユーザがパスワードを入力すると、ルータはその情報を TACACS サーバにもう一度送信します。TACACS サーバは、ユーザ クレデンシャルを確認し、ルータに応答を返します。AAA セッションの結果は、次のいずれかになります。

合格：認証されると、ルータにAAA許可が設定されている場合にのみサービスが開始されます。この時点で、認可フェーズが開始されます。

FAIL：認証に失敗した場合は、以降のアクセスを拒否されるか、ログインを続けて再試行するように求められます。これはTACACS+デーモンによって異なります。サーバからFAILを受信した場合、TACACSサーバでユーザに対して設定されているポリシーを確認できます

エラー：認証中にエラーが発生したことを示します。このエラーはデーモンで起こる場合と、デーモンとルータ間のネットワーク接続で起こる場合があります。ERROR 応答が返されると、ルータは通常、代替のユーザ認証方法の使用を試行します。

以下に Cisco ルータでの AAA および TACACS の基本設定を示します。

aaa new-model

aaa authentication log in default group tacacs+ local

aaa authorization exec default group tacacs+ local

!

tacacs server prod

address ipv4 10.106.60.182

key cisco123

!

ip tacacs source-interface Gig 0/0

TACACS に関する問題のトラブルシューティング

ステップ 1：

適切な送信元インターフェイスを持つルータから、ポート49でTelnetを使用してTACACSサーバへの接続を確認します。ルータがポート49でTACACSサーバに接続できない場合、トラフィックをブロックするファイアウォールまたはアクセスリストが存在する可能性があります。

Router#telnet 10.106.60.182 49

Trying 10.106.60.182, 49 ... Open

ステップ 2：

AAAクライアントが、正しいIPアドレスと共有秘密キーを使用してTACACSサーバに正しく設定されていることを確認します。ルータに複数の発信インターフェイスがある場合は、このコマンドを使用してTACACS送信元インターフェイスを設定することを推奨します。IPアドレスがTACACSサーバのクライアントIPアドレスとして設定されているインターフェイスを、ルータのTACACS送信元インターフェイスとして設定できます

Router(config)#ip tacacs source-interface Gig 0/0

ステップ 3：

TACACSソースインターフェイスがVirtual Routing and Forwarding(VRF)上にあるかどうかを確認します。インターフェイスがVRF上にある場合は、AAAサーバグループの下でVRF情報を設定できます。VRF対応TACACSの設定については、『TACACS設定ガイド』を参照してください。

ステップ 4：

test aaaを実行し、サーバから正しい応答を受信することを確認します。

Router#test aaa  group tacacs+ cisco cisco legacy

Sending password

User successfully authenticated

ステップ 5：

test aaa が失敗した場合、根本原因を特定するために、次のデバッグを有効にし、ルータと TACACS サーバ間のトランザクションを分析します。

debug aaa authentication

debug aaa authorization

debug tacacs

debug ip tcp transaction

機能している場合のデバッグ出力の例を次に示します。

*Apr  6 13:32:50.462: AAA/BIND(00000054): Bind i/f

*Apr  6 13:32:50.462: AAA/AUTHEN/LOGIN (00000054): Pick method list 'default'

*Apr  6 13:32:50.462: TPLUS: Queuing AAA Authentication request 84 for processing

*Apr  6 13:32:50.462: TPLUS(00000054) log in timer started 1020 sec timeout

*Apr  6 13:32:50.462: TPLUS: processing authentication start request id 84

*Apr  6 13:32:50.462: TPLUS: Authentication start packet created for 84()

*Apr  6 13:32:50.462: TPLUS: Using server 10.106.60.182

*Apr  6 13:32:50.462: TPLUS(00000054)/0/NB_WAIT/2432818: Started 5 sec timeout

*Apr  6 13:32:50.466: TPLUS(00000054)/0/NB_WAIT: socket event 2

*Apr  6 13:32:50.466: TPLUS(00000054)/0/NB_WAIT: wrote entire 38 bytes request

*Apr  6 13:32:50.466: TPLUS(00000054)/0/READ: socket event 1

*Apr  6 13:32:50.466: TPLUS(00000054)/0/READ: Would block while reading

*Apr  6 13:32:50.466: TPLUS(00000054)/0/READ: socket event 1

*Apr  6 13:32:50.466: TPLUS(00000054)/0/READ: read entire 12 header bytes (expect 43 bytes data)

*Apr  6 13:32:50.466: TPLUS(00000054)/0/READ: socket event 1

*Apr  6 13:32:50.466: TPLUS(00000054)/0/READ: read entire 55 bytes response

*Apr  6 13:32:50.466: TPLUS(00000054)/0/2432818: Processing the reply packet

*Apr  6 13:32:50.466: TPLUS: Received authen response status GET_USER (7)

*Apr  6 13:32:53.242: TPLUS: Queuing AAA Authentication request 84 for processing

*Apr  6 13:32:53.242: TPLUS(00000054) log in timer started 1020 sec timeout

*Apr  6 13:32:53.242: TPLUS: processing authentication continue request id 84

*Apr  6 13:32:53.242: TPLUS: Authentication continue packet generated for 84

*Apr  6 13:32:53.242: TPLUS(00000054)/0/WRITE/10882BBC: Started 5 sec timeout

*Apr  6 13:32:53.242: TPLUS(00000054)/0/WRITE: wrote entire 22 bytes request

*Apr  6 13:32:53.246: TPLUS(00000054)/0/READ: socket event 1

*Apr  6 13:32:53.246: TPLUS(00000054)/0/READ: read entire 12 header bytes (expect 16 bytes data)

*Apr  6 13:32:53.246: TPLUS(00000054)/0/READ: socket event 1

*Apr  6 13:32:53.246: TPLUS(00000054)/0/READ: read entire 28 bytes response

*Apr  6 13:32:53.246: TPLUS(00000054)/0/10882BBC: Processing the reply packet

*Apr  6 13:32:53.246: TPLUS: Received authen response status GET_PASSWORD (8)

*Apr  6 13:32:54.454: TPLUS: Queuing AAA Authentication request 84 for processing

*Apr  6 13:32:54.454: TPLUS(00000054) log in timer started 1020 sec timeout

*Apr  6 13:32:54.454: TPLUS: processing authentication continue request id 84

*Apr  6 13:32:54.454: TPLUS: Authentication continue packet generated for 84

*Apr  6 13:32:54.454: TPLUS(00000054)/0/WRITE/2432818: Started 5 sec timeout

*Apr  6 13:32:54.454: TPLUS(00000054)/0/WRITE: wrote entire 22 bytes request

*Apr  6 13:32:54.458: TPLUS(00000054)/0/READ: socket event 1

*Apr  6 13:32:54.458: TPLUS(00000054)/0/READ: read entire 12 header bytes (expect 6 bytes data)

*Apr  6 13:32:54.458: TPLUS(00000054)/0/READ: socket event 1

*Apr  6 13:32:54.458: TPLUS(00000054)/0/READ: read entire 18 bytes response

*Apr  6 13:32:54.458: TPLUS(00000054)/0/2432818: Processing the reply packet

*Apr  6 13:32:54.458: TPLUS: Received authen response status PASS (2)

*Apr  6 13:32:54.462: AAA/AUTHOR (0x54): Pick method list 'default'

*Apr  6 13:32:54.462: TPLUS: Queuing AAA Authorization request 84 for processing

*Apr  6 13:32:54.462: TPLUS(00000054) log in timer started 1020 sec timeout

*Apr  6 13:32:54.462: TPLUS: processing authorization request id 84

*Apr  6 13:32:54.462: TPLUS: Protocol set to None .....Skipping

*Apr  6 13:32:54.462: TPLUS: Sending AV service=shell

*Apr  6 13:32:54.462: TPLUS: Sending AV cmd*

*Apr  6 13:32:54.462: TPLUS: Authorization request created for 84(cisco)

*Apr  6 13:32:54.462: TPLUS: using previously set server 10.106.60.182 from group tacacs+

*Apr  6 13:32:54.462: TPLUS(00000054)/0/NB_WAIT/2432818: Started 5 sec timeout

*Apr  6 13:32:54.462: TPLUS(00000054)/0/NB_WAIT: socket event 2

*Apr  6 13:32:54.462: TPLUS(00000054)/0/NB_WAIT: wrote entire 62 bytes request

*Apr  6 13:32:54.462: TPLUS(00000054)/0/READ: socket event 1

*Apr  6 13:32:54.462: TPLUS(00000054)/0/READ: Would block while reading

*Apr  6 13:32:54.470: TPLUS(00000054)/0/READ: socket event 1

*Apr  6 13:32:54.470: TPLUS(00000054)/0/READ: read entire 12 header bytes (expect 18 bytes data)

*Apr  6 13:32:54.470: TPLUS(00000054)/0/READ: socket event 1

*Apr  6 13:32:54.470: TPLUS(00000054)/0/READ: read entire 30 bytes response

*Apr  6 13:32:54.470: TPLUS(00000054)/0/2432818: Processing the reply packet

*Apr  6 13:32:54.470: TPLUS: Processed AV priv-lvl=15

*Apr  6 13:32:54.470: TPLUS: received authorization response for 84: PASS

*Apr  6 13:32:54.470: AAA/AUTHOR/EXEC(00000054): processing AV cmd=

*Apr  6 13:32:54.470: AAA/AUTHOR/EXEC(00000054): processing AV priv-lvl=15

*Apr  6 13:32:54.470: AAA/AUTHOR/EXEC(00000054): Authorization successful

次に、TACACSサーバが誤った事前共有キーで設定されている場合のルータからのデバッグ出力例を示します。

*Apr  6 13:35:07.826: AAA/BIND(00000055): Bind i/f

*Apr  6 13:35:07.826: AAA/AUTHEN/LOGIN (00000055): Pick method list 'default'

*Apr  6 13:35:07.826: TPLUS: Queuing AAA Authentication request 85 for processing

*Apr  6 13:35:07.826: TPLUS(00000055) log in timer started 1020 sec timeout

*Apr  6 13:35:07.826: TPLUS: processing authentication start request id 85

*Apr  6 13:35:07.826: TPLUS: Authentication start packet created for 85()

*Apr  6 13:35:07.826: TPLUS: Using server 10.106.60.182

*Apr  6 13:35:07.826: TPLUS(00000055)/0/NB_WAIT/225FE2DC: Started 5 sec timeout

*Apr  6 13:35:07.830: TPLUS(00000055)/0/NB_WAIT: socket event 2

*Apr  6 13:35:07.830: TPLUS(00000055)/0/NB_WAIT: wrote entire 38 bytes request

*Apr  6 13:35:07.830: TPLUS(00000055)/0/READ: socket event 1

*Apr  6 13:35:07.830: TPLUS(00000055)/0/READ: Would block while reading

*Apr  6 13:35:07.886: TPLUS(00000055)/0/READ: socket event 1

*Apr  6 13:35:07.886: TPLUS(00000055)/0/READ: read entire 12 header bytes (expect 6 bytes data)

*Apr  6 13:35:07.886: TPLUS(00000055)/0/READ: socket event 1

*Apr  6 13:35:07.886: TPLUS(00000055)/0/READ: read entire 18 bytes response

*Apr  6 13:35:07.886: TPLUS(00000055)/0/225FE2DC: Processing the reply packet

*Apr  6 13:35:07.886: TPLUS: received bad AUTHEN packet: length = 6, expected 43974

*Apr  6 13:35:07.886: TPLUS: Invalid AUTHEN packet (check keys).

関連情報

- Cisco IOS での TACACS 設定

- テクニカル サポートとドキュメント - Cisco Systems