SSHを使用してNETCONFサーバーに接続する
クライアント アプリケーションが SSH を使用して NETCONF サーバーに接続するには、「 NETCONF セッションの SSH 接続の確立 」 に記載されている要件を 満たす必要があります。
前提条件を満たすと、Perl に記述されたアプリケーションは NETCONF Perl モジュールを使用して NETCONF サーバーに接続します。NETCONF Perl モジュールを使用しないクライアント アプリケーションは、以下のいずれかの方法を使用します。
SSHライブラリルーティンを使用してNETCONFサーバーへのSSH接続を確立し、ユーザー名とパスワードまたは大分を指定し、NETCONFセッションのSSHサブシステムとして機能するチャネルを作成します。ライブラリ ルーチンを使用するための手順は、このドキュメントの範囲を超えて提供されています。
コマンドを使用して NETCONF セッションを確立
ssh
します。NETCONF セッションをデフォルトの NETCONF ポート(830)を使用して SSH サブシステムとして確立するには、クライアント アプリケーションに次のコマンドが発行されます。
ssh user@hostname -p 830 -s netconf
この
-p
オプションは、NETCONF サーバーがリッスンするポート番号を定義します。デフォルト ポート上で SSH へのアクセスを有効にした場合、このオプションを除外できます。この
-s
オプションにより、NETCONF セッションが SSH サブシステムとして確立されます。デフォルトの SSH ポート(22)を使用して NETCONF セッションを確立し、pseudo-tty 割り当てを使用するには、次のコマンドを発行します。
ssh user@hostname -t netconf
注:複数の
-t
オプションを使用すると、SSHにローカル ttyがなくても、pseudo tty の割り当てを強制的に行います。
専用ポートを持つSSHサブシステムとしてNETCONFセッションを確立することで、デバイスはNETCONFトラフィックを簡単に識別してフィルタリングできます。ただし、 オプションを使用してデフォルトのSSHポートを使用してNETCONFセッションを確立すると、たとえば、動作コマンドを発行する場合など、Junos OSを実行しているデバイス上のセッションを可視化する利点
-t
show system users
があります。このアプリケーションには、NETCONF サーバーのパスワードまたはアドレス指定のプロンプトを傍受するコードを含める必要があります。最も単純な方法は、 コマンドなどのユーティリティを使用
expect
するアプリケーションです。NETCONF Perl クライアントは、たとえばこの方法を使用します。