Raspberry PiのopensslでCA構築
Ubuntuで認証局を作って、SSL - 12/27/2015
以降、ちょびちょび修正してちゃんと使っていたのだが、その後、CAを構築するほどのことがなかったので、ほったらかしにしていたが、最近のプリンタとかも、管理画面にはいるのにhttpsを使って、かつ証明書を入れれるので、ちゃんと認証局CAを作って運用しようとしたら。結構かかったのでメモ。
https://qiita.com/3244/items/2a2a2dc6cd1e2e35beb9
https://qiita.com/bashaway/items/ac5ece9618a613f37ce5
https://qiita.com/cnloni/items/a8c9ae834a7d66f60d08
を参考
/etc/ssl/openssl.cnf の編集
[ CA_default ]
dir = ./demoCA
default_days = 3650
default_crl_days= 30
default_md = sha256 (SHA-2への移行対応)
509_extensions = usr_cert #多分もともと有効
[ req ]
req_extensions = v3_req #コメントアウトされているのを戻す
[ usr_cert ]
basicConstraints=CA:TRUE
nsCertType = server
subjectAltName = @alt_names # (3) 追加(「usr_cert」ディレクティブの最後に)
[ v3_ca ]
basicConstraints = CA:true
nsCertType = sslCA, emailCA
subjectAltName = @alt_names #[ v3_ca ] の一番最後
[ alt_names ]
DNS.1 = example.com
ip.1 = 192.168.0.1
認証局を作る
sudo openssl req -new -x509 -newkey rsa:2048 -out cacert.pem -keyout private/cakey.pem -days 3825
ルート証明書を作る
sudo openssl x509 -inform PEM -outform DER -in cacert.pem -out CAcert.der
CAcert.derをPCの証明書に登録する
サーバー証明書の発行
格納するためのディレクトリを作成
$ sudo mkdir -p /etc/ssl/www
cd www
鍵ペアと証明書要求(CSR)ファイルを作成します。
openssl req -new -keyout www_key.pem -out www_csr.pem
適当に情報を入力
作成が終わると以下のファイルができあがる。
www_csr.pem : サーバ証明書要求(CSR)
www_key.pem : サーバ秘密鍵
のような感じ
sudo openssl ca -out www_cert.pem -infiles www_csr.pem
パスフレーズを削除
sudo openssl rsa -in www_key.pem -out www_key.pem.nopass
sudo chmod 644 www_key.pem www_key.pem.nopass
以下のコマンドで確認。
sudo openssl x509 -text -in www_cert.pem
www_key.pem.nopassとwww_cert.pemをダウンロード
PKCS #12 形式の作成
sudo openssl pkcs12 -export -inkey www_key.pem.nopass -in www_cert.pem -out www.pfx
コメント
コメントを投稿