自己署名デジタル証明書
自己署名デジタル証明書について学習し、自己署名デジタル証明書を管理する方法について説明します。
自己署名証明書は、認証局 (CA) ではなく、作成者と同じエンティティによって署名された証明書です。Junos OS では、自動生成と手動生成の 2 つの方法で自己署名証明書を生成できます。
自己署名証明書
自己署名証明書は、認証局(CA)ではなく、作成者によって署名された証明書です。
自己署名証明書を使用すると、ユーザーまたは管理者が CA によって署名された ID 証明書を取得するというかなりの作業を行う必要なく、SSL ベース (Secure Sockets Layer) サービスを使用できます。
自己署名証明書は、CA によって生成される証明書のように追加のセキュリティを提供しません。これは、接続先のサーバーが証明書でアドバタイズされているサーバーであることをクライアントが確認できないためです。
Junos OS では、自己署名証明書を生成する方法を 2 種類提供しています。
-
自動生成
この場合、証明書の作成者はジュニパーネットワークスのデバイスです。自動生成された自己署名証明書は、デフォルトでデバイス上で設定されます。
デバイスが初期化されると、自動的に生成された自己署名証明書が存在するかどうかを確認します。見つからない場合、デバイスはそれを生成し、ファイルシステムに保存します。
-
手動生成
この場合、デバイスの自己署名証明書を作成します。
CLIを使用して、いつでも自己署名証明書を生成できます。これらの証明書は、SSL サービスにアクセスするためにも使用されます。
自己署名証明書は、生成時から 5 年間有効です。
自動生成された自己署名証明書を使用すると、CA によって署名された ID 証明書を管理者が取得しなくても、SSL ベースのサービスを使用できます。
デバイスによって自動的に生成される自己署名証明書は、セキュアシェル(SSH)ホストキーに似ています。これは、設定の一部としてではなく、ファイル システムに保存されます。これは、デバイスが再起動されても保持され、 request system snapshot
コマンドが発行されても保持されます。
手動で生成した自己署名証明書を使用すると、CA によって署名された ID 証明書を取得しなくても、SSL ベースのサービスを使用できます。手動で生成された自己署名証明書は、公開鍵基盤 (PKI) ローカル証明書の一例です。すべてのPKIローカル証明書に当てはまるように、手動で生成された自己署名証明書はファイルシステムに保存されます。
例: 公開鍵と秘密鍵のペアの生成
この例では、公開鍵と秘密鍵のペアを生成する方法を示しています。
必要条件
この機能を設定する前に、デバイス初期化以外の特別な設定を行う必要はありません。
概要
この例では、self-cert という名前の公開鍵と秘密鍵のペアを生成します。
構成
プロシージャ
手順
公開鍵と秘密鍵のペアを生成するには、次のようにします。
-
証明書キーペアを作成します。
user@host> request security pki generate-key-pair certificate-id self-cert
検証
公開鍵と秘密鍵のペアが生成されると、Juniper Networks デバイスには次のように表示されます。
generated key pair ca-ipsec, key size 1024 bits
例:自己署名証明書の手動生成
この例では、自己署名証明書を手動で生成する方法を示しています。
必要条件
開始する前に、公開秘密キーのペアを生成します。 「デジタル証明書」を参照してください。
概要
手動で生成された自己署名証明書の場合は、作成時に識別名(DN)を指定します。自動生成された自己署名証明書の場合、システムは DN を提供し、自身を作成者として識別します。
この例では、電子メール アドレスを mholmes@example.net
として自己署名証明書を生成します。Web 管理で参照される self-cert の証明書 ID を指定します。
構成
プロシージャ
手順
自己署名証明書を手動で生成するには、運用モードで以下のコマンドを入力します。
user@host> request security pki local-certificate generate-self-signed certificate-id self-cert subject CN=abc domain-name example.net ip-address 172.16.3.4 email mholmes@example.net
Web 管理 HTTPS サービス用に手動で生成された自己署名証明書を指定するには、設定モードで次のコマンドを入力します。
[edit] user@host# set system services web-management https local-certificate self-cert
検証
証明書が正しく生成され、読み込まれていることを確認するには、運用モードで次のコマンドを入力します。
user@host> show security pki local-certificate
表示された出力に、Issued to
、validity
、algorithm
、およびkeypair location
の詳細に関するCertificate identifier
情報に注目してください。
Web 管理に関連付けられている証明書を確認するには、構成モードで次のコマンドを入力します。
user@host# show system services web-management https local-certificate
自動生成された自己署名証明書の使用(CLI手順)
デバイスが初期化されると、自己署名証明書の存在が確認されます。自己署名証明書が存在しない場合は、デバイスが自動的に生成します。デバイスが再起動されると、起動時に自己署名証明書が自動的に生成されます。
システムによって生成された証明書を確認するには、以下のコマンドを動作モードで実行します。
user@host> show security pki local-certificate system-generated
出力の Certificate identifier
の詳細に注目してください。自動生成された証明書の次の詳細識別名(DN)が表示されます。
-
CN = device serial number
-
CN = system generated
-
CN = self-signed
設定モードで次のコマンドを使用して、Web 管理の HTTPS サービスに使用する自動生成された自己署名証明書を指定します。
[edit] user@host# set system services web-management https system-generated-certificate
次の操作コマンドを使用して、自動生成された自己署名証明書を削除します。
user@host# exit user@host> clear security pki local-certificate system-generated
システムによって生成された自己署名証明書を削除すると、デバイスは新しい証明書を自動的に生成し、ファイル システムに保存します。