改版履歴 |
版数 | 日付 | 内容 | 担当 |
V.1.1 | 2014/12/22 | 初版 | NII |
V.1.2 | 2015/5/15 | 中間CA証明書のファイル名を修正 | NII |
V.1.3 | 2015/12/11 | サーバ証明書設定について注釈を追加 | NII |
V.2.0 | 2018/2/26 | SHA1の記載内容の削除 | NII |
目次
1.事前準備
2.鍵ペアの生成とCSRの作成
2-1 鍵ペアの生成
2-2 CSRの生成
3.証明書の申請から取得まで
1.事前準備
鍵ペア・CSRを生成する前に、事前に以下の項目の準備をしてください。
事前準備 |
- 乱数生成用ファイルの準備(200KB程度のファイルであればどんなものでもかまいません) 本マニュアルではファイル名をrandfile1.txt、randfile2.txt、randfile3.txtとします。
- サーバ鍵ペア用私有鍵パスフレーズ<PassPhrase>(「2-1、2-2で使用」)
- サーバ DN(※サーバDNについては、本サービス証明書ポリシまたは、下記DNのルールをご確認ください)
- CSRファイル名は servername.csr としています。
|
CSRに記述するDNのルールは以下のとおりとなります。
DNのルール |
項目 | 指定内容の説明と注意 | 必須 | 文字数および注意点 |
Country(C) | 本認証局では必ず「JP」と設定してください。 例)C=JP | ○ | JP固定 |
State or Province Name(ST) | 本認証局では使用しないでください。 | × | |
Locality Name(L) | 本認証局では必ず「Academe」と設定してください。 例)L=Academe | ○ | Academe固定 |
Organization Name(O) | サービス参加申請時の機関名英語表記を設定してください。この情報は各所属機関の登録担当者にお問い合わせください。 例)O=National Institute of Informatics | ○ | 半角の英数字64文字以内 (記号は「'(),-./:=」と半角スペースのみ使用可能) |
Organizational Unit Name(OU) | 証明書を使用する部局等の名前を設定してください。 (この値は省略可能です) (この値は複数設定することが可能です。複数指定する方法につきましては、CSR作成時ご使用のアプリケーションのマニュアルをご確認ください。) 例)OU=Cyber Science Infrastructure Development Department | △ | ・半角の英数字64文字以内 (記号は「'(),-./:=」と半角スペースのみ使用可能) ・複数OUを指定する場合は、全体で64文字以内 |
Common Name(CN) | サーバ証明書URLに表示されるウェブ・サーバの名前をFQDNで設定してください。例えばSSL/TLSを行うサイトが https://www.nii.ac.jpの場合には、「www.nii.ac.jp」となります。FQDNにはサービス参加申請時に登録いただいた対象ドメイン名を含むFQDNのみ、証明書発行が可能となります。 例)www.nii.ac.jp | ○ | 証明書をインストールする対象サーバのFQDNで64文字以内 半角英数字、"."、"-"のみ使用可能。また、先頭と末尾に"."と"-"は使用不可 |
Email | 本認証局では使用しないでください。 | × | |
鍵長 |
RSA 2048bit |
○・・・必須 ×・・・入力不可 △・・・省略可
注意:証明書の更新を行う場合は、先に各手順の「サーバ証明書の置き換えインストール」をご確認ください。
2.鍵ペアの生成とCSRの作成
2-1 鍵ペアの生成
以下に鍵ペアの生成方法を記述します。
鍵ペアの作成 |
- 鍵ペアを生成するため、「1.事前準備」の手続き1で用意したファイル (200 KB 程度) を3つ選んでください。この手続きでは、 選択したファイルの名前を「randfile1.txt」、「randfile2.txt」、「randfile3.txt」として表記します。
用意したファイルを、作業ディレクトリに移動してください。 $mv <randfile1.txt> <randfile2.txt> <randfile3.txt> /etc/httpd/conf/ssl.key/ |
鍵ペアの作成を行うため、次のコマンドを入力してください。今回のコマンド例では、 作業ディレクトリに移動し、2048 bitの RSA 鍵ペアを生成し、「servername.key」という名前で保存することを示しています。 $cd /etc/httpd/conf/ssl.key/ ←作業ディレクトリへ移動してください $openssl genrsa -des3 -rand <randfile1.txt>:<randfile2.txt>:<randfile3.txt> 2048 > servername.key Generating RSA private key, 2048 bit long modulus ..............................++++++ ...............++++++ unable to write 'random state' e is 65537 (0x10001) Enter pass phrase: <PassPhrase> ←私有鍵パスフレーズ入力 Verifying - Enter pass phrase: <PassPhrase> ←私有鍵パスフレーズ再入力 |
重要: この鍵ペア用私有鍵パスフレーズは、サーバの再起動時および証明書のインストール等に必要となる重要な情報です。鍵ペア利用期間中は忘れることがないよう、また、情報が他人に漏れることがないよう、安全な方法で管理してください。
- 作成した鍵ペアのファイルを保存します。バックアップは外部媒体ディスク等に保存し、安全な場所に保存してください。
鍵ペアの中の私有鍵を利用すれば、お使いのウェブ・サーバがSSL/TLS で保護して送受信したデータを、解読することができてしまいます。 従って保存する鍵ペアファイルへのアクセス権は利用管理者自身とSSL/TLS サーバのプロセス等必要最小限になるよう設定してください。 またバックアップを保存した外部媒体ディスク等も利用管理者のみまたは同じ権限のある方のみ利用できる場所へ保管してください。 また、鍵ペア用私有鍵パスフレーズの管理も、確実に行ってください。鍵ペアファイルの紛失、鍵ペア用私有鍵パスフレーズ忘れ等が発生した場合、証明書のインストールが行えなくなります。 この場合、新たに証明書を申請しなおしていただくことになりますので、ご注意ください。
|
2-2 CSRの生成
鍵ペアが作成されたことを確認後、CSRを生成します。
CSRの作成 |
次のコマンドを入力し、CSRの作成を開始してください。パスフレーズの入力が求められますので、「2-1 鍵ペアの生成」の手続き3で作成した私有鍵のパスフレーズを入力してください。 コマンドでは、署名アルゴリズムSHA2でCSRを作成し、「servername.csr」(ファイル名は任意)というファイル名で保存することを示しています。
$openssl req –new –key servername.key –sha256 –out servername.csr ←CSRファイル名 Enter pass phrase for servername.key: <PassPhrase> ←私有鍵パスフレーズ入力 |
「-sha256」:署名アルゴリズムを示すオプション。 署名アルゴリズムSHA1でCSRを作成する場合は、「-sha1」に置き換えてください。
パスフレーズの入力に成功するとDN情報の問い合わせが行われますので、「1. 事前準備」の「DNルール」に従い、DN情報を入力してください。 OpenSSLでは必要ない項目を「.」ドットを入力することにより、省略することができます。 You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ---- Country Name (2 letter code) [AU]:JP ←"JP"を入力 State or Province Name (full name) []:. ←「.」ドットの入力 Locality Name (eg, city) [Default City]:Academe ←"Academe"を入力 Organization Name (eg, company) [Default Company Ltd]:National Institute of Informatics← 組織名を入力 Organizational Unit Name (eg, section) []:Cyber Science Infrastructure Development Department ←部局名を入力 Common Name (eg, your name or your server's hostname) []:www.nii.ac.jp ← サーバ名FQDN を入力 Email Address []:. ← 「.」ドットを入力 Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []:.← 「.」ドットを入力 An optional company name []:.← 「.」ドットを入力 |
要求された情報の入力が完了すると CSR が生成され、servername.csrに保存されます。なお、このファイルも、バックアップをとって、証明書を受領するまでは別途保管することをお勧めします。 ----BEGIN CERTIFICATE REQUEST---- MIIBhDCB7gIBADBFMQswCQYDVQQGEwJKUDEQMA4GA1UEBxMHQWNhZGVtZTEMMAoG 例 Um0E3vq8Ajg= ----END CERTIFICATE REQUEST---- |
以下のコマンドを入力することにより、CSRの内容を確認することができます。
$ openssl req -noout -text -in servername.csr Certificate Request: Data: Version: 0 (0x0) Subject: C=JP, L=Academe, O=National Institute of Informatics, OU=Cyber Science Infrastructure Development Department,CN=www.nii.ac.jp←CSR生成時に入力したDNと一致していることを確認してください。 Subject Public Key Info: Public Key Algorithm: rsaEncryption Public Key: (2048 bit)←鍵長が2048bitであることを確認してください。 Modulus: 00:c9:0e:99:5c:8a:4a:e3:b2:e2:0d:3d:60:4d:30: : 例 : ca:2e:56:f7:66:bd:01:44:ea:f3:ca:d2:f6:e0:5e: 6c:57:4b:65:e4:e7:f7:ca:dd Exponent: 65537 (0x10001) Attributes: a0:00 Signature Algorithm: sha256WithRSAEncryption← CSR生成時に指定した署名アルゴリズムで あることを確認してください。 署名アルゴリズムにsha1を指定した場合は「sha1WithRSAEncryption」と表示されます。 88:44:e5:27:06:02:ec:85:6c:29:6a:0f:a3:92:87:4e:e2:f1: : 例 |
|
3.証明書の申請から取得まで
CSRを作成後、登録担当者へ送付するための証明書発行申請TSVファイルを作成し申請します。
証明書発行申請TSVファイルの作成方法、申請方法等につきましては、「証明書自動発行支援システム操作手順書(利用管理者用)」をご確認ください。
証明書の発行が完了すると、本システムより以下のメールが送信されます。メール本文に記載された証明書取得URLにアクセスし、証明書の取得を実施してください。
証明書取得URLの通知 |
【件名】 Webサーバ証明書発行受付通知 ・・・・・ #以下に証明書の取得先が記述されています。 貴機関の登録担当者経由で発行申請をいただきましたサーバ証明書を配付いたします。 本日から1ヶ月以内に以下の証明書取得URLへアクセスし、サーバ証明書の取得を行ってください。 証明書取得URL: https://scia.secomtrust.net/~ ←左記URLにアクセスし証明書の取得を行ってください。 ・・・・・ |