6.2. ローカル証明書の作成
この手順に従って、次のタスクを実行します。
- OpenSSL 認証局の生成
- 証明書署名リクエストの作成
以下の手順は、テスト目的のみを想定しています。ローカルの自己署名証明局により生成される証明書は、AD、IdM、または RHCS 認証局を使用する場合と同じように安全ではありません。ホストがドメインに含まれていない場合でも、企業の認定機関が生成した証明書を使用する必要があります。
手順
証明書を生成するディレクトリーを作成します。以下に例を示します。
mkdir /tmp/ca cd /tmp/ca
# mkdir /tmp/ca # cd /tmp/ca
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 証明書を設定します (このテキストは、
ca
ディレクトリーのコマンドラインにコピーします)。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下のディレクトリーを作成します。
mkdir certs crl newcerts
# mkdir certs crl newcerts
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下のファイルを作成します。
touch index.txt crlnumber index.txt.attr
# touch index.txt crlnumber index.txt.attr
Copy to Clipboard Copied! Toggle word wrap Toggle overflow シリアルファイルに番号 01 を書き込みます。
echo 01 > serial
# echo 01 > serial
Copy to Clipboard Copied! Toggle word wrap Toggle overflow このコマンドは、シリアル番号内に 01 を書き込みます。これは証明書のシリアル番号です。この CA によってリリースされる新しい証明書ごとに、数が 1 つ増えます。
OpenSSL root CA キーを作成します。
openssl genrsa -out rootCA.key 2048
# openssl genrsa -out rootCA.key 2048
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 自己署名 root 認証局証明書を作成します。
openssl req -batch -config ca.cnf \ -x509 -new -nodes -key rootCA.key -sha256 -days 10000 \ -set_serial 0 -extensions v3_ca -out rootCA.crt
# openssl req -batch -config ca.cnf \ -x509 -new -nodes -key rootCA.key -sha256 -days 10000 \ -set_serial 0 -extensions v3_ca -out rootCA.crt
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ユーザー名のキーを作成します。
openssl genrsa -out example.user.key 2048
# openssl genrsa -out example.user.key 2048
Copy to Clipboard Copied! Toggle word wrap Toggle overflow このキーは、セキュリティーが保護されていないローカルシステムで生成されるため、キーがカードに格納されると、キーがシステムから削除されます。
キーはスマートカードで直接作成できます。これを行う場合は、スマートカードの製造元が作成した手順に従います。
証明書署名リクエスト設定ファイルを作成します (このテキストを ca ディレクトリーでコマンドラインにコピーします)。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow example.user 証明書用の証明書署名リクエストを作成します。
openssl req -new -nodes -key example.user.key \ -reqexts req_exts -config req.cnf -out example.user.csr
# openssl req -new -nodes -key example.user.key \ -reqexts req_exts -config req.cnf -out example.user.csr
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 新しい証明書を設定します。有効期限は 1 年に設定されています。
openssl ca -config ca.cnf -batch -notext \ -keyfile rootCA.key -in example.user.csr -days 365 \ -extensions usr_cert -out example.user.crt
# openssl ca -config ca.cnf -batch -notext \ -keyfile rootCA.key -in example.user.csr -days 365 \ -extensions usr_cert -out example.user.crt
Copy to Clipboard Copied! Toggle word wrap Toggle overflow この時点で、認証局と証明書が正常に生成され、スマートカードにインポートできる状態になります。