はじめに
OpenSSLでオレオレ証明書を作成してみました。
流れ
- 秘密鍵(Private Key)を作成
- 証明書署名要求(CSR)を作成
- 自己署名証明書(CRT)を作成
- PFXファイル作成
1. 秘密鍵(Private Key)を作成
以下のコマンドを実行して秘密鍵(Private Key)を作成します。
$ openssl genrsa 2048 > {鍵ファイル名}.key
2. 証明書署名要求(CSR)を作成
作成した秘密鍵を使って、
以下のコマンドを実行して証明書署名要求(CSR)を作成を開始します。
$ openssl req -new -key {鍵ファイル名}.key > {CSRファイル名}.csr
コマンドを実行すると以下のように情報入力項目が表示されますが、オレオレ証明書であればすべてEnterで進んでも良いです。
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]:
State or Province Name (full name) [Some-State]:
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:
Email Address []:
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
3. 自己署名証明書(CRT)を作成
今まで作成した秘密鍵と証明書署名要求を使って、
以下のコマンドを実行することで自己署名証明書(CRT)を作成します。
有効期間は3650日(10年)にしました。
openssl x509 -days 3650 -req -signkey {鍵ファイル名}.key < {CSRファイル名}.csr > {CRTファイル名}.crt
4. PFXファイル作成
今まで作成した秘密鍵と自己署名証明書を使って、
以下のコマンドを実行することでPFXファイル(PKCS#12ファイル)を作成します。
$ openssl pkcs12 -export -inkey {鍵ファイル名}.key -in {CRTファイル名}.crt -out {PFXファイル名}.pfx