この製品のマニュアルセットは、偏向のない言語を使用するように配慮されています。このマニュアルセットでの偏向のない言語とは、年齢、障害、性別、人種的アイデンティティ、民族的アイデンティティ、性的指向、社会経済的地位、およびインターセクショナリティに基づく差別を意味しない言語として定義されています。製品ソフトウェアのユーザーインターフェイスにハードコードされている言語、RFP のドキュメントに基づいて使用されている言語、または参照されているサードパーティ製品で使用されている言語によりドキュメントに例外が存在する場合があります。シスコのインクルーシブランゲージに対する取り組みの詳細は、こちらをご覧ください。
このドキュメントは、米国シスコ発行ドキュメントの参考和訳です。リンク情報につきましては、日本語版掲載時点で、英語版にアップデートがあり、リンク先のページが移動/変更されている場合がありますことをご了承ください。あくまでも参考和訳となりますので、正式な内容については米国サイトのドキュメントを参照ください。
目次
セキュア シェル(SSH)は、Berkeley の r ツールへのセキュアな置換を提供するアプリケーションおよびプロトコルです。 プロトコルは標準の暗号メカニズムを使用してセッションの安全を確保します。アプリケーションは Berkeley の rexec および rsh ツールと同様に使用できます。
SSH サーバには、SSH バージョン 1(SSHv1)と SSH バージョン 2(SSHv2)の 2 種類のバージョンがあります。 SSHv1 は Rivest, Shamir, and Adelman(RSA)キーを使用し、SSHv2 はデジタル署名アルゴリズム(DSA)キーを使用します。 Cisco IOS XR ソフトウェア は SSHv1 と SSHv2 の両方をサポートしています。
このモジュールでは、Cisco ASR 9000 シリーズ ルータ でのセキュア シェルの実装方法について説明します。
(注) |
このモジュールで使用されているセキュア シェル コマンドの詳細については、 『Cisco ASR 9000 Series Aggregation Services Router System Security Command Reference』マニュアルの「Secure Shell Commands」モジュールを参照してください。 このモジュールの他のコマンドに関するマニュアルについては、コマンド リファレンス マスター インデックスを使用するか、オンラインで検索します。 |
リリース |
変更点 |
---|---|
リリース 3.7.2 |
この機能を追加しました。 |
リリース 3.9.0 |
次の拡張サポートが追加されました。 |
セキュア シェルを実装するには、次の前提条件を満たす必要があります。
SSH の基本的な制約事項と SFTP 機能の制限は、次のとおりです。
SSH を実装するには、次の概念について理解しておく必要があります。
SSH サーバの機能によって、SSH クライアントは Cisco ルータに対してセキュアで暗号化された接続を実行できます。 この接続は、インバウンド Telnet 接続の機能と同様です。 SSH 以前は、セキュリティは Telnet のセキュリティに限定されていました。 SSH を Cisco IOS XR ソフトウェア 認証と併用することで、強力な暗号化が可能になりました。 Cisco IOS XR ソフトウェア の SSH サーバは、無償あるいは市販の SSH クライアントとの相互運用が可能です。
SSH クライアント機能は、SSH プロトコルを介して実行されるアプリケーションで、認証と暗号化を行います。 SSH クライアントによって、Cisco ルータは他の Cisco ルータ、または SSH サーバを実行する他のデバイスに対して、セキュアで暗号化された接続を実行できます。 この接続は、接続が暗号化されている点を除き、アウトバウンド Telnet 接続の機能と同様です。 認証と暗号化により、SSH クライアントは、セキュリティ保護されていないネットワーク上でもセキュアな通信を実現できます。
Cisco IOS XR ソフトウェア の SSH クライアントは、無償あるいは市販の SSH サーバとの相互運用が可能でした。 SSH クライアントは、AES、トリプル DES、メッセージ ダイジェスト アルゴリズム 5(MD5)、SHA1、およびパスワード認証による暗号化をサポートしていました。 ユーザ認証はルータへの Telnet セッション内で実行されました。 SSH がサポートするユーザ認証メカニズムには、RADIUS、TACACS+、およびローカルに格納されたユーザ名とパスワードを使用した認証がありました。
SSH には、SSHv2 で導入された新たな標準ファイル転送プロトコルである Standard File Transfer Protocol(SFTP)のサポートが含まれています。 この機能は、ルータ設定またはルータ イメージ ファイルをコピーするセキュアで認証された方法を提供します。
SFTP クライアント機能は SSH コンポーネントの一部として提供され、ルータで常にイネーブルになっています。 このため、適切なレベルのユーザは、ルータへのファイルのコピーおよびルータからのファイルのコピーが可能です。 copy コマンドと同様に、sftp コマンドは EXEC モードでしか使用できません。
SFTP クライアントは VRF 対応であるため、接続の試行時に特定の送信元インターフェイスに関連付けられた VRF を使用するようにセキュア FTP クライアントを設定することもできます。 SFTP クライアントはインタラクティブ モードもサポートしています。このモードでは、ユーザはサーバにログインして特定の作業を UNIX サーバ経由で実行できます。
SFTP サーバは SSH サーバのサブシステムです。 つまり、SSH サーバが SFTP サーバ要求を受信すると、SFTP API は SSH サーバに対して子プロセスとして SFTP サーバを作成します。 新たな要求のたびに、新しい SFTP サーバ インスタンスが作成されます。
SFTP は、次の手順で新たな SFTP サーバを要求します。
SSH サーバが SSH クライアントと新たな接続を確立すると、サーバ デーモンは新たな SSH サーバ子プロセスを作成します。 子サーバ プロセスは、キー交換とユーザ認証プロセスによって、SSH クライアントとサーバとの間にセキュアな通信チャネルを構築します。 SSH サーバがサブシステムを SFTP サーバにする要求を受信した場合、SSH サーバ デーモンは SFTP サーバ子プロセスを作成します。 SFTP サーバ サブシステム要求を受信するたびに、新たな SSH サーバ子インスタンスおよび SFTP サーバ インスタンスが作成されます。 SFTP サーバはユーザ セッションを認証し、接続を開始します。 ユーザのデフォルト ディレクトリおよびクライアントの環境を設定します。
初期化が実行されると、SFTP サーバはクライアントからの SSH_FXP_INIT メッセージを待機します。このメッセージは、ファイル通信セッションを開始するためには不可欠です。 このメッセージの後に、クライアントの要求に基づいたメッセージが続く場合があります。 ここでは、プロトコルは「要求応答」モデルを採用しています。クライアントがサーバに要求を送信すると、サーバはこの要求を処理し応答を送信します。
SFTP サーバは次の応答を表示します。
(注) |
サーバは、着信する SFTP 接続を受け付けるために稼働している必要があります。 |
サーバの正当性を検証することは、セキュアな SSH 接続を実現する最初の手順です。 このプロセスはホスト認証と呼ばれ、クライアントが有効なサーバに接続していることを確認するために実施されます。
ホスト認証はサーバの公開キーを使用して実行されます。 サーバは、キー交換フェーズの間に公開キーをクライアントに提供します。 クライアントはこのサーバの既知ホストのデータベースと、対応する公開キーをチェックします。 クライアントでサーバの IP アドレスが見つからなかった場合は、ユーザに警告メッセージを表示し、ユーザは公開キーを保存するか廃棄するかを選択できます。 サーバの IP アドレスは見つかったものの公開キーが一致しない場合、クライアントは接続を終了します。 公開キーが有効な場合、サーバは検証され、セキュアな SSH 接続が確立されます。
IOS XR SSH サーバおよびクライアントは、DSA ベースのホスト認証をサポートしていました。 ただし、IOS などの他の製品との互換性のため、RSA ベースのホスト認証のサポートも追加されました。
SSH プロトコルにおいてユーザを認証する方法の 1 つに、RSA 公開キー ベースのユーザ認証があります。 秘密キーの保持がユーザ認証の役割を果たします。 この方法は、ユーザの秘密キーで作成した署名を送信することで機能します。 各ユーザは RSA キーペアをクライアント マシンに保持しています。 RSA キーペアの秘密キーはクライアント マシンに残ったままです。
ユーザは、ssh-keygen などの標準的なキー生成メカニズムを使用して、RSA 公開キーと秘密キーのキー ペアを UNIX クライアント上に生成します。 サポートされているキーの最大の長さは 2048 ビットで、最小の長さは 512 ビットです。 次に、一般的なキー生成アクティビティの例を示します。
bash-2.05b$ ssh-keygen –b 1024 –t rsa Generating RSA private key, 1024 bit long modulus
公開キーを正常にボックスにインポートするには、公開キーは Base64 エンコード(バイナリ)形式である必要があります。 インターネットで入手できるサード パーティのツールを使用して、キーをバイナリ形式に変換できます。
公開キーがルータにインポートされると、SSH クライアントは内部で「-o」オプションを使用して要求を指定することで、公開キー認証方式を使用できます。 例:
client$ ssh -o PreferredAuthentications=publickey 1.2.3.4
公開キーが RSA 方式を使用してルータにインポートされていない場合、SSH サーバはパスワード ベースの認証を開始します。 公開キーがインポートされている場合、サーバは両方の方式の使用を提案します。 SSH クライアントはいずれかの方式を使用して、接続を確立します。 システムでは、発信する SSH クライアント接続の数を 10 まで許可しています。
現在、SSH バージョン 2 および SFTP サーバのみが RSA ベースの認証をサポートしています。 公開キーのルータへのインポート方法の詳細については、このガイドの「Implementing Certification Authority Interoperability on Cisco ASR 9000 シリーズ ルータ(認証局相互運用性の実装)」の章を参照してください。
(注) |
推奨される認証方法は SSH RFC に記載されています。 RSA ベース認証のサポートはローカル認証のみです。TACACS/RADIUS サーバに対してはサポートされていません。 |
認証、許可、およびアカウンティング(AAA)は、Cisco ルータまたはアクセス サーバにアクセス コントロールを設定できる主要なフレームワークを提供する一連のネットワーク セキュリティ サービスです。 AAA の詳細については、 『Cisco ASR 9000 Series Aggregation Services Router System Security Command Reference』マニュアルの「Authentication, Authorization, and Accounting Commands on Cisco ASR 9000 シリーズ ルータSoftware」モジュールおよび 『Cisco ASR 9000 Series Aggregation Services Router System Security Configuration Guide』マニュアルの「Configuring AAA Services on Cisco ASR 9000 シリーズ ルータ 」モジュールを参照してください。
SSH を設定するには、次の項で説明する作業を実行します。
SSH を設定するには、次の作業を実行します。
(注) |
SSHv1 の設定では、ステップ 1 ~ 4 は必須です。 SSHv2 の設定では、ステップ 1 ~ 4 は任意です。 |
1. configure
2. hostname hostname
3. domain name domain-name
4. exit
5. crypto key generate rsa [usage keys | general-keys] [keypair-label]
6. crypto key generate dsa
7. configure
8. ssh timeout seconds
9. 次のいずれかを実行します。
11. show ssh
12. show ssh session details
SSH クライアントを設定するには、次の作業を実行します。
1. configure
2. ssh client knownhost device : /filename
3. exit
4. ssh {ipv4-address | hostname} [ username user- id | cipher des | source-interface type instance]
コマンドまたはアクション | 目的 | |||
---|---|---|---|---|
ステップ 1 | configure 例:
RP/0/RSP0/CPU0:router# configure |
グローバル コンフィギュレーション モードを開始します。 |
||
ステップ 2 | ssh client knownhost device : /filename 例:
RP/0/RSP0/CPU0:router(config)# ssh client knownhost slot0:/server_pubkey
|
(任意)クライアント側でサーバの公開キー(pubkey)を認証およびチェックする機能をイネーブルにします。
|
||
ステップ 3 | exit 例:
RP/0/RSP0/CPU0:router(config)# exit
|
グローバル コンフィギュレーション モードを終了して、ルータを EXEC モードに戻します。 |
||
ステップ 4 | ssh {ipv4-address | hostname} [ username user- id | cipher des | source-interface type instance] 例:
RP/0/RSP0/CPU0:router# ssh remotehost username user1234
|
アウトバウント SSH 接続をイネーブルにします。
|
この項では、次の設定例について説明します。
次に、SSHv2 を設定する例を示します。この手順には、ホスト名の作成、ドメイン名の定義、DSA キー ペアの生成によるルータでのローカルおよびリモート認証用の SSH サーバのイネーブル化、SSH サーバの起動、および実行コンフィギュレーション ファイルへのコンフィギュレーション コマンドの保存が含まれています。
SSH の設定が完了すると、ルータで SFTP 機能が使用できます。
configure hostname router1 domain name cisco.com exit crypto key generate dsa configure ssh server end
ここでは、セキュア シェルの実装に関する関連資料について説明します。
関連項目 |
ドキュメント名 |
---|---|
AAA コマンド:コマンド構文の詳細、コマンド モード、コマンド履歴、デフォルト設定、使用上のガイドライン、および例 |
『Cisco ASR 9000 Series Aggregation Services Router System Security Command Reference』の「Authentication, Authorization, and Accounting Commands on Cisco ASR 9000 シリーズ ルータ Software」モジュール。 |
AAA 設定作業 |
『Cisco ASR 9000 Series Aggregation Services Router System Security Configuration Guide』の「Configuring AAA Services on Cisco ASR 9000 シリーズ ルータ Software」モジュール。 |
ホスト サービスおよびアプリケーション コマンド:詳細なコマンド構文、コマンド モード、コマンド履歴、デフォルト設定、使用上のガイドライン、および例 |
『Cisco ASR 9000 Series Aggregation Services Router IP Addresses and Services Command Reference』の「Host Services and Applications Commands on Cisco ASR 9000 シリーズ ルータ 」モジュール。 |
IPSec コマンド:コマンド構文の詳細、コマンド モード、コマンド履歴、デフォルト設定、使用上のガイドライン、および例 |
『Cisco ASR 9000 Series Aggregation Services Router System Security Command Reference』 の「IPSec Network Security Commands on Cisco ASR 9000 シリーズ ルータ Software」モジュール |
SSH コマンド:コマンド構文の詳細、コマンド モード、コマンド履歴、デフォルト設定、使用上のガイドライン、および例 |
『Cisco ASR 9000 Series Aggregation Services Router System Security Command Reference』 の「Secure Shell Commands on Cisco ASR 9000 シリーズ ルータ Software」モジュール |
標準 |
タイトル |
---|---|
Draft-ietf-secsh-userauth-17.txt |
『SSH Authentication Protocol』(2003 年 7 月) |
Draft-ietf-secsh-connect-17.txt |
『SSH Connection Protocol』(2003 年 7 月) |
Draft-ietf-secsh-architecture-14.txt |
『SSH Protocol Architecture』(2003 年 7 月) |
Draft-ietf-secsh-transport-16.txt |
『SSH Transport Layer Protocol』(2003 年 7 月) |
MIB |
MIB リンク |
---|---|
— | Cisco IOS XR ソフトウェアを使用して MIB を検出およびダウンロードするには、URL(http://cisco.com/public/sw-center/netmgmt/cmtk/mibs.shtml)にある Cisco MIB Locator を使用して、[Cisco Access Products] メニューでプラットフォームを選択します。 |
RFC |
タイトル |
---|---|
この機能でサポートが追加または変更された RFC はありません。また、この機能で変更された既存の RFC のサポートはありません。 |
— |
説明 |
リンク |
---|---|
シスコのテクニカル サポート Web サイトには、数千ページに及ぶ検索可能な技術情報があります。製品、テクノロジー、ソリューション、技術的なヒント、およびツールへのリンクもあります。 Cisco.com に登録済みのユーザは、このページから詳細情報にアクセスできます。 |