Cisco IOS ネットワーク管理コンフィギュレーション ガイド
Network Configuration Protocol (NETCONF)
Network Configuration Protocol(NETCONF)
発行日;2012/01/07 | ドキュメントご利用ガイド | ダウンロード ; この章pdf , ドキュメント全体pdf (PDF - 6MB) | フィードバック

目次

Network Configuration Protocol(NETCONF)

機能情報の入手

この章の構成

NETCONF の前提条件

NETCONF の制約事項

NETCONF について

NETCONF over SSHv2

NETCONF over BEEP

NETCONF 通知

NETCONF の設定方法

ホスト名とドメイン名を使用した SSH バージョン 2 のイネーブル化

RSA 鍵ペアを使用した SSH バージョン 2 のイネーブル化

リモート デバイスとの暗号化セッションの開始

トラブルシューティングのヒント

この次の手順

セキュア シェル接続のステータスの確認

NETCONF over SSHv2 のイネーブル化

前提条件

制約事項

SASL プロファイルの設定

NETCONF over BEEP のイネーブル化

前提条件

制約事項

NETCONF ネットワーク マネージャ アプリケーションの設定

NETCONF ペイロードの配信

NETCONF 通知のフォーマット

NETCONF セッションのモニタリングとメンテナンス

制約事項

NETCONF の設定例

ホスト名とドメイン名を使用した SSHv2 のイネーブル化:例

RSA 鍵を使用した Secure Shell バージョン 2 のイネーブル化:例

リモート デバイスとの暗号化セッションの開始:例

NETCONF over SSHv2 の設定:例

NETCONF over BEEP の設定:例

NETCONF ネットワーク マネージャ アプリケーションの設定:例

NETCONF セッションのモニタリング:例

その他の参考資料

関連資料

規格

MIB

RFC

シスコのテクニカル サポート

NETCONF の機能情報

用語集

Network Configuration Protocol(NETCONF)

Network Configuration Protocol(NETCONF)は、ネットワーク デバイスの管理、設定データ情報の取得、および新しい設定データのアップロードと操作の簡単なメカニズムを定義します。NETCONF では、設定データとプロトコル メッセージに対して Extensible Markup Language(XML)ベースのデータ符号化を使用します。

NETCONF over SSHv2 機能を使用して、暗号化転送により Cisco Command-Line Interface(CLI; コマンドライン インターフェイス)を介してネットワーク設定を実行できます。NETCONF クライアントである NETCONF ネットワーク マネージャは、NETCONF サーバへのネットワーク転送として Secure Shell Version 2(SSHv2; セキュア シェル バージョン 2)を使用する必要があります。複数の NETCONF クライアントが NETCONF サーバに接続できます。

NETCONF over BEEP 機能を使用して、NETCONF 上で設定変更の通知を送信できます。通知は、設定変更が行われたことを示すイベントです。この設定変更には、新しい設定、設定の削除、設定の変更などがあります。通知は、適切に行われた設定作業の最後に、変更された設定の各行について個別のメッセージとしてではなく、一連の変更を示す 1 つのメッセージとして送信されます。

Blocks Extensible Exchange Protocol(BEEP)は、Simple Authentication and Security Layer(SASL)プロファイルを使用して既存のセキュリティ モデルに単純な直接マッピングを提供します。また、NETCONF over BEEP は、Transport Layer Security(TLS)を使用してサーバ認証またはサーバ側およびクライアント側の認証を備えた強力な暗号化メカニズムを提供します。

機能情報の入手

ご使用のソフトウェア リリースによっては、この章に記載されている機能の中に、一部サポートされていないものがあります。最新の機能情報と注意事項については、ご使用のプラットフォームとソフトウェア リリースに対応したリリース ノートを参照してください。この章に記載されている機能の詳細、および各機能がサポートされているリリースのリストについては、「NETCONF の機能情報」を参照してください。

Cisco Feature Navigator を使用すると、プラットフォーム、Cisco IOS ソフトウェア イメージ、および Cisco Catalyst OS ソフトウェア イメージの各サポート情報を検索できます。Cisco Feature Navigator には、 http://www.cisco.com/go/cfn からアクセスします。Cisco.com のアカウントは必要ありません。

NETCONF の前提条件

NETCONF over SSHv2 では、 netconf max-session コマンドで指定されているように、各 NETCONF セッションで vty 行が必要です。

netconf max-session コマンドで指定されているように、各 NETCONF セッションで vty 行が必要です。

NETCONF over BEEP リスナーには Simple Authentication and Security Layer(SASL)を設定する必要があります。

NETCONF の制約事項

NETCONF SSHv2 は、最大 16 の同時セッションをサポートします。

SSH バージョン 2 だけがサポートされています。

TLS を使用して BEEP を設定するには、暗号イメージを実行する必要があります。

NETCONF について

NETCONF を設定するには、次の概念を理解しておく必要があります。

「NETCONF over SSHv2」

「NETCONF over BEEP」

「NETCONF 通知」

NETCONF over SSHv2

NETCONF over SSHv2 機能を実行するために、クライアント(Cisco IOS ソフトウェアが稼動しているシスコ デバイス)はサーバ(NETCONF ネットワーク マネージャ)との Secure Shell(SSH; セキュア シェル)転送接続を確立します。図 1 に、基本的な NETCONF over SSHv2 ネットワークの構成を示します。クライアントとサーバは、セキュリティおよびパスワード暗号化のための鍵を交換します。NETCONF を実行している SSHv2 セッションのユーザ ID とパスワードは、認可および認証のために使用されます。ユーザの特権レベルが強制されているため、特権レベルの高さが十分でない場合は、NETCONF を操作するためのフル アクセスがクライアント セッションに与えられない可能性があります。Authentication, Authorization, and Accounting(AAA; 認証、認可、アカウンティング)が設定されている場合は、デバイスに対してユーザが直接 SSH セッションを確立したかのように AAA サービスが使用されます。既存のセキュリティ設定を使用すると、NETCONF への移行がほぼシームレスに行われます。クライアントの認証に成功したら、クライアントは SSH 接続プロトコルを呼び出し、接続が確立されます。SSH セッションが確立されると、ユーザまたはアプリケーションは、「netconf」という SSH サブシステムとして NETCONF を呼び出します。

図 1 NETCONF over SSHv2

 

Secure Shell バージョン 2

SSHv2 は、信頼性の高いトランスポート レイヤの上部で実行され、強力な認証機能と暗号化機能を提供します。SSHv2 は、ネットワーク上の他のコンピュータにセキュアにアクセスし、セキュアにコマンドを実行するための手段を提供します。

NETCONF は Secure Shell Version 1(SSHv1; セキュア シェル バージョン 1)をサポートしていません。SSH バージョン 2 サーバの設定は、SSH バージョン 1 の設定とほぼ同じです。設定する SSH のバージョンを指定するには、 ip ssh version コマンドを使用します。このコマンドを設定しないと、デフォルトで、SSH は互換モードで実行されます。つまり、SSH バージョン 1 接続と SSH バージョン 2 接続の両方が受け入れられます。


) SSH バージョン 1 は、標準で定義されていないプロトコルです。未定義のプロトコル(バージョン 1)にルータがフォールバックしないようにするには、ip ssh version コマンドを使用してバージョン 2 を指定する必要があります。


設定した Rivest, Shamir, and Adelman(RSA)鍵を使用する SSH 接続をイネーブルにするには、 ip ssh rsa keypair-name コマンドを使用します。鍵ペアの名前を使用して ip ssh rsa keypair-name コマンドを設定すると、その鍵の名前が存在する場合は SSH がイネーブルになります。または、後で鍵ペアを作成すると、SSH がイネーブルになります。このコマンドを使用して SSH を有効にする場合、ホスト名とドメイン名を設定する必要はありません。

NETCONF over BEEP

NETCONF over BEEP 機能を使用すると、NETCONF セッション時に使用する転送プロトコルとして BEEP をイネーブルにすることができます。NETCONF over BEEP を使用して、NETCONF サーバまたは NETCONF クライアントが接続を開始するように設定できます。そのため、断続的に接続されるデバイスの大規模ネットワーク、およびファイアウォールおよび Network Address Translator(NAT)がある管理接続を逆にする必要があるデバイスをサポートします。

BEEP は、コネクション型非同期相互作用のための汎用アプリケーション プロトコル フレームワークです。従来さまざまなプロトコルの実装で繰り返されてきた機能を提供することを目的としています。BEEP は一般的に TCP の上部で動作し、メッセージの交換を可能にします。HTTP および同様のプロトコルとは異なり、接続の両端でいつでもメッセージを送信できます。BEEP には暗号化と認証のファシリティも含まれており、高い拡張性があります。

BEEP プロトコルには、ピア間でメッセージを同時に個別に交換できるフレーム構成メカニズムが含まれています。通常、これらのメッセージは XML を使用して構成されます。すべての交換は、転送セキュリティ、ユーザ認証、データ交換など、アプリケーションの明確に定義された面へのバインディングに従って行われます。このバインディングによってチャネルが形成されます。各チャネルには交換されるメッセージの構文およびセマンティクスを定義する関連付けられたプロファイルがあります。

BEEP セッションは、NETCONF サービスにマッピングされます。セッションが確立すると、各 BEEP ピアはサポートするプロファイルをアドバタイズします。チャネルの作成中に、クライアント(BEEP イニシエータ)はそのチャネルの 1 つまたは複数のプロファイルを提示します。サーバ(BEEP リスナー)は、チャネルを作成すると、プロファイルの 1 つを選択して応答で送信します。サーバは、どのプロファイルも受け入れできないことを示し、チャネルの作成を断る場合もあります。

BEEP では、複数のデータ交換チャネルを同時に使用できます。

BEEP はピアツーピア プロトコルですが、各ピアには、特定の時刻に実行する役割に応じてラベルが付けられます。BEEP セッションが確立すると、新しい接続を待ち受けるピアが BEEP リスナーになります。リスナーへの接続を確立するもう一方のピアが BEEP イニシエータになります。交換を開始する BEEP ピアがクライアントで、もう一方の BEEP ピアがサーバです。通常、サーバ ロールを実行する BEEP ピアはリスニング ロールも実行します。ただし、BEEP はピアツーピア プロトコルであるため、サーバ ロールを実行する BEEP ピアはリスニング ロールも実行する必要はありません。

Simple Authentication and Security Layer

SASL は、接続ベースのプロトコルに認証サポートを追加するためのインターネット標準方式です。SASL をセキュリティ アプライアンスと Lightweight Directory Access Protocol(LDAP)サーバとの間で使用してユーザ認証を保護できます。

Transport Layer Security

TLS は、相互認証、完全性のためのハッシュの使用、プライバシー保護のための暗号化を可能にすることで、クライアントとサーバとの間にセキュアな通信を提供するアプリケーション レベルのプロトコルです。TLS では、証明書、公開鍵、および秘密鍵を使用します。

証明書はデジタル ID カードに似ています。この証明書は、クライアントに対してサーバの ID を証明します。証明書には、証明書の発行元の名前、発行先の名前、発行先の公開鍵、証明書の失効日を示すタイム スタンプが含まれています。

公開鍵および秘密鍵は、情報の暗号化および復号化に使用される暗号です。公開鍵は共有されますが、秘密鍵は公開されることはありません。公開鍵と秘密鍵はペアで機能します。公開鍵を使用して暗号化された情報は、対応する秘密鍵だけで復号化できます。

アクセス リスト

任意で、NETCONF over SSHv2 セッションで使用するアクセス リストを設定できます。アクセス リストは、IP アドレスに適用される一連の許可条件および拒否条件のコレクションです。Cisco IOS ソフトウェアは、アクセス リストの条件に対して、アドレスを 1 つずつテストします。最初の一致によって、ソフトウェアがアドレスを受け入れるか、拒否するかが決まります。最初の一致が見つかると条件のテストが停止するため、条件の順序は非常に重要です。条件が一致しなければ、アドレスは拒否されます。

アクセス リストの使用に関連する 2 つの主要な作業は次のとおりです。

1. アクセス リスト番号または名前とアクセス条件を指定してアクセス リストを作成する。

2. アクセス リストをインターフェイスまたは端末回線に適用する。

アクセス リストの設定の詳細については、『 Cisco IOS Security Configuration Guide: Securing the Data Plane 』の「 IP Access List Overview 」および「 Creating an IP Access List and Applying It to an Interface 」の章を参照してください。

NETCONF 通知

NETCONF は、NETCONF 上で設定変更の通知を送信します。通知は、設定変更が行われたことを示すイベントです。この設定変更には、新しい設定、設定の削除、設定の変更などがあります。通知は、適切に行われた設定作業の最後に、設定内で変更された設定の各行について個別のメッセージではなく、一連の変更を示す 1 つのメッセージとして送信されます。

NETCONF の設定方法

ここでは、次の作業について説明します。

「ホスト名とドメイン名を使用した SSH バージョン 2 のイネーブル化」(必須)

「RSA 鍵ペアを使用した SSH バージョン 2 のイネーブル化」(必須)

「リモート デバイスとの暗号化セッションの開始」(必須)

「セキュア シェル接続のステータスの確認」(任意)

「NETCONF over SSHv2 のイネーブル化」(必須)

「SASL プロファイルの設定」(必須)

「NETCONF over BEEP のイネーブル化」(必須)

「NETCONF ネットワーク マネージャ アプリケーションの設定」(必須)

「NETCONF ペイロードの配信」(任意)

「NETCONF 通知のフォーマット」(任意)

「NETCONF セッションのモニタリングとメンテナンス」(任意)

ホスト名とドメイン名を使用した SSH バージョン 2 のイネーブル化

ホスト名とドメイン名を使用してルータを SSH バージョン 2 用に設定するには、次の作業を実行します。RSA 鍵ペア設定を使用して SSH バージョン 2 を設定することもできます(「RSA 鍵ペアを使用した SSH バージョン 2 のイネーブル化」を参照)。

手順の概要

1. enable

2. configure terminal

3. hostname hostname

4. ip domain-name name

5. crypto key generate rsa

6. ip ssh [ timeout seconds | authentication-retries integer ]

7. ip ssh version 2

手順の詳細

コマンドまたはアクション
目的

ステップ 1

enable

 

Router> enable

特権 EXEC モードをイネーブルにします。

プロンプトが表示されたら、パスワードを入力します。

ステップ 2

configure terminal

 

Router# configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 3

hostname hostname

 

Router(config)# hostname host1

ルータのホスト名を設定します。

ステップ 4

ip domain-name name

 

Router(config)# ip domain-name domain1.com

ルータのドメイン名を設定します。

ステップ 5

crypto key generate rsa

 

Router(config)# crypto key generate rsa

ローカルおよびリモート認証用に SSH サーバをイネーブルにします。

ステップ 6

ip ssh [ timeout seconds | authentication-retries integer ]

 

Router(config)# ip ssh timeout 120

(任意)ルータ上で SSH 制御変数を設定します。

ステップ 7

ip ssh version 2

 

Router(config)# ip ssh version 2

ルータ上で実行する SSH のバージョンを指定します

RSA 鍵ペアを使用した SSH バージョン 2 のイネーブル化

ホスト名またはドメイン名を設定しないで SSH バージョン 2 をイネーブルにするには、次の作業を実行します。設定した鍵ペアがすでに存在している場合、または後で生成される場合、SSH バージョン 2 がイネーブルになります。ホスト名およびドメイン名の設定を使用して SSH バージョン 2 を設定することもできます (「ホスト名とドメイン名を使用した SSH バージョン 2 のイネーブル化」を参照)。

手順の概要

1. enable

2. configure terminal

3. ip ssh rsa keypair-name keypair-name

4. crypto key generate rsa usage-keys label key-label modulus modulus-size

5. ip ssh [ timeout seconds | authentication-retries integer ]

6. ip ssh version 2

手順の詳細

コマンドまたはアクション
目的

ステップ 1

enable

 

Router> enable

特権 EXEC モードをイネーブルにします。

プロンプトが表示されたら、パスワードを入力します。

ステップ 2

configure terminal

 

Router# configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 3

ip ssh rsa keypair-name keypair-name
 

Router(config)# ip ssh rsa keypair-name sshkeys

SSH に使用する RSA 鍵ペアを指定します。

(注) Cisco IOS ルータには複数の RSA 鍵ペアを指定できます。

ステップ 4

crypto key generate rsa usage-keys label key-label modulus modulus-size
 
Router(config)# crypto key generate rsa usage-keys label sshkeys modulus 768

ルータ上のローカル認証およびリモート認証用に SSH サーバをイネーブルにします。

SSH バージョン 2 の場合、モジュラス サイズは 768 ビット以上です。

コマンドを使用します。RSA コマンドを削除すると、SSH サーバは自動的にディセーブルになります。

ステップ 5

ip ssh [ timeout seconds | authentication-retries integer ]

 
Router(config)# ip ssh timeout 120

ルータ上で SSH 制御変数を設定します。

ステップ 6

ip ssh version 2

 
Router(config)# ip ssh version 2

ルータ上で実行する SSH のバージョンを指定します

リモート デバイスとの暗号化セッションの開始

リモート ネットワーキング デバイスとの暗号化セッションを開始するには、次の作業を実行します (ルータをイネーブルにする必要はありません。SSH はディセーブル モードで実行できます)。

UNIX または UNIX 系のデバイスからは、通常次のコマンドを使用して SSH セッションを開始します。

ssh -2 -s user@router.example.com netconf

手順の概要

1. ssh [ -v { 1 | 2 }] [ -c { 3des | aes128-cbc | aes192-cbc | aes256-cbc }] [ -m { hmac-md5 | hmac-md5-96 | hmac-sha1 | hmac-sha1-96 }] [ l userid ] [ -o numberofpasswordprompts n ] [ -p port-num ] { ip-addr | hostname } [ command ]

手順の詳細

コマンドまたはアクション
目的

ステップ 1

ssh [ -v { 1 | 2 }] [ -c { 3des | aes128-cbc | aes192-cbc | aes256-cbc }] [ -m { hmac-md5 | hmac-md5-96 | hmac-sha1 | hmac-sha1-96 }] [ l userid ] [ -o numberofpasswordprompts n ] [ -p port-num ] { ip-addr | hostname } [ command ]

 

Router# ssh -v 2 -c aes256-cbc -m hmac-sha1-96 -l user2 10.76.82.24

 

または

Router# ssh -v 2 -c aes256-cbc -m hmac-sha1-96 user2@10.76.82.24

リモート ネットワーキング デバイスとの暗号化セッションを開始します。

1 つめの例は、SSH バージョン 2 の規定に準拠しています。より自然で一般的なセッション開始方法は、ユーザ名をホスト名に結合することです。たとえば、2 つめの設定例では 1 つめの例と同じ結果になります。

トラブルシューティングのヒント

ip ssh version コマンドは、SSH の設定のトラブルシューティングに使用できます。バージョンを変更することにより、問題のある SSH バージョンを判別できます。

セキュア シェル接続のステータスの確認

ルータ上の SSH 接続のステータスを表示するには、次の作業を実行します。

手順の概要

1. enable

2. show ssh

3. show ip ssh


) ユーザ EXEC モードまたは特権 EXEC モードで次の show コマンドを使用できます。


手順の詳細

コマンドまたはアクション
目的

ステップ 1

enable

 

Router> enable

(任意)特権 EXEC モードをイネーブルにします。

プロンプトが表示されたら、パスワードを入力します。

ステップ 2

show ssh

 

Router# show ssh

SSH サーバ接続のステータスを表示します。

ステップ 3

show ip ssh

 

Router# show ip ssh

SSH のバージョンおよび設定データを表示します。

次に、SSH バージョン 2 接続に関するステータスを表示する show ssh コマンドを出力する例を示します。

Router# show ssh
 
Connection Version Mode Encryption Hmac State
Username
1 2.0 IN aes128-cbc hmac-md5 Session started lab
1 2.0 OUT aes128-cbc hmac-md5 Session started lab
%No SSHv1 server connections running.
 

次に、イネーブルになっている SSH のバージョン、認証のタイムアウト値、および認証の再試行回数を表示する show ip ssh コマンドを出力する例を示します。

Router# show ip ssh
 
SSH Enabled - version 2.0
Authentication timeout: 120 secs; Authentication retries: 3

NETCONF over SSHv2 のイネーブル化

NETCONF over SSHv2 をイネーブルにするには、次の作業を実行します。

前提条件

SSHv2 をイネーブルにする必要があります。


) 同時 NETCONF セッションと同じ数以上の vty 行が設定されている必要があります。


制約事項

4 個以上の同時 NETCONF セッションを設定する必要があります。

最大 16 個の同時 NETCONF セッションを設定できます。

NETCONF は SSHv1 をサポートしていません。

手順の概要

1. enable

2. configure terminal

3. netconf ssh [ acl access-list-number ]

4. netconf lock-time seconds

5. netconf max-sessions session

6. netconf max-message size

手順の詳細

 

コマンドまたはアクション
目的

ステップ 1

enable

 

Router> enable

特権 EXEC モードをイネーブルにします。

プロンプトが表示されたら、パスワードを入力します。

ステップ 2

configure terminal

 

Router# configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 3

netconf ssh [ acl access-list-number ]

 

Router(config)# netconf ssh acl 1

NETCONF over SSHv2 をイネーブルにします。

任意で、この NETCONF セッションのアクセス コントロール リストを設定できます。

ステップ 4

netconf lock-time seconds

 

Router(config)# netconf lock-time 60

(任意)中間操作が行われずに NETCONF 設定がロックされる最大時間を秒単位で指定します。

有効な範囲は、1 ~ 300 秒です。デフォルト値は 10 秒です。

ステップ 5

netconf max-sessions session

 

Router(config)# netconf max-sessions 5

(任意)許容される同時 NETCONF セッションの最大数を指定します。

有効な範囲は、4 ~ 16 です。デフォルト値は 4 です。

ステップ 6

netconf max-message size

 

Router(config)# netconf max-message 37283

(任意)NETCONF セッションで受信するメッセージの最大サイズをキロバイト(KB)で指定します。

有効な範囲は、1 ~ 2147483 KB です。デフォルト値は無限です。

最大サイズを無限に設定するには、 no netconf max-message コマンドを使用します。

SASL プロファイルの設定

SASL を使用して NETCONF over BEEP をイネーブルにするには、まず SASL プロファイルを設定する必要があります。SASL プロファイルは、ルータへのアクセスが許可されるユーザを指定します。SASL プロファイルを設定するには、次の作業を実行します。

手順の概要

1. enable

2. configure terminal

3. sasl profile profile-name

4. mechanism digest-md5

5. server user-name password password

手順の詳細

コマンドまたはアクション
目的

ステップ 1

enable

 

Router> enable

特権 EXEC モードをイネーブルにします。

プロンプトが表示されたら、パスワードを入力します。

ステップ 2

configure terminal

 

Router# configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 3

sasl profile profile-name

 

Router(config)# sasl profile beep

SASL プロファイルを設定し、SASL プロファイル コンフィギュレーション モードを開始します。

ステップ 4

mechanism di gest-md5

 

Router(config-SASL-profile)# mechanism digest-md5

SASL プロファイル メカニズムを設定します。

ステップ 5

server user-name password password

 

Router(config-SASL-profile)# server user1 password password1

SASL サーバを設定します。

NETCONF over BEEP のイネーブル化

NETCONF over BEEP をイネーブルにするには、次の作業を実行します。

前提条件

同時 NETCONF セッションと同じ数以上の vty 行が設定されている必要があります。

SASL を使用して NETCONF over BEEP を設定する場合は、まず SASL プロファイルを設定する必要があります。

制約事項

4 個以上の同時 NETCONF セッションを設定する必要があります。

最大 16 個の同時 NETCONF セッションを設定できます。

手順の概要

1. enable

2. configure terminal

3. crypto key generate rsa general-keys

4. crypto pki trustpoint name

5. enrollment url url

6. subject-name name

7. revocation-check method1 [ method2 [ method3 ]]

8. exit

9. crypto pki authenticate name

10. crypto pki enroll name

11. netconf lock-time seconds

12. line vty line-number [ ending-line-number ]

13. netconf max-sessions session

14. netconf beep initiator { hostname | ip-address } port-number user sasl-user password sasl-password [ encrypt trustpoint ] [ reconnect-time seconds ]

15. netconf beep listener [ port-number ] [ acl access-list-number ] [ sasl sasl-profile ] [ encrypt trustpoint ]

手順の詳細

コマンドまたはアクション
目的

ステップ 1

enable

 

Router> enable

特権 EXEC モードをイネーブルにします。

プロンプトが表示されたら、パスワードを入力します。

ステップ 2

configure terminal

 

Router# configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 3

crypto key generate rsa general-keys

 

Router(config)# crypto key generate rsa general-keys

RSA 鍵ペアを生成して、汎用目的の鍵ペアを生成するよう指定します。

この手順は 1 回だけ実行します。

ステップ 4

crypto pki trustpoint name

 

Router(config)# crypto pki trustpoint my_trustpoint

ルータで使用するトラストポイントを宣言し、CA トラストポイント コンフィギュレーション モードを開始します。

ステップ 5

enrollment url url

 

Router(ca-trustpoint)# enrollment url http://10.2.3.3:80

Certification Authority(CA; 認証局)の登録パラメータを指定します。

ステップ 6

subject-name name

 

Router(ca-trustpoint)# subject-name CN=dns_name_of_host.com

証明書要求のサブジェクト名を指定します。

(注) サブジェクト名は、デバイスの Domain Name System(DNS; ドメイン ネーム システム)にする必要があります。

ステップ 7

revocation-check method1 [ method2 [ method3 ]]

 

Router(ca-trustpoint)# revocation-check none

証明書の失効ステータスをチェックします。

ステップ 8

exit

 

Router(ca-trustpoint)# exit

CA トラストポイント コンフィギュレーション モードを終了し、グローバル コンフィギュレーション モードに戻ります。

ステップ 9

crypto pki authenticate name

 

Router(config)# crypto pki authenticate my_trustpoint

(CA の証明書を取得して)認証局を認証します。

ステップ 10

crypto pki enroll name

 

Router(config)# crypto pki enroll my_trustpoint

ルータの証明書を CA から取得します。

ステップ 11

netconf lock-time seconds

 

Router(config)# netconf lock-time 60

(任意)中間操作が行われずに NETCONF 設定がロックされる最大時間を指定します。

seconds 引数の有効な値の範囲は 1 ~ 300 秒です。デフォルト値は 10 秒です。

ステップ 12

line vty line-number [ ending-line-number ]

 

Router(config)# line vty 0 15

リモート コンソール アクセスの仮想端末回線を識別します。

最大 NETCONF セッションと同じ数の vty 行を設定する必要があります。

ステップ 13

netconf max-sessions session

 

Router(config)# netconf max-sessions 16

(任意)許容される同時 NETCONF セッションの最大数を指定します。

ステップ 14

netconf beep initiator { hostname | ip-address } port-number user sasl-user password sasl-password [ encrypt trustpoint ] [ reconnect-time seconds ]

 

Router(config)# netconf beep initiator host1 23 user user1 password password1 encrypt 23 reconnect-time 60

(任意)NETCONF セッションの転送プロトコルとして BEEP を指定し、ピアを BEEP イニシエータとして設定します。

(注) NETCONF BEEP イニシエータ セッションを設定するには、次の作業を実行します。任意で、BEEP リスナー セッションを設定することもできます。

ステップ 15

netconf beep listener [ port-number ] [ acl access-list-number ] [ sasl sasl-profile ] [ encrypt trustpoint ]

 

Router(config)# netconf beep listener 26 acl 101 sasl profile1 encrypt 25

(任意)NETCONF の転送プロトコルとして BEEP を指定し、ピアを BEEP リスナーとして設定します。

(注) NETCONF BEEP リスナー セッションを設定するには、次の作業を実行します。任意で、BEEP イニシエータ セッションを設定することもできます。

NETCONF ネットワーク マネージャ アプリケーションの設定


ステップ 1 次の CLI 文字列を使用して、NETCONF を SSH サブシステムとして起動するように NETCONF ネットワーク マネージャ アプリケーションを設定します。

Unix Side: ssh-2 -s companyname@10.1.1.1 netconf
 
 

ステップ 2 NETCONF セッションが確立するとすぐに、<hello> を含む XML 文書を送信してサーバの機能を指定します。

<?xml version="1.0" encoding="UTF-8"?>
<hello>
<capabilities>
<capability>
urn:ietf:params:xml:ns:netconf:base:1.0
</capability>
<capability>
urn:ietf:params:ns:netconf:capability:startup:1.0
</capability>
</capabilities>
<session-id>4<session-id>
</hello>]]>]]>
 

クライアントは、<hello> を含む XML 文書を送信して応答します。

<?xml version="1.0" encoding="UTF-8"?>
<hello>
<capabilities>
<capability>
urn:ietf:params:xml:ns:netconf:base:1.0
</capability>
</capabilities>
</hello>]]>]]>

) この例ではサーバが <hello> メッセージを送信した後、クライアントのメッセージが送信されますが、NETCONF サブシステムが初期化されるとすぐに、サーバとクライアントの両方でおそらく同時にメッセージが送信されます。



ヒント すべての NETCONF 要求の最後に、要求の終了を示す ]]>]]> を使用する必要があります。]]>]]> シーケンスが送信されるまで、デバイスは要求を処理しません。


具体的な例については、「NETCONF over SSHv2 の設定:例」を参照してください。

ステップ 3 次の XML 文字列を使用して、NETCONF ネットワーク マネージャ アプリケーションが NETCONF 通知を送受信できるようにします。

<?xml version="1.0" encoding="UTF-8" ?>
<rpc message-id="9.0"><notification-on/>
</rpc>]]>]]>
 

ステップ 4 次の XML 文字列を使用して、NETCONF ネットワーク マネージャ アプリケーションが NETCONF 通知の送受信を停止するようにします。

<?xml version="1.0" encoding="UTF-8" ?>
<rpc message-id="9.13"><notification-off/>
</rpc>]]>]]>


 

NETCONF ペイロードの配信

次の XML 文字列を使用して、NETCONF ペイロードをネットワーク マネージャ アプリケーションに提供します。

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema targetNamespace="http://www.cisco.com/cpi_10/schema" elementFormDefault="qualified" attributeFormDefault="unqualified" xmlns="http://www.cisco.com/cpi_10/schema" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<!--The following elements define the cisco extensions for the content of the filter element in a <get-config> request. They allow the client to specify the format of the response and to select subsets of the entire configuration to be included.-->
<xs:element name="config-format-text-block">
<xs:annotation>
<xs:documentation>If this element appears in the filter, then the cllient is requesting that the response data be sent in config command block format.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="text-filter-spec" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="config-format-text-cmd">
<xs:complexType>
<xs:sequence>
<xs:element ref="text-filter-spec"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="config-format-xml">
<xs:annotation>
<xs:documentation>When this element appears in the filter of a get-config request, the results are to be returned in E-DI XML format. The content of this element is treated as a filter.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:extension base="xs:anyType"/>
</xs:complexContent>
</xs:complexType>
</xs:element>
<!--These elements are used in the filter of a <get> to specify operational data to return.-->
<xs:element name="oper-data-format-text-block">
<xs:complexType>
<xs:sequence>
<xs:element name="show" type="xs:string" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="oper-data-format-xml">
<xs:complexType>
<xs:sequence>
<xs:any/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!--When confing-format-text format is specified, the following describes the content of the data element in the response-->
<xs:element name="cli-config-data">
<xs:complexType>
<xs:sequence>
<xs:element name="cmd" type="xs:string" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>Content is a command. May be multiple lines.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="cli-config-data-block" type="xs:string">
<xs:annotation>
<xs:documentation>The content of this element is the device configuration as it would be sent to a terminal session. It contains embedded newline characters that must be preserved as they represent the boundaries between the individual command lines</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="text-filter-spec">
<xs:annotation>
<xs:documentation>If this element is included in the config-format-text element, then the content is treated as if the string was appended to the "show running-config" command line.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="cli-oper-data-block">
<xs:complexType>
<xs:annotation>
<xs:documentation> This element is included in the response to get operation. Content of this element is the operational data in text format.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="item" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="show"/>
<xs:element name="response"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:schema>

NETCONF 通知のフォーマット

NETCONF ネットワーク マネージャ アプリケーションは、.xsd スキーマ ファイルを使用して NETCONF ネットワーク マネージャ アプリケーションと NETCONF over SSHv2 または NETCONF over BEEP が稼動するルータとの間で送信される XML NETCONF 通知メッセージのフォーマットを記述します。このファイルは、ブラウザまたはスキーマ読み取りツールで表示できます。これらのスキーマを使用して、XML が正しいことを確認できます。これらのスキーマは、交換されるデータの内容ではなく、フォーマットを記述します。

NETCONF は、<edit-config> 機能を使用して特定の設定すべてを特定のターゲット設定にロードします。この新しい設定を入力した場合、ターゲット設定は置き換えられません。ターゲット設定は、要求の送信元のデータおよび要求された動作に応じて変更されます。

次に、CLI、CLI ブロック、および XML フォーマットの NETCONF <edit-config> 機能のスキーマを示します。

NETCONF <edit-config> 要求:CLI フォーマット

<?xml version="1.0" encoding="UTF-8"?>
<rpc message-id="101" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<edit-config>
<target>
<running/>
</target>
<config>
<cli-config-data>
<cmd>hostname test</cmd>
<cmd>interface fastEthernet0/1</cmd>
<cmd>ip address 192.168.1.1 255.255.255.0</cmd>
</cli-config-data>
</config>
</edit-config>
</rpc>]]>]]>

NETCONF <edit-config> 応答:CLI フォーマット

<?xml version="1.0" encoding="UTF-8"?>
<rpc-reply message-id="101" xmlns="urn:ietf:params:netconf:base:1.0">
<ok/>
</rpc-reply>]]>]]>

NETCONF <edit-config> 要求:CLI ブロック フォーマット

<?xml version="1.0" encoding="UTF-8"?>
<rpc message-id="netconf.mini.edit.3">
<edit-config>
<target>
<running/>
</target>
<config>
<cli-config-data-block>
hostname bob
interface fastEthernet0/1
ip address 192.168.1.1 255.255.255.0
</cli-config-data-block>
</config>
</edit-config>
</rpc>]]>]]>

NETCONF <edit-config> 応答:CLI ブロック フォーマット

<?xml version="1.0" encoding=\"UTF-8\"?>
<rpc-reply message-id="netconf.mini.edit.3" xmlns="urn:ietf:params:netconf:base:1.0">
<ok/>
</rpc-reply>]]>]]>
 

次に、CLI および CLI ブロック フォーマットの NETCONF <get-config> 機能のスキーマを示します。

NETCONF <get-config> 要求:CLI フォーマット

<?xml version="1.0" encoding=\"UTF-8\"?>
<rpc message-id="101" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<get-config>
<source>
<running/>
</source>
<filter>
<config-format-text-cmd>
<text-filter-spec> | inc interface </text-filter-spec>
</config-format-text-cmd>
</filter>
</get-config>
</rpc>]]>]]>

NETCONF <get-config> 応答:CLI フォーマット

<?xml version="1.0" encoding=\"UTF-8\"?>
<rpc-reply message-id="101" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<data>
<cli-config-data>
<cmd>interface FastEthernet0/1</cmd>
<cmd>interface FastEthernet0/2</cmd>
</cli-config-data>
</data>
</rpc-reply>]]>]]>

NETCONF <get-config> 要求:CLI ブロック フォーマット

<?xml version="1.0" encoding=\"UTF-8\"?>
<rpc message-id="101" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<get-config>
<source>
<running/>
</source>
<filter>
<config-format-text-block>
<text-filter-spec> | inc interface </text-filter-spec>
</config-format-text-block>
</filter>
</get-config>
</rpc>]]>]]>

NETCONF <get-config> 応答:CLI ブロック フォーマット

<?xml version="1.0" encoding=\"UTF-8\"?>
<rpc-reply message-id="101" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<data>
<cli-config-data-block>
interface FastEthernet0/1
interface FastEthernet0/2
</cli-config-data-block>
</data>
</rpc-reply>]]>]]>
 

NETCONF は、<get> 機能を使用して設定およびデバイスの状態の情報を取得します。NETCONF <get> フォーマットは、Cisco IOS show コマンドに相当します。<filter> パラメータは、システム設定およびデバイスの状態のデータの取得する部分を指定します。<filter> パラメータが空の場合は、何も返されません。

次に、CLI および CLI ブロック フォーマットの <get> 機能のスキーマを示します。

NETCONF <get> 要求:CLI フォーマット

<?xml version="1.0" encoding=\"UTF-8\"?>
<rpc message-id="101" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<get>
<filter>
<config-format-text-cmd>
<text-filter-spec> | include interface </text-filter-spec>
</config-format-text-cmd>
<oper-data-format-text-block>
<show>interfaces</show>
<show>arp</show>
</oper-data-format-text-block>
</filter>
</get>
</rpc>]]>]]>

NETCONF <get> 応答:CLI フォーマット

<?xml version="1.0" encoding=\"UTF-8\"?>
<rpc-reply message-id="101" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<data>
<cli-config-data>
<cmd>interface Loopback0</cmd>
<cmd>interface GigabitEthernet0/1</cmd>
<cmd>interface GigabitEthernet0/2</cmd>
</cli-config-data>
<cli-oper-data-block>
<item>
<show>interfaces</show>
<response>
<!-- output of "show interfaces" ------>
</response>
<show>arp</show>
<item>
<show>arp</show>
<response>
<!-- output of "show arp" ------>
</response>
</item>
</cli-oper-data-block>
</data>
</rpc-reply>]]>]]>

NETCONF <get> 要求:CLI ブロック フォーマット

<?xml version="1.0" encoding=\"UTF-8\"?>
<rpc message-id="101" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<get>
<filter>
<config-format-text-block>
<text-filter-spec> | include interface </text-filter-spec>
</config-format-text-block>
<oper-data-format-text-block>
<show>interfaces</show>
<show>arp</show>
</oper-data-format-text-block>
</filter>
</get>
</rpc>]]>]]>

NETCONF <get> 応答:CLI ブロック フォーマット

<?xml version="1.0" encoding=\"UTF-8\"?>
<rpc-reply message-id="101" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<data>
<cli-config-data-block>
interface Loopback0
interface GigabitEthernet0/1
interface GigabitEthernet0/2
 
</cli-config-data-block>
<cli-oper-data-block>
<item>
<show>interfaces</show>
<response>
<!-- output of "show interfaces" ------>
</response>
<show>arp</show>
<item>
<show>arp</show>
<response>
<!-- output of "show arp" ------>
</response>
</item>
</cli-oper-data-block>
</data>
</rpc-reply>]]>]]>

NETCONF セッションのモニタリングとメンテナンス

NETCONF セッションのモニタリングとメンテナンスを行うには、次の作業を実行します。

制約事項

4 個以上の同時 NETCONF セッションを設定する必要があります。

最大 16 個の同時 NETCONF セッションを設定できます。

NETCONF は SSHv1 をサポートしていません。

手順の概要

1. enable

2. show netconf { counters | session | schema }

3. debug netconf { all | error }

4. clear netconf { counters | sessions }

手順の詳細

コマンドまたはアクション
目的

ステップ 1

enable

 

Router> enable

特権 EXEC モードをイネーブルにします。

プロンプトが表示されたら、パスワードを入力します。

ステップ 2

show netconf { counters | session | schema }

 

Router# show netconf counters

NETCONF 情報を表示します。

ステップ 3

debug netconf { all | error }

 

Router# debug netconf error

NETCONF セッションのデバッグをイネーブルにします。

ステップ 4

clear netconf { counters | sessions }

 

Router# clear netconf sessions

NETCONF 統計カウンタおよび NETCONF セッションをクリアし、関連するリソースを解放し、ロックを解除します。

NETCONF の設定例

ここでは、次の設定例について説明します。

「ホスト名とドメイン名を使用した SSHv2 のイネーブル化:例」

「RSA 鍵を使用した Secure Shell バージョン 2 のイネーブル化:例」

「リモート デバイスとの暗号化セッションの開始:例」

「NETCONF over SSHv2 の設定:例」

「NETCONF over BEEP の設定:例」

「NETCONF ネットワーク マネージャ アプリケーションの設定:例」

「NETCONF セッションのモニタリング:例」

ホスト名とドメイン名を使用した SSHv2 のイネーブル化:例

次に、ホスト名とドメイン名を使用して SSHv2 を設定する例を示します。

Router# configure terminal

Router(config)# hostname host1

Router(config)# ip domain-name domain1.com

Router(config)# crypto key generate rsa

Router(config)# ip ssh timeout 120

Router(config)# ip ssh version 2

RSA 鍵を使用した Secure Shell バージョン 2 のイネーブル化:例

次に、RSA 鍵を使用して SSHv2 を設定する例を示します。

Router# configure terminal

Router(config)# ip ssh rsa keypair-name sshkeys

Router(config)# crypto key generate rsa usage-keys label sshkeys modulus 768
Router(config)# ip ssh timeout 120
Router(config)# ip ssh version 2

リモート デバイスとの暗号化セッションの開始:例

次に、UNIX または UNIX 系のデバイスから、リモート ネットワーキング デバイスとの暗号化 SSH セッションを開始する例を示します。

Router(config)# ssh -2 -s user@router.example.com netconf

NETCONF over SSHv2 の設定:例

次に、NETCONF over SSHv2 を設定する例を示します。

Router# configure terminal
Router(config)# netconf ssh acl 1
Router(config)# netconf lock-time 60
Router(config)# netconf max-sessions 5
Router(config)# netconf max-message 2345
Router# ssh-2 -s username@10.1.1.1 netconf
 

次に、ループバック インターフェイス 113 の設定を取得する例を示します。


ステップ 1 最初に、「hello」を送信します。

<?xml version="1.0" encoding=\"UTF-8\"?>
<hello><capabilities>
<capability>u?rn:ietf:params:netconf:base:1.0</capability>
<capability>urn:ietf:params:netconf:capability:writeable-running:1.0</capability>
<capability>urn:ietf:params:netconf:ca?pability:roll?back-on-error:1.0</capability>
<capability>urn:ietf:params:netconf:capability:startup:1.0</capability>
<capability>urn:ietf:params:netconf:ca?pability:url:?1.0</capability>
<capability>urn:cisco:params:netconf:capability:pi-data-model:1.0</capability>
<capability>urn:cisco:params:netconf:capabili?ty:notificati?on:1.0</capability>
</capabilities>
</hello>]]>]]>

ステップ 2 次に、get-config 要求を送信します。

<?xml version="1.0"?>
<rpc xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"xmlns:cpi="http://www.cisco.com/cpi_10/schema" message-id="101">
<get-config>
<source>
<running/>
</source>
<filter>
<config-format-text-cmd>
<text-filter-spec>
interface Loopback113
</text-filter-spec>
</config-format-text-cmd>
</filter>
</get-config>
</rpc>]]>]]>


 

次の出力はルータ上で表示されます。

<?xml version="1.0" encoding="UTF-8"?>
<rpc-reply message-id="101"xmlns=\"urn:ietf:params:netconf:base:1.0\">
<data>
<cli-config-data>
interface Loopback113
description test456
no ip address
load-interval 30
end
</cli-config-data>
</data>
</rpc-rep?ly>]]>]]>

NETCONF over BEEP の設定:例

次に、NETCONF over BEEP を設定する例を示します。

Router# configure terminal
 
Router(config)# crypto key generate rsa general-keys
Router(ca-trustpoint)# crypto pki trustpoint my_trustpoint
Router(ca-trustpoint)# enrollment url http://10.2.3.3:80
Router(ca-trustpoint)# subject-name CN=dns_name_of_host.com
Router(ca-trustpoint)# revocation-check none

Router(ca-trustpoint)# crypto pki authenticate my_trustpoint
Router(ca-trustpoint)# crypto pki enroll my_trustpoint
Router(ca-trustpoint)# line vty 0 15
Router(ca-trustpoint)# exit
Router(config)# netconf lock-time 60
Router(config)# netconf max-sessions 16
 
Router(config)# netconf beep initiator host1 23 user my_user password my_password encrypt my_trustpoint reconnect-time 60
Router(config)# netconf beep listener 23 sasl user1 encrypt my_trustpoint

NETCONF ネットワーク マネージャ アプリケーションの設定:例

次に、NETCONF を SSH サブシステムとして起動するように NETCONF ネットワーク マネージャ アプリケーションを設定する例を示します。

Unix Side: ssh-2 -s companyname@10.1.1.1 netconf
 

NETCONF セッションが確立するとすぐに、<hello> を含む XML 文書を送信してサーバの機能を指定します。

<?xml version="1.0" encoding="UTF-8"?>
<hello>
<capabilities>
<capability>
urn:ietf:params:xml:ns:netconf:base:1.0
</capability>
<capability>
urn:ietf:params:ns:netconf:capability:startup:1.0
</capability>
</capabilities>
<session-id>4<session-id>
</hello>]]>]]>
 

クライアントは、<hello> を含む XML 文書を送信して応答します。

<?xml version="1.0" encoding="UTF-8"?>
<hello>
<capabilities>
<capability>
urn:ietf:params:xml:ns:netconf:base:1.0
</capability>
</capabilities>
</hello>]]>]]>
 

次の XML 文字列を使用して、NETCONF ネットワーク マネージャ アプリケーションが NETCONF 通知を送受信できるようにします。

<?xml version="1.0" encoding="UTF-8" ?>
<rpc message-id="9.0"><notification-on/>
</rpc>]]>]]>
 

次の XML 文字列を使用して、NETCONF ネットワーク マネージャ アプリケーションが NETCONF 通知の送受信を停止するようにします。

<?xml version="1.0" encoding="UTF-8" ?>
<rpc message-id="9.13"><notification-off/>
</rpc>]]>]]>

NETCONF セッションのモニタリング:例

次に、 show netconf counters コマンドからの出力例を示します。

Router# show netconf counters
 
NETCONF Counters
Connection Attempts:0: rejected:0 no-hello:0 success:0
Transactions
total:0, success:0, errors:0
detailed errors:
in-use 0 invalid-value 0 too-big 0
missing-attribute 0 bad-attribute 0 unknown-attribute 0
missing-element 0 bad-element 0 unknown-element 0
unknown-namespace 0 access-denied 0 lock-denied 0
resource-denied 0 rollback-failed 0 data-exists 0
data-missing 0 operation-not-supported 0 operation-failed 0
partial-operation 0
 

次に、 show netconf session コマンドからの出力例を示します。

Router# show netconf session
 
(Current | max) sessions: 3 | 4
Operations received: 100 Operation errors: 99
Connection Requests: 5 Authentication errors: 2 Connection Failures: 0
ACL dropped : 30
Notifications Sent: 20
 

show netconf schema コマンドの出力は、NETCONF 要求およびその要求に対する応答のエレメント構造を表します。このスキーマは、適切な NETCONF 要求の作成およびその要求に対する応答の解析に使用できます。スキーマ内のノードは、RFC 4741 で規定されています。次に、 show netconf schema コマンドからの出力例を示します。

Router# show netconf schema
 
New Name Space 'urn:ietf:params:xml:ns:netconf:base:1.0'
<VirtualRootTag> [0, 1] required
<rpc-reply> [0, 1] required
<ok> [0, 1] required
<data> [0, 1] required
<rpc-error> [0, 1] required
<error-type> [0, 1] required
<error-tag> [0, 1] required
<error-severity> [0, 1] required
<error-app-tag> [0, 1] required
<error-path> [0, 1] required
<error-message> [0, 1] required
<error-info> [0, 1] required
<bad-attribute> [0, 1] required
<bad-element> [0, 1] required
<ok-element> [0, 1] required
<err-element> [0, 1] required
<noop-element> [0, 1] required
<bad-namespace> [0, 1] required
<session-id> [0, 1] required
<hello> [0, 1] required
<capabilities> 1 required
<capability> 1+ required
<rpc> [0, 1] required
<close-session> [0, 1] required
<commit> [0, 1] required
<confirmed> [0, 1] required
<confirm-timeout> [0, 1] required
<copy-config> [0, 1] required
<source> 1 required
<config> [0, 1] required
<cli-config-data> [0, 1] required
<cmd> 1+ required
<cli-config-data-block> [0, 1] required
<xml-config-data> [0, 1] required
<Device-Configuration> [0, 1] required
<> any subtree is allowed
<candidate> [0, 1] required
<running> [0, 1] required
<startup> [0, 1] required
<url> [0, 1] required
<target> 1 required
<candidate> [0, 1] required
<running> [0, 1] required
<startup> [0, 1] required
<url> [0, 1] required
<delete-config> [0, 1] required
<target> 1 required
<candidate> [0, 1] required
<running> [0, 1] required
<startup> [0, 1] required
<url> [0, 1] required
<discard-changes> [0, 1] required
<edit-config> [0, 1] required
<target> 1 required
<candidate> [0, 1] required
<running> [0, 1] required
<startup> [0, 1] required
<url> [0, 1] required
<default-operation> [0, 1] required
<test-option> [0, 1] required
<error-option> [0, 1] required
<config> 1 required
<cli-config-data> [0, 1] required
<cmd> 1+ required
<cli-config-data-block> [0, 1] required
<xml-config-data> [0, 1] required
<Device-Configuration> [0, 1] required
<> any subtree is allowed
<get> [0, 1] required
<filter> [0, 1] required
<config-format-text-cmd> [0, 1] required
<text-filter-spec> [0, 1] required
<config-format-text-block> [0, 1] required
<text-filter-spec> [0, 1] required
<config-format-xml> [0, 1] required
<oper-data-format-text-block> [0, 1] required
<show> 1+ required
<oper-data-format-xml> [0, 1] required
<show> 1+ required
<get-config> [0, 1] required
<source> 1 required
<config> [0, 1] required
<cli-config-data> [0, 1] required
<cmd> 1+ required
<cli-config-data-block> [0, 1] required
<xml-config-data> [0, 1] required
<Device-Configuration> [0, 1] required
<> any subtree is allowed
<candidate> [0, 1] required
<running> [0, 1] required
<startup> [0, 1] required
<url> [0, 1] required
<filter> [0, 1] required
<config-format-text-cmd> [0, 1] required
<text-filter-spec> [0, 1] required
<config-format-text-block> [0, 1] required
<text-filter-spec> [0, 1] required
<config-format-xml> [0, 1] required
<kill-session> [0, 1] required
<session-id> [0, 1] required
<lock> [0, 1] required
<target> 1 required
<candidate> [0, 1] required
<running> [0, 1] required
<startup> [0, 1] required
<url> [0, 1] required
<unlock> [0, 1] required
<target> 1 required
<candidate> [0, 1] required
<running> [0, 1] required
<startup> [0, 1] required
<url> [0, 1] required
<validate> [0, 1] required
<source> 1 required
<config> [0, 1] required
<cli-config-data> [0, 1] required
<cmd> 1+ required
<cli-config-data-block> [0, 1] required
<xml-config-data> [0, 1] required
<Device-Configuration> [0, 1] required
<> any subtree is allowed
<candidate> [0, 1] required
<running> [0, 1] required
<startup> [0, 1] required
<url> [0, 1] required
<notification-on> [0, 1] required
<notification-off> [0, 1] required

その他の参考資料

ここでは、NETCONF 機能に関する関連資料について説明します。

関連資料

関連トピック
参照先

IP アクセス リスト

Cisco IOS Security Configuration Guide: Securing the Data Plane 』の「 IP Access List Overview 」および「 Creating an IP Access List and Applying It to an Interface 」の章

Secure Shell および Secure Shell バージョン 2

Cisco IOS Security Configuration Guide: Securing User Services 』の「 Configuring Secure Shell 」の章

NETCONF コマンド:コマンド構文の詳細、コマンド モード、コマンド履歴、デフォルト設定、使用上の注意事項、および例

『Cisco IOS Network Management Command Reference』

IP アクセス リスト コマンド:コマンド構文の詳細、コマンド モード、コマンド履歴、デフォルト設定、使用上の注意事項、および例

セキュリティ コマンド:コマンド構文の詳細、コマンド モード、コマンド履歴、デフォルト設定、使用上の注意事項、および例

『Cisco IOS Security Command Reference』

規格

規格
タイトル

なし

--

MIB

MIB
MIB リンク

なし

選択したプラットフォーム、Cisco IOS Release、およびフィーチャ セットの MIB を検索してダウンロードする場合は、次の URL にある Cisco MIB Locator を使用します。

http://www.cisco.com/go/mibs

RFC

RFC
タイトル

RFC 2222

『Simple Authentication and Security Layer (SASL)』

RFC 2246

『The TLS Protocol Version 1.0』

RFC 3080

『The Blocks Extensible Exchange Protocol Core』

RFC 4251

『The Secure Shell (SSH) Protocol Architecture』

RFC 4252

『The Secure Shell (SSH) Authentication Protocol』

RFC 4741

『NETCONF Configuration Protocol』

RFC 4742

『Using the NETCONF Configuration Protocol over Secure SHell (SSH)』

RFC 4744

『Using the NETCONF Protocol over the Blocks Extensible Exchange Protocol (BEEP)』

シスコのテクニカル サポート

説明
リンク

右の URL にアクセスして、シスコのテクニカル サポートを最大限に活用してください。

以下を含むさまざまな作業にこの Web サイトが役立ちます。

テクニカル サポートを受ける

ソフトウェアをダウンロードする

セキュリティの脆弱性を報告する、またはシスコ製品のセキュリティ問題に対する支援を受ける

ツールおよびリソースへアクセスする

Product Alert の受信登録

Field Notice の受信登録

Bug Toolkit を使用した既知の問題の検索

Networking Professionals(NetPro)コミュニティで、技術関連のディスカッションに参加する

トレーニング リソースへアクセスする

TAC Case Collection ツールを使用して、ハードウェアや設定、パフォーマンスに関する一般的な問題をインタラクティブに特定および解決する

この Web サイト上のツールにアクセスする際は、Cisco.com のログイン ID およびパスワードが必要です。

http://www.cisco.com/techsupport

NETCONF の機能情報

表 1 に、この章に記載されている機能および具体的な設定情報へのリンクを示します。

ご使用の Cisco IOS ソフトウェア リリースによっては、コマンドの中に一部使用できないものがあります。特定のコマンドに関するリリース情報については、コマンド リファレンス マニュアルを参照してください。

Cisco Feature Navigator を使用すると、プラットフォームおよびソフトウェア イメージの各サポート情報を検索できます。Cisco Feature Navigator により、どの Cisco IOS および Catalyst OS ソフトウェア イメージが特定のソフトウェア リリース、フィーチャ セット、またはプラットフォームをサポートするか調べることができます。Cisco Feature Navigator には、 http://www.cisco.com/go/cfn からアクセスします。Cisco.com のアカウントは必要ありません。


表 1 には、一連の Cisco IOS ソフトウェア リリースのうち、特定の機能が初めて導入された Cisco IOS ソフトウェア リリースだけが記載されています。その機能は、特に断りがない限り、それ以降の一連の Cisco IOS ソフトウェア リリースでもサポートされます。


 

表 1 NETCONF の機能情報

機能名
リリース
機能情報

NETCONF over SSHv2

12.2(33)SRA
12.4(9)T
12.2(33)SB
12.2(33)SXI

NETCONF over SSHv2 機能を使用すると、暗号化されたトランスポート上で Cisco コマンドライン インターフェイス(CLI)によるネットワーク設定を実行できます。

NETCONF プロトコルは、ネットワーク デバイスの管理、設定データ情報の取得、および新しい設定データのアップロードと操作の簡単なメカニズムを定義します。NETCONF では、設定データとプロトコル メッセージに対して Extensible Markup Language(XML)ベースのデータ符号化を使用します。

この機能は、12.4(9)T で導入されました。

この機能に関する詳細については、次の各項を参照してください。

「NETCONF over SSHv2」

「NETCONF 通知」

「ホスト名とドメイン名を使用した SSH バージョン 2 のイネーブル化」

「RSA 鍵ペアを使用した SSH バージョン 2 のイネーブル化」

「NETCONF over SSHv2 のイネーブル化」

「NETCONF ネットワーク マネージャ アプリケーションの設定」

「NETCONF over SSHv2 の設定:例」

この機能により、次のコマンドが導入または変更されました。 clear netconf debug netconf netconf lock-time netconf max-sessions netconf ssh show netconf

BEEP 上での設定への NETCONF アクセス

12.4(9)T
12.2(33)SRB
12.2(33)SB
12.2(33)SXI

NETCONF over BEEP 機能を使用すると、NETCONF サーバまたは NETCONF クライアントが接続を開始するように設定できます。そのため、断続的に接続されるデバイスの大規模ネットワーク、およびファイアウォールおよび Network Address Translator(NAT)がある管理接続を逆にする必要があるデバイスをサポートします。

この機能は、12.4(9)T で導入されました。

この機能に関する詳細については、次の各項を参照してください。

「NETCONF over BEEP」

「NETCONF 通知」

「SASL プロファイルの設定」

「NETCONF over BEEP のイネーブル化」

「NETCONF ネットワーク マネージャ アプリケーションの設定」

「NETCONF over SSHv2 の設定:例」

この機能により、次のコマンドが導入または変更されました。 netconf beep initiator netconf beep listener

用語集

BEEP :Blocks Extensible Exchange Protocol。コネクション型非同期相互作用のための汎用アプリケーション プロトコル フレームワーク。

NETCONF :Network Configuration Protocol。ネットワーク デバイスの管理、設定データ情報の取得、および新しい設定データのアップロードと操作の簡単なメカニズムを定義するプロトコル。

SASL :Simple Authentication and Security Layer。接続ベースのプロトコルに認証サポートを追加するためのインターネット標準方式です。SASL をセキュリティ アプライアンスと Lightweight Directory Access Protocol(LDAP)サーバとの間で使用してユーザ認証を保護できます。

SSHv2 :Secure Shell バージョン 2。SSH は、信頼性の高いトランスポート レイヤの上部で実行され、強力な認証機能と暗号化機能を提供します。SSHv2 は、ネットワーク上の他のコンピュータにセキュアにアクセスし、セキュアにコマンドを実行するための手段を提供します。

TLS :Transport Layer Security。相互認証、完全性のためのハッシュの使用、プライバシー保護のための暗号化を可能にすることで、クライアントとサーバとの間にセキュアな通信を提供するアプリケーション レベルのプロトコルです。TLS では、証明書、公開鍵、および秘密鍵を使用します。

XML :eXtensible Markup Language。World Wide Web Consortium(W3C)によって管理されている、情報構造を指定するマークアップ言語を作成するための構文を定義する標準。情報構造は、情報の外観(太字、イタリック体など)ではなく、情報のタイプ(加入者名やアドレスなど)を定義します。外部のプロセスは、これらの情報を操作して、さまざまな形式で公開できます。XML では、独自にカスタマイズしたマークアップ言語を定義できます。

Copyright © 2007-2010. シスコシステムズ合同会社.