SSH 認証の X.509v3 証明書
SSH 認証の X.509v3 証明書機能は、サーバー内で X.509v3 デジタル証明書を使用し、セキュア シェル(SSH)サーバー側でユーザー認証を使用します。
このモジュールでは、デジタル証明書用のサーバおよびユーザ証明書プロファイルを設定する方法について説明します。
SSH 認証の X.509v3 証明書の前提条件
-
SSH 認証の X.509v3 証明書機能では、ip ssh server authenticate user コマンドの代わりに ip ssh server algorithm authentication コマンドが導入されます。ip ssh server authenticate user コマンドを使用すると、次の警告メッセージが表示されます。
Warning: SSH command accepted but this CLI will be deprecated soon. Please move to new CLI “ip ssh server algorithm authentication”. Please configure “default ip ssh server authenticate user” to make the CLI ineffective.
default ip ssh server authenticate user コマンドを使用して、ip ssh server authenticate user コマンドを無効にします。その後、IOS セキュア シェル(SSH)サーバーは ip ssh server algorithm authentication コマンドを使用して起動します。
SSH 認証の X.509v3 証明書の制約事項
-
SSH 認証の X.509v3 証明書機能の実装は、Cisco IOS XE セキュアシェル(SSH)サーバー側にのみ適用できます。
-
SSH サーバーは、サーバーおよびユーザー認証について、x509v3-ssh-rsa アルゴリズムベースの証明書のみをサポートします。
SSH 認証用の X.509v3 証明書に関する情報
次に、デジタル証明書、およびサーバーとユーザーの認証について説明します。
デジタル証明書
認証の有効性は、公開署名キーとその署名者のアイデンティティとの関連の強さに依存します。X.509v3 形式(RFC5280)のデジタル証明書は、アイデンティティの管理を実行するために使用されます。信頼できるルート証明機関とその中間証明機関による署名の連鎖によって、指定の公開署名キーと指定のデジタル アイデンティティがバインドされます。
公開キー インフラストラクチャ(PKI)のトラストポイントは、デジタル証明書の管理に役立ちます。証明書とトラストポイントを関連付けることによって、証明書を追跡できます。トラストポイントには、認証局(CA)、さまざまなアイデンティティ パラメータ、およびデジタル証明書に関する情報が含まれています。複数のトラストポイントを作成して、異なる証明書に関連付けることができます。
X.509v3 を使用したサーバーおよびユーザー認証
サーバー認証の場合、Cisco IOS XE セキュアシェル(SSH)サーバーが確認のためにそれ自体の証明書を SSH クライアントに送信します。このサーバー証明書は、サーバー証明書プロファイル(ssh-server-cert-profile-server コンフィギュレーション モード)で設定されたトラストポイントに関連付けられます。
ユーザー認証の場合、SSH クライアントが確認のためにユーザーの証明書を SSH サーバーに送信します。SSH サーバーは、サーバー証明書プロファイル(ssh-server-cert-profile-user コンフィギュレーション モード)で設定された公開キー インフラストラクチャ(PKI)トラストポイントを使用して、受信したユーザー証明書を確認します。
デフォルトでは、証明書ベースの認証が SSH サーバー端末でサーバーおよびユーザーに対して有効になります。
SSH 認証用の X.509v3 証明書の設定方法
ここでは、SSH 認証用の X.509v3 証明書の設定方法について説明します。
サーバー認証にデジタル証明書を使用するための SSH サーバーの設定
サーバー認証にデジタル証明書を使用するように SSH サーバーを設定するには、次の手順を実行します。
手順
コマンドまたはアクション | 目的 | |||
---|---|---|---|---|
ステップ 1 |
enable 例:
|
特権 EXEC モードを有効にします。 プロンプトが表示されたらパスワードを入力します。 |
||
ステップ 2 |
configure terminal 例:
|
グローバル コンフィギュレーション モードを開始します。 |
||
ステップ 3 |
ip ssh server algorithm hostkey {x509v3-ssh-rsa [ssh-rsa] | ssh-rsa [x509v3-ssh-rsa]} 例:
|
ホスト キー アルゴリズムの順序を定義します。セキュア シェル(SSH)クライアントとネゴシエートされるのは、設定済みのアルゴリズムのみです。
|
||
ステップ 4 |
ip ssh server certificate profile 例:
|
サーバー証明書プロファイルおよびユーザー証明書プロファイルを設定し、SSH 証明書プロファイル コンフィギュレーション モードを開始します。 |
||
ステップ 5 |
server 例:
|
サーバー証明書プロファイルを設定し、SSH サーバー証明書プロファイルのユーザー コンフィギュレーション モードを開始します。 |
||
ステップ 6 |
trustpoint sign PKI-trustpoint-name 例:
|
公開キー インフラストラクチャ(PKI)トラストポイントをサーバ証明書プロファイルにアタッチします。SSH サーバは、この PKI トラストポイントに関連付けられた証明書をサーバ認証に使用します。 |
||
ステップ 7 |
ocsp-response include 例:
|
(任意)Online Certificate Status Protocol(OCSP)の応答または OCSP ステープリングをサーバ証明書と一緒に送信します。
|
||
ステップ 8 |
end 例:
|
SSH サーバー証明書プロファイルのサーバー コンフィギュレーション モードを終了し、特権 EXEC モードに戻ります。 |
ユーザー認証用のデジタル証明書を確認するための SSH サーバーの設定
ユーザー認証にデジタル証明書を使用するように SSH サーバーを設定するには、次の手順を実行します。
手順
コマンドまたはアクション | 目的 | |||
---|---|---|---|---|
ステップ 1 |
enable 例:
|
特権 EXEC モードを有効にします。 プロンプトが表示されたらパスワードを入力します。 |
||
ステップ 2 |
configure terminal 例:
|
グローバル コンフィギュレーション モードを開始します。 |
||
ステップ 3 |
ip ssh server algorithm authentication {publickey | keyboard | password} 例:
|
ユーザ認証アルゴリズムの順序を定義します。セキュア シェル(SSH)クライアントとネゴシエートされるのは、設定済みのアルゴリズムのみです。
|
||
ステップ 4 |
ip ssh server algorithm publickey {x509v3-ssh-rsa [ssh-rsa] | ssh-rsa [x509v3-ssh-rsa]} 例:
|
公開キー アルゴリズムの順序を定義します。SSH クライアントによってユーザ認証に許可されるのは、設定済みのアルゴリズムのみです。
|
||
ステップ 5 |
ip ssh server certificate profile 例:
|
サーバ証明書プロファイルおよびユーザ証明書プロファイルを設定し、SSH 証明書プロファイル コンフィギュレーション モードを開始します。 |
||
ステップ 6 |
user 例:
|
ユーザ証明書プロファイルを設定し、SSH サーバ証明書プロファイルのユーザ コンフィギュレーション モードを開始します。 |
||
ステップ 7 |
trustpoint verify PKI-trustpoint-name 例:
|
受信したユーザ証明書の確認に使用される公開キー インフラストラクチャ(PKI)トラストポイントを設定します。
|
||
ステップ 8 |
ocsp-response required 例:
|
(任意)受信したユーザ証明書による Online Certificate Status Protocol(OCSP)の応答の有無を要求します。
|
||
ステップ 9 |
end 例:
|
SSH サーバー証明書プロファイルのユーザー コンフィギュレーション モードを終了し、特権 EXEC モードに戻ります。 |
デジタル証明書を使用したサーバーおよびユーザー認証の設定の確認
デジタル証明書を使用したサーバーおよびユーザー認証の設定を確認するには、次の手順を実行します。
手順
コマンドまたはアクション | 目的 | |
---|---|---|
ステップ 1 |
enable 例:
|
特権 EXEC モードを有効にします。 プロンプトが表示されたらパスワードを入力します。 |
ステップ 2 |
show ip ssh 例:
|
現在設定されている認証方式を表示します。証明書ベース認証の使用を確認するには、x509v3-ssh-rsa アルゴリズムが設定済みのホスト キー アルゴリズムであることを確認します。 |
SSH 認証用の X.509v3 証明書の設定例
ここでは、デジタル証明書を使用したユーザーおよびサーバー認証の例を示します。
例:サーバー認証にデジタル証明書を使用するための SSH サーバーの設定
この例では、サーバー認証用のデジタル証明書を使用するための SSH サーバーの設定方法を示します。
Device> enable
Device# configure terminal
Device(config)# ip ssh server algorithm hostkey x509v3-ssh-rsa
Device(config)# ip ssh server certificate profile
Device(ssh-server-cert-profile)# server
Device(ssh-server-cert-profile-server)# trustpoint sign trust1
Device(ssh-server-cert-profile-server)# end
例:ユーザー認証用のデジタル証明書を確認するための SSH サーバーの設定
この例では、ユーザー認証用のユーザーのデジタル証明書を確認するための SSH サーバーの設定方法を示します。
Device> enable
Device# configure terminal
Device(config)# ip ssh server algorithm authentication publickey
Device(config)# ip ssh server algorithm publickey x509v3-ssh-rsa
Device(config)# ip ssh server certificate profile
Device(ssh-server-cert-profile)# user
Device(ssh-server-cert-profile-user)# trustpoint verify trust2
Device(ssh-server-cert-profile-user)# end
SSH 認証用の X.509v3 証明書の機能履歴
次の表に、このモジュールで説明する機能のリリースおよび関連情報を示します。
これらの機能は、特に明記されていない限り、導入されたリリース以降のすべてのリリースで使用できます。
リリース |
機能 |
機能情報 |
---|---|---|
Cisco IOS XE Everest 16.5.1a |
SSH 認証の X.509v3 証明書 |
SSH 認証の X.509v3 証明書機能は、サーバ内で X.509v3 デジタル証明書を使用し、SSH サーバ側でユーザ認証を使用します。 |
Cisco Feature Navigator を使用すると、プラットフォームおよびソフトウェアイメージのサポート情報を検索できます。Cisco Feature Navigator には、http://www.cisco.com/go/cfn [英語] からアクセスします。