Secure Socket Layer HTTP に関する情報
セキュア HTTP サーバおよびクライアントの概要
セキュア HTTP 接続の場合、HTTP サーバが送受信するデータは暗号化されてインターネットに送信されます。SSL 暗号化を伴う HTTP は、Web ブラウザからスイッチを設定するような機能に、セキュアな接続を提供します。シスコが実装するセキュア HTTP サーバおよび HTTP クライアントでは、アプリケーション層の暗号化に SSL バージョン 3.0 を使用します。HTTP over SSL は、HTTPS と省略されます(セキュアな接続の場合、URL が http://の代わりに https://で始まります)。
(注) |
SSL は 1999 年に Transport Layer Security(TLS)に発展しましたが、このような特定のコンテキストでまだ使用されています。 |
セキュア HTTP サーバ(スイッチ)の主な役割は、指定のポート(デフォルトの HTTPS ポートは 443)で HTTPS 要求を待ち受けて、HTTP 1.1 Web サーバへその要求を渡すことです。HTTP 1.1 サーバはその要求を処理して、セキュア HTTP サーバへ応答(呼び出す)します。セキュア HTTP サーバは HTTP 1.1 サーバの代わりに、元の要求に応えます。
セキュア HTTP クライアント(Web ブラウザ)の主な役割は、Cisco IOS アプリケーション要求に応答して、そのアプリケーションが要求した HTTPS User Agent サービスを実行し、応答を(そのアプリケーションに)返すことです。
CA のトラストポイント
認証局(CA)は、要求を認可して参加するネットワーク デバイスに証明書を発行します。これらのサービスは、参加するデバイスに対する中央集中的なセキュリティ キーおよび証明書の管理を提供します。特定の CA サーバはトラストポイントと呼ばれます。
接続が実行されると、HTTPS サーバは、トラストポイントとなる特定の CA から得た X.509v3 の証明書を発行することで、セキュアな接続をクライアントに提供します。クライアント(通常、Web ブラウザ)は、その証明書の認証に必要な公開キーを保有しています。
セキュア HTTP 接続には、CA のトラストポイントを設定することを強く推奨します。HTTPS サーバを実行しているデバイスに CA のトラストポイントが設定されていないと、サーバは自身を認証して必要な RSA のキーのペアを生成します。自身で認証した(自己署名)証明書は適切なセキュリティではないので、接続するクライアントはその証明書が自己証明書であることを通知し、ユーザに接続の選択(確立または拒否)をさせる必要があります。この選択肢は内部ネットワーク トポロジ(テスト用など)に役立ちます。
CA のトラストポイントを設定していないと、セキュア HTTP 接続を有効にした場合、そのセキュア HTTP サーバ(またはクライアント)に対する一時的または永続的な自己署名証明書が自動的に生成されます。
-
デバイスにホスト名とドメイン名が設定されてない場合、一時的な自己署名証明書が生成されます。デバイスが再起動すると、一時的な自己署名証明書がすべて失われて、新しい一時的な自己署名証明書が割り当てられます。
-
デバイスにホスト名とドメイン名が設定されている場合、永続的な自己署名証明書が生成されます。デバイスを再起動したり、セキュア HTTP サーバをディセーブルにしたりする場合も、この証明書はアクティブなままで残り、再度セキュア HTTP 接続をイネーブルにする際にも存在しています。
(注) |
認証局およびトラストポイントは、個々のデバイスで設定する必要があります。他のデバイスからコピーすると、それらはデバイス上で無効になります。 新しい証明書を登録した場合、新しい設定の変更は、サーバが再起動するまで HTTPS サーバに適用されません。CLI を使用するか、または物理的な再起動によって、サーバを再起動できます。サーバを再起動すると、デバイスは新しい証明書の使用を開始します。 |
自己署名証明書が生成された場合、その情報は show running-config 特権 EXEC コマンドで出力できます。自己署名証明書を表示するコマンドの出力(show running-config コマンド)を例として一部示します。
Device# show running-config
Building configuration...
<output truncated>
crypto pki trustpoint TP-self-signed-3080755072
enrollment selfsigned
subject-name cn=IOS-Self-Signed-Certificate-3080755072
revocation-check none
rsakeypair TP-self-signed-3080755072
!
!
crypto ca certificate chain TP-self-signed-3080755072
certificate self-signed 01
3082029F 30820208 A0030201 02020101 300D0609 2A864886 F70D0101 04050030
59312F30 2D060355 04031326 494F532D 53656C66 2D536967 6E65642D 43657274
69666963 6174652D 33303830 37353530 37323126 30240609 2A864886 F70D0109
02161743 45322D33 3535302D 31332E73 756D6D30 342D3335 3530301E 170D3933
30333031 30303030 35395A17 0D323030 31303130 30303030 305A3059 312F302D
<output truncated>
自己署名証明書は、セキュア HTTP サーバを無効にして、no crypto pki trustpoint TP-self-signed-30890755072 グローバル コンフィギュレーション コマンドを入力することで削除できます。その後、セキュア HTTP サーバを再度有効にすると、自己署名証明書が新たに生成されます。
(注) |
TP self-signed の後ろに表示されている値は、デバイスのシリアル番号によって異なります。 |
オプションのコマンド(ip http secure-client-auth )を使用すると、HTTPS サーバがクライアントからの X.509v3 証明書を要求します。クライアントの認証は、サーバ自身の認証よりも高いセキュリティを提供します。
CipherSuite
CipherSuite は暗号化アルゴリズムおよびダイジェスト アルゴリズムを指定して、SSL 接続に使用します。HTTPS サーバに接続すると、クライアントの Web ブラウザは、サポート対象の CipherSuite のリストを提供します。その後クライアントとサーバは、両方でサポートされている暗号化アルゴリズムで最適なものをリストから選択してネゴシエートします。たとえば、Netscape Communicator 4.76 は、米国のセキュリティ(RSA 公開キー暗号 MD2、MD5、RC2-CBC、RC4、DES-CBC、および DES-EDE3-CBC)をサポートしています。
最適な暗号化には、128 ビット暗号化をサポートするクライアント ブラウザ(Microsoft Internet Explorer バージョン 5.5 以降または Netscape Communicator バージョン 4.76 以降など)が必要です。SSL_RSA_WITH_DES_CBC_SHA CipherSuite は、128 ビット暗号化を提供しないため、他の CipherSuite よりもセキュリティが低くなります。
CipherSuite は、よりセキュリティが高く、複雑になればなるほど、わずかですが処理時間が必要になります。次に、スイッチでサポートされる CipherSuite およびルータの処理負荷(速さ)による CipherSuite のランク(速い順)を定義します。
-
SSL_RSA_WITH_DES_CBC_SHA:メッセージの暗号化に DES-CBC、およびメッセージダイジェストにセキュア ハッシュ アルゴリズム(SHA)を使用した RSA のキー交換(RSA 公開キー暗号化)
-
SSL_RSA_WITH_NULL_SHA:メッセージの暗号化に NULL、およびメッセージ ダイジェストに SHA を使用したキー交換(SSL 3.0 専用)。
-
SSL_RSA_WITH_NULL_MD5:メッセージの暗号化に NULL、およびメッセージ ダイジェストに MD5 を使用したキー交換(SSL 3.0 専用)。
-
SSL_RSA_WITH_RC4_128_MD5:RC4 128 ビット暗号化、およびメッセージ ダイジェストに MD5 を使用した RSA のキー交換
-
SSL_RSA_WITH_RC4_128_SHA:RC4 128 ビット暗号化、およびメッセージ ダイジェストに SHA を使用した RSA のキー交換
-
SSL_RSA_WITH_3DES_EDE_CBC_SHA:メッセージの暗号化に 3DES と DES-EDE3-CBC、およびメッセージ ダイジェストに SHA を使用した RSA のキー交換(RSA 公開キー暗号化)
-
SSL_RSA_WITH_AES_128_CBC_SHA:AES 128 ビット暗号化、およびメッセージダイジェストに SHA を使用した RSA のキー交換(SSL 3.0 専用)。
-
SSL_RSA_WITH_AES_256_CBC_SHA:AES 256 ビット暗号化、およびメッセージダイジェストに SHA を使用した RSA のキー交換(SSL 3.0 専用)。
-
SSL_RSA_WITH_AES_128_CBC_SHA:AES 128 ビット暗号化、およびメッセージダイジェストに SHA を使用した RSA のキー交換(SSL 3.0 専用)。
-
SSL_RSA_WITH_AES_256_CBC_SHA:AES 256 ビット暗号化、およびメッセージダイジェストに SHA を使用した RSA のキー交換(SSL 3.0 専用)。
(注) |
Chrome の最新バージョンは 4 つの元の暗号スイートをサポートしません。そのため、Web GUI とゲスト ポータル両方へのアクセスが拒否されます。 |
(暗号化およびダイジェスト アルゴリズムをそれぞれ指定して組み合わせた)RSA は、SSL 接続においてキーの生成および認証の両方に使用されます。これは、CA のトラストポイントが設定されているかどうかにかかわりません。
SSL のデフォルト設定
SSL のデフォルト設定は次のとおりです。
-
標準の HTTP サーバはイネーブルに設定されています。
-
SSL はイネーブルに設定されています。
-
CA のトラストポイントは設定されていません。
-
自己署名証明書は生成されていません。
SSL の設定時の注意事項
SSL をスイッチ クラスタで使用すると、SSL セッションがクラスタ コマンダで終了します。クラスタ メンバのスイッチは標準の HTTP で動作させる必要があります。
CA のトラストポイントを設定する前に、システム クロックが設定されていることを確認してください。クロックが設定されていないと、不正な日付により証明書が拒否されます。