MR RADIUS のトラブルシューティング
概要
MR アクセス ポイント、MS スイッチ、MX/Z セキュリティ アプライアンス(Meraki デバイス)には、RADIUS 認証のために外部サーバを設定できる機能があります。本記事では、RADIUS に関する問題が発生した際の一般的なトラブルシューティング手法の概要と、問題を体系的に切り分けて修正するためのフローを紹介します。
RADIUS の設定や初期セットアップについては、次の記事を参照してください。
ダッシュボード RADIUS テスト ツール
ダッシュボードの設定には、以下のとおり RADIUS サーバとの到達性を検証するテスト ツールがあります。「テストを開始」をクリックして RADIUS の資格情報を使用すると、「Test = Pass」または「Test = Fail」のいずれかになります。テスト ツールは、AP と RADIUS サーバ間で EAP-PEAP(MS-CHAPv2)を使用した RADIUS Access-Request/Challenge のやり取りをトリガーします。これは、AP からサーバに到達できることと、入力した資格情報が有効であることのみを確認するためのものです。EAP-TLS などクライアント側証明書を必要とする EAP タイプを使用している場合、AP には証明書がインストールされていないためテストは失敗します。実際のクライアント デバイスでのテストを推奨します。MR アクセス ポイントがサポートする EAP タイプはこちらに掲載されています。
Test = Pass
ダッシュボードの RADIUS テストが成功した場合は、次の点を確認してください。
- テストが成功した場合、RADIUS サーバには到達でき、認証用に構成されています。クライアントが接続できない場合は、クライアント デバイスが EAP セッションを開始しているかを確認してください。
- クライアント認証が失敗した後に RADIUS サーバで生成されるログを確認してください。
Test = Fail
RADIUS サーバに ping で到達できるにもかかわらずテストが失敗する場合は、ダッシュボードのパケット キャプチャに進んでください。
注意: MR 27-1 以降を実行しているアクセスポイントでは、RADIUS テスト ツールを使用する際に送信される access-request パケットにService-Type 属性が含まれます。
RADIUS 認証のトラブルシューティング フロー
エンタープライズ/802.1X セキュリティを使用する SSID にクライアントが接続できない理由を調査するため、以下の質問に従ってください。
AP と RADIUS サーバ間の通信をブロックするファイアウォール ルールがないことを確認してください。
ping が成功したら、再試行してください。
なお、ほとんどの場合、有線キャプチャも必要になります。
AP から送信された Access-Request が、RADIUS サーバが接続されているポートに到達していることが確認できますか。
Access-Request と Access-Challenge の両方が見える場合は、Access-Challenge が AP に到達していない理由を調査してください。
または RADIUS サーバのサポートにお問い合わせください
なお、ほとんどの場合、ワイヤレス/モニターモード キャプチャも必要になります。
なお、ほとんどの場合、ワイヤレス/モニターモード キャプチャも必要になります。
なお、ほとんどの場合、ワイヤレス/モニターモード キャプチャも必要になります。
なお、ほとんどの場合、ワイヤレス/モニターモード キャプチャも必要になります。
なお、ほとんどの場合、ワイヤレス/モニターモード キャプチャも必要になります。
以下のフローチャートは、一般的な RADIUS 認証の問題を切り分けてトラブルシューティングする手順を、どのようなシナリオでも上から下へ順番に案内するものです。本記事は、一般的な RADIUS の問題を解決するか、ネットワーク内の特定のポイントに問題を切り分けることを目的として構成されています。
ダッシュボード構成
最初に確認すべきことは、ダッシュボードで RADIUS の構成が正しく行われているかどうかです。RADIUS の構成には、次のパスでアクセスできます。
Wireless > Configure > Access Control: SSID を選択 > RADIUS Servers
Switch > Configure > Access Policies > Radius Servers
Security & SD-WAN/Teleworker Gateway > Configure > Access Policies > RADIUS for Splash Page
次のパラメータを必ず確認してください。
-
RADIUS サーバの IP アドレスが正しく追加されていること。
-
ポート番号がダッシュボードと RADIUS サーバの両方で一致していること。
-
シークレットがダッシュボードと RADIUS サーバの両方で同一であること。
RADIUS サーバ Ping テスト
RADIUS 認証の際、Meraki デバイスは RADIUS パケットで RADIUS サーバに到達しようとします。これを成功させるには、Meraki 側から RADIUS サーバへ到達できる必要があります。したがって、以下の手順で RADIUS サーバへの到達性をテストします。
-
デバイス ステータス ページに移動します。
-
MR: Wireless > Access Points > 対象 AP を選択 > Tools > Ping
-
MS: Switch > Switches > 対象スイッチを選択 > Tools > Ping
-
MX: Security & SD-WAN > Appliance Status > Tools > Ping
-
Z-Series: Teleworker Gateway > Appliance Status > Tools > Ping
-
-
Ping ツールを使用して、RADIUS サーバの IP に対して ping を送信します。
-
Ping が失敗する場合は、RADIUS サーバへのルーティングを確認してください。
ダッシュボード RADIUS テスト ツール
ダッシュボードの構成には、上図のとおり RADIUS サーバとの接続性を検証するテスト ツールがあります。「Begin test」をクリックして RADIUS の資格情報を使用すると、「Test = Pass」または「Test = Fail」のいずれかになります。テスト ツールは、AP と RADIUS サーバ間で EAP-PEAP(MS-CHAPv2)を使用した RADIUS Access-Request/Challenge のやり取りをトリガーします。これは、AP からサーバに到達できることと、入力した資格情報が有効であることのみを確認するためのものです。EAP-TLS などクライアント側証明書を必要とする EAP タイプを使用している場合、AP には証明書がインストールされていないためテストは失敗します。実際のクライアント デバイスでのテストを推奨します。MR アクセス ポイントがサポートする EAP タイプは こちらに掲載されています。
注: RADIUS テスト ツールは現在、MS スイッチと MR アクセス ポイントで利用可能です。現時点では、MX アプライアンスや Z-Series ゲートウェイでは利用できません。
Test = Pass
ダッシュボードの RADIUS テストが成功した場合は、次の点を確認してください。
-
テストが成功した場合、RADIUS サーバには到達でき、認証用に構成されています。クライアントが接続できない場合は、クライアント デバイスが EAP セッションを生成しているかを確認してください。
-
クライアント認証が失敗した後に RADIUS サーバで生成されるログを確認してください。
Test = Fail
RADIUS サーバに ping で到達できるにもかかわらずテストが失敗する場合は、ダッシュボードのパケット キャプチャに進んでください。
注意: MR 27-1 以降を実行しているアクセスポイントでは、RADIUS テスト ツールを使用する際に送信される access-request パケットにService-Type 属性が含まれます。
ダッシュボードのパケット キャプチャ
Meraki ダッシュボードでは、ネットワーク内のすべての RADIUS 対応 Meraki デバイス上で直接パケット キャプチャを取得できます。この機能には、Network Wide > Monitor > Packet Capture からアクセスできます。
パケット キャプチャは、RADIUS サーバに到達可能な Meraki デバイスの有線インターフェースで取得する必要があり、出力は .pcap ファイルとしてダウンロードして Wireshark で確認することを強く推奨します。
パケット キャプチャを開始したら、認証に失敗しているクライアントで再度 RADIUS への接続を試み、その処理中はパケット キャプチャを継続してください。パケット キャプチャは Wireshark で開き、以下のようなフィルタを適用します。
RADIUS 用の Wireshark フィルタ:
例: ip.addr==192.168.128.254 && radius (192.168.128.254 は RADIUS サーバの IP)
参考として、一般的な RADIUS のフィルタ済みパケット キャプチャは以下のとおりです。
上のスクリーンショットは RADIUS 認証が成功した例で、Access-Request、Access-Challenge、Access-Accept の双方向通信が確認できます。参考用のサンプル パケット キャプチャをダウンロードできます。
RADIUS トラフィック フロー
RADIUS 認証が失敗する場合、トラフィック フローは異なり、以下の 3 つの結果のいずれかが観測されることがあります。
-
RADIUS プロトコル トラフィックがない
-
Access-Request の片方向トラフィック
-
RADIUS サーバが Access-Reject を送信
RADIUS プロトコル トラフィックがない
前述の Wireshark フィルタを使用すると、RADIUS トラフィックのみが出力に表示されます。Meraki デバイスから RADIUS サーバに送信される RADIUS プロトコル トラフィックがまったくない場合、出力は空になります。トラフィックが見える場合は、対象のクライアント デバイスであることを確認するため、ユーザ名を必ず確認してください。
Meraki デバイスから RADIUS プロトコル トラフィックが見えない場合は、次の手順に従ってください。
-
クライアントが正しい SSID またはポートに接続を試行し、EAP セッションを生成していることを確認します。
-
クライアント デバイス側の構成が、RADIUS 認証の要件に一致していることを確認します。
-
クライアント デバイスで無線または有線のパケット キャプチャを取得し、クライアントからトラフィックが送信されているか確認します。
-
クライアント デバイスが必要なトラフィックを送信していることを確認した後、認証が失敗する場合は再度パケット キャプチャを取得し、フローチャートに従ってください。
クライアントが EAP セッションを生成して Meraki デバイスにトラフィックを送信すると、Meraki デバイスは RADIUS サーバに Access-Request をフォワードします。
Access-Request の片方向トラフィック
クライアント デバイスが EAP セッション トラフィックを生成しており、パケット キャプチャで Access-Request の片方向トラフィックのみが見える場合、サーバからの応答が受信されていないため、RADIUS 認証は失敗します。これは次のような複数の要因により発生する可能性があります。
-
RADIUS サーバへのルーティング:
-
Access-Request が RADIUS サーバ宛てに送信されているにもかかわらず応答がない場合、トラフィックは RADIUS サーバに到達する前にドロップされている可能性があります。
-
Ping が成功する場合でも、RADIUS トラフィックがどこでドロップされているかを確認し、ルーティングを修正する必要があります。
-
-
RADIUS サービス:
-
ルーティングが正しく、RADIUS パケットが RADIUS サーバに配送されている場合は、RADIUS サービスがサーバ上で有効になっているか確認してください。
-
-
RADIUS クライアント:
-
クライアントが生成する EAP セッションのトラフィックが RADIUS サーバの構成で許可されていない場合、RADIUS サーバはパケットをドロップします。
-
Meraki デバイスが RADIUS クライアントとして追加され、許可されていることを確認してください。
-
これらの設定や構成を確認して問題がなければ、認証が引き続き失敗する場合は再度パケット キャプチャを取得し、フローチャートに従ってください。
RADIUS サーバが Access-Reject で応答
RADIUS サーバが Access-Request を受信すると、クライアントを認証するために Access-Accept を送信するか、認証を拒否するために Access-Reject を送信します。
RADIUS サーバから Access-Reject が返ってきた場合、考えられる理由はいくつかあり、その一部を以下に挙げます。
-
RADIUS サーバに証明書がインストールされていない、または証明書の有効期限が切れている
-
RADIUS サーバにインストールされているデジタル証明書が依然として有効か確認してください。
-
証明書の有効期限が切れている、または存在しない場合は、デジタル証明書の更新またはインストールが必要です。
-
-
ユーザ名またはパスワードが不正
-
クライアントが誤った資格情報(ユーザ名またはパスワード、またはその両方)でログインした場合、RADIUS サーバは Access-Reject を使用して認証を拒否します。
-
-
ダッシュボード上のシークレットが誤り
-
ダッシュボードで構成されたシークレットは、RADIUS クライアントを構成する際に RADIUS サーバに設定したシークレット キーと一致している必要があります。
-
このほかにも、RADIUS サーバが認証を拒否する要因があり、以下はその一例です。
-
ネットワーク ポリシーの誤構成。
-
接続要求ポリシーの誤構成。
-
認証設定の不一致。
-
サーバで Active Directory を使用している場合、クライアントがドメイン メンバではない。
-
ルート証明書がクライアント デバイスに追加されていない。
-
サーバまたはクライアントで使用している EAP メソッドが誤り。
RADIUS トラフィックの検証
上記の手順を確認し、構成が要件どおりであれば、ダッシュボードのパケット キャプチャ ツールを使用して再度パケット キャプチャを取得し、RADIUS のトラフィック フローを確認します。
この時点でクライアントは認証され、サーバがクライアントへ Access-Accept メッセージを送信するはずです。それでもサーバが Access-Reject を送信する場合、サーバ側の問題である可能性が高いため、RADIUS サーバにアクセスして生成されたログを確認してください。