WAN : ポイントツーポイント プロトコル(PPP)

ppp chap hostname コマンドおよび ppp authentication chap callin コマンドを使用する PPP 認証

2005 年 9 月 9 日 - ライター翻訳版
その他のバージョン: PDFpdf | 機械翻訳版 (2013 年 8 月 21 日) | 英語版 (2005 年 9 月 9 日) | フィードバック

目次

概要
前提条件
      表記法
      要件
      使用するコンポーネント
      背景理論
設定
      単方向 CHAP 認証の設定
      ルータ名とは異なるユーザ名の設定
      ネットワーク ダイアグラム
      設定例
      設定の説明
確認
トラブルシューティング
      デバッグの出力例
関連するシスコ サポート コミュニティ ディスカッション
関連情報

概要

PPP ネゴシエーションには、Link Control Protocol(LCP; リンク コントロール プロトコル)ネゴシエーション、認証、および Network Control Protocol(NCP; ネットワーク コントロール プロトコル)ネゴシエーションのような複数の段階があります。 両サイドが適切なパラメータで同意できない場合、接続は終了されます。 リンクが確立されると、LCP ネゴシエーションで決定された認証プロトコルを使用して、両サイドで相互認証が行われます。 認証は、NCP ネゴシエーションを開始する前に成功している必要があります。

PPP では 2 つの認証プロトコルがサポートされています。 これらは Password Authentication Protocol(PAP; パスワード認証プロトコル)と Challenge Handshake Authentication Protocol(CHAP; チャレンジ ハンドシェーク認証プロトコル)です。

前提条件

表記法

ドキュメント表記の詳細は、『シスコ テクニカル ティップスの表記法』を参照してください。

要件

このドキュメントに適用される特定の前提条件はありません。

使用するコンポーネント

このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づくものです。

  • Cisco IOS(R) ソフトウェア リリース 11.2 以降

背景理論

PAP 認証では双方向ハンドシェークが行われ、ユーザ名とパスワードがリンクを介してクリア テキストで送信されます。このため PAP 認証ではプレイバックと回線スニフィングに対抗する保護手段は提供されていません。

一方、CHAP 認証では、スリーウェイ ハンドシェイクを使用して、定期的にリモート ノードのアイデンティティが検証されます。 PPP リンクが確立されると、ホストから「チャレンジ」メッセージがリモート ノードに送信されます。 リモート ノードは、一方向ハッシュ関数を使用して算出された値を応答します。 ホストではこの応答を、自身で算出したハッシュ期待値と照らし合わせて検証します。 値が一致する場合は、認証が確認応答されます。そうでない場合は接続が終了します。

設定

このセクションでは、このドキュメントで説明する機能を設定するための情報を提供します。

注:このドキュメントで使用されるコマンドに関するその他の情報を検索するには、IOS Command Lookup ツールを使用してください。

単方向 CHAP 認証の設定

通常、2 つのデバイスが CHAP 認証を使用する場合、双方がチャレンジを送信し、これに対して相手側が応答して、チャレンジ送信側で認証が行われます。 各側での相手側の認証は別々に行われます。 発信側ルータやデバイスによる認証をサポートしていないシスコ以外のルータを使用する場合は、ppp authentication chap callin コマンドを使用する必要があります。 ppp authentication コマンドを callin キーワードを付けて使用すると、アクセス サーバでは、リモート デバイスがコールを発信した場合(たとえば、リモート デバイスが「コールイン」した場合)のリモート デバイスだけを認証します。 この場合、認証は着信(受信)コールのみに指定されます。

ルータ名とは異なるユーザ名の設定

リモートのシスコ ルータが、異なった管理制御、インターネット サービス プロバイダー(ISP)、あるいは中央ルータのロータリーのシスコ製あるいはシスコ以外の中央ルータに接続されている場合、ホスト名とは異なる認証ユーザ名を設定する必要があります。 この状況では、ルータのホスト名は提供されず、毎回(ロータリーで)異なったものになります。 さらに、ISP により割り当てられたユーザ名とパスワードは、リモート ルータのホスト名ではない場合があります。 この場合は、ppp chap hostname コマンドを使用して、認証に使用される代替ユーザ名を指定します。

たとえば、複数のリモート デバイスが中央サイトにダイヤル中である状況を考えてください。 通常の CHAP 認証を使用して、中央ルータに各リモート デバイスのユーザ名(ホスト名になります)と共有秘密を設定する必要があります。 このシナリオでは、中央ルータの設定が長く、管理が煩雑になる可能性がありますが、リモート デバイスがホスト名とは異なるユーザ名を使用していると、これを回避できます。 複数のダイヤルイン クライアントの認証に使用できる単一のユーザ名と共有秘密で中央サイトを設定できます。

ネットワーク ダイアグラム

Router 1 が Router 2 にコールを発信する場合、Router 2 から Router 1 にチャレンジが送信されますが、Router 1 から Router 2 へはチャレンジは送信されません。これは、Router 1 で ppp authentication chap callin コマンドが設定されているためです。これは単方向認証の一例です。

この設定では、ppp chap hostname alias-r1 コマンドが Router 1 で設定されています。Router 1 では CHAP 認証のためのホスト名として、「r1」ではなく「alias-r1」が使用されています。 Router 2 のダイヤラ マップ名は、Router 1 の ppp chap ホスト名に一致する必要があります。そうでない場合は、各方向ごとに 1 つずつ、2 つの B チャネルが確立されます。

ppp_callin_hostname.gif

設定例

Router 1
 ! 
  isdn switch-type basic-5ess 
  ! 
  hostname r1 
  ! 
  username r2 password 0 cisco 
  
 ! -- 他のルータのホスト名、および共有秘密。
 
  ! 
  interface BRI0/0 
   ip address 20.1.1.1 255.255.255.0 
   no ip directed-broadcast 
   encapsulation ppp 
   dialer map ip 20.1.1.2 name r2 broadcast 5772222 
   dialer-group 1 
   isdn switch-type basic-5ess 
   ppp authentication chap callin 
  
 ! -- 着信コールの認証のみ。
 
   ppp chap hostname alias-r1 
  
 !--- 代替 CHAP ホスト名。
 
  ! 
  access-list 101 permit ip any any 
  dialer-list 1 protocol ip list 101 
  !
 

Router 2
 !
  isdn switch-type basic-5ess
  ! 
  hostname r2
  ! 
  username alias-r1 password 0 cisco 
  
 ! -- 代替 CHAP ホスト名、および共有秘密。
 ! -- ユーザ名はリモート ルータの ppp chap hostname コマンドで設定されているうちの 
 ! -- 1 つと一致している必要があります。
 
  !
  interface BRI0/0 
   ip address 20.1.1.2 255.255.255.0 
   no ip directed-broadcast
   encapsulation ppp 
   dialer map ip 20.1.1.1 name 
   alias-r1 broadcast 5771111
   
 ! -- ダイヤラ マップ名は代替ホスト名「alias-r1」に一致しています。
 
   dialer-group 1 
   isdn switch-type basic-5ess 
   ppp authentication chap
  ! 
  access-list 101 permit ip any any 
  dialer-list 1 protocol ip list 101 
  !
 

設定の説明

説明は、図の下の数字を参照してください。

ppp_callin_hostname2.gif

  1. この例では、Router 1 がコールを発信しています。 Router 1 は ppp authentication chap callin コマンドで設定されているため、着信側つまり Router 2 にチャレンジを送信しません。

  2. Router 2 はコールを受信すると、認証を行うために Router 1 にチャレンジを送信します。 デフォルトでは、この認証には、ルータ自体を識別するのにルータのホスト名が使用されます。 ppp chap hostname name コマンドが設定されている場合には、ルータではその名前がホスト名の代わりとしてルータ自体の識別に使用されます。 この例では、チャレンジは「r2」から送信されたものとしてラベル付けされています。

  3. Router 1 では Router 2 のチャレンジを受信し、ローカルのデータベースでユーザ名「r2」を検索します。

  4. Router 1 が「r2」のパスワードを見つけます。これは「cisco」となっています。 Router 1 では、MD5 ハッシュ関数の入力パラメータとして、このパスワードと Router 2 からのチャレンジを使用します。 ハッシュ値が生成されます。

  5. Router 1 から Router 2 にハッシュ出力値が送信されます。ここでは、ppp chap hostname コマンドが「alias-r1」と設定されているため、応答は「alias-r1」から送信されているものとしてラベル付けされています。

  6. Router 2 ではこの応答を受信すると、ローカルのデータベースで「alias-r1」のユーザ名を検索してパスワードを求めます。

  7. Router 2 は、「alias-r1」のパスワードが「cisco」であることを見つけます。 Router 2 では、MD5 ハッシュ関数の入力パラメータとして、このパスワードと以前に Router 1 に送信されたチャレンジを使用します。 ハッシュ関数により、ハッシュ値が生成されます。

  8. Router 2 では、自身で生成したハッシュ値と Router 1 から受信したハッシュ値を比較します。

  9. 入力パラメータ(チャレンジとパスワード)が同一のため、ハッシュ値は同じであり、認証が成功します。

確認

現在のところ、この設定を確認する手順はありません。

トラブルシューティング

このセクションでは、設定のトラブルシューティングに役立つ情報を説明します。

debug コマンドを試行する前に、『デバッグ コマンドの重要な情報 』を参照してください。

デバッグの出力例

次に debug ppp authentication コマンドの出力例を示します。

Router 1

 r1#ping 20.1.1.2
Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 20.1.1.2, timeout is 2 seconds:
*Mar 1 20:06:27.179: %LINK-3-UPDOWN: Interface BRI0/0:1, changed state to up *Mar 1 20:06:27.183: %ISDN-6-CONNECT: Interface BRI0/0:1 is now connected to 5772222 *Mar 1 20:06:27.187: BR0/0:1 PPP: Treating connection as a callout *Mar 1 20:06:27.223: BR0/0:1 CHAP: I CHALLENGE id 57 len 23 from "r2" ! -- 他のルータ(r2)から CHAP チャレンジを受信しました。 *Mar 1 20:06:27.223: BR0/0:1 CHAP: Using alternate hostname alias-r1 ! -- ppp chap hostname コマンドで設定された ! -- 代替ホスト名を使用します。 *Mar 1 20:06:27.223: BR0/0:1 CHAP: O RESPONSE id 57 Len 29 from "alias-r1" ! -- r1 の代替ホスト名である ! -- 「alias-r1」から応答を送信します。 *Mar 1 20:06:27.243: BR0/0:1 CHAP: I SUCCESS id 57 Len 4 ! -- 受信した CHAP 認証が成功しました。 ! -- r1 は r2 へチャレンジを送信していない点に注意してください。 .!!!! Success rate is 80 percent (4/5), round-trip min/avg/max = 36/38/40 ms r1# *Mar 1 20:06:28.243: %LINEPROTO-5-UPDOWN: Line protocol on Interface BRI0/0:1, changed state to up r1# *Mar 1 20:06:33.187: %ISDN-6-CONNECT: Interface BRI0/0:1 is now connected to 5772222 r2

Router 2

 r2#
20:05:20: %LINK-3-UPDOWN: Interface BRI0/0:1, changed state to up 20:05:20: %ISDN-6-CONNECT: Interface BRI0/0:1 is now connected to 5771111 20:05:20: BR0/0:1 PPP: Treating connection as a callin 20:05:21: BR0/0:1 CHAP: O CHALLENGE id 57 Len 23 from "r2" ! -- r2 はチャレンジを送信しています。 20:05:21: BR0/0:1 CHAP: I RESPONSE id 57 Len 29 from "alias-r1" ! -- r1 の代替ホスト名である ! -- 「alias-r1」から応答を受信しました。 20:05:21: BR0/0:1 CHAP: O SUCCESS id 57 Len 4 ! -- CHAP 認証の送信に成功しました。 20:05:22: %LINEPROTO-5-UPDOWN: Line protocol on Interface BRI0/0:1, changed state to up 20:05:26: %ISDN-6-CONNECT: Interface BRI0/0:1 is now connected to 5771111 alias-r1

関連するシスコ サポート コミュニティ ディスカッション

シスコ サポート コミュニティは、どなたでも投稿や回答ができる情報交換スペースです。


関連情報