岡田良介
6月 20, 2016

中間CA証明書(多段証明書)を オレオレ証明書仕様でつくる

いわゆるチェーン証明書は商用のデジタル証明書では結構使われている。
しかし、オレオレ仕様での発行方法はあまり記載されていない。情報も少ないのだがうまくいったので、記録として書いておく。

大枠はこうである

1.自分専用のチェーン認証局を自分で設定してつくる

2.普通にOpenSSLでオレオレデジタル証明書を作る

3.チェーン認証局でチェーン証明書を発行する

4.サーバに設定して終わり

==============

1.自分専用のチェーン認証局の作り方

A)認証局の基本設定ファイルの設定

ホームディレクトリにログオン(以下の作業はユーザ権限で$)
cp /etc/pki/tls/openssl.cnf ./

vi openssl.cnf             (以下の編集箇所を編集する)

dir = ../rootca

database = $dir/index.txt

new_certs_dir = $dir/newcerts

certificate = $dir/rootca.crt

serial = $dir/serial

private_key = $dir/rootca.key

x509_extensions = そのまま

※dir と privatekey の行を修正する

B)必要なディレクトリ類をつくる

$ mkdir conf tmp

$ mv ./openssl.cnf ./conf/

$ touch tmp/index.txt tmp/serial

$ echo “01” > serial              (これをしないとエラーがでる)

$ mkdir tmp/newcerts

$ mkdir ca1

2.一段階目のデジタル証明を作る

openssl req -new -keyout rootca.key -out rootca.csr

※いろいろ聞いてきますが適切に入力してください。急いでいるときは適当でもいいでしょう。

※産総研の証明書オタクに怒られるかもしれませんが、その時は謝って教えてもらってください(笑)

openssl rsa -in rootca.key -out rootca.key

openssl x509 -req -signkey rootca.key -in rootca.csr -out rootca.crt -days 36500

 

3.二段階目(チェーン証明書)証明書を作る

openssl req -new -keyout ca.key -out ca.csr

※いろいろ聞いてきますが適切に入力してください。急いでいるときは適当でもいいでしょう。

※産総研の証明書オタクに怒られるかもしれませんが、その時は謝って教えてもらってください(笑)

openssl rsa -in ca.key -out ca.key

openssl ca -policy policy_anything -config ../conf/openssl.cnf -out ca.crt -infiles ca.csr

4.デジタル証明書をリネームして必要なところに設定します。
cp rootca.crt server.crt

cp rootca.csr server.csr

cp rootca.key server.key

cp ca1/ca.crt server-chain.crt

server.crt と server.key と server-chain.crt  の3つが必要なファイルです。

デフォルトの /etc/httpd/conf/httpd.confの中にそれぞれ sever.??? でファイルが指定されているので

そのパスを変更するとそのパスの場所に上記のファイルをコピーしてください。

httpd.confともともとあった、server.??? のバックアップはかならず事前にとっておいてくださいね。

以上です。