事前に RaspberryPi/証明書/環境構築 を実施してください。 ★基本的にサーバー証明書の生成と同じですが、 最後に、クライアント証明書を利用するための、pkcs12 形式のファイルを生成します。
openssl genrsa -sha256 -out private/privkey.pem 2048
INPUT | - |
OUTPUT | private/privkey.pem |
オプションの詳細については、下記コマンドで確認ください。
openssl genrsa --help
openssl req -new -config conf/openssl.cnf \ -key private/privkey.pem \ -days 730 \ -sha256 \ "/C=JP/O=Ehobby/CN=ehobby.jp" \ -out request.csr
INPUT | private/privkey.pem |
OUTPUT | request.csr |
※CNには、ドメイン名を指定します。
オプションの詳細については、下記コマンドで確認ください。
openssl req --help
openssl ca -config conf/openssl.cnf \ -extfile conf/openssl_client.cnf \ -extensions sign_client \ -md sha256 \ -policy policy_match \ -days 730 \ -out client.pem \ -infiles request.csr
openssl x509 -inform pem -in client.pem \ -outform der -out client.crt
INPUT | request.csr |
OUTPUT | client.pem , client.crt |
オプションの詳細については、下記コマンドを確認ください。
openssl ca --help
openssl pkcs12 -export \ -in client.pem \ -inkey private/privkey.pem \ -out client.p12 \ -name "<任意の名前>"
cat rootca.pem ca.pem > chain.pem
SSLCACertificateFile /var/lib/ssl/ca/chain.pem $ <- 認証局の証明書ファイル SSLCARevocationFile /var/lib/ca/crl/latestcrl.crl # <- CRLのファイルパス <Directory 【クライアント認証が必要なパス】> SSLRequreSSL SSLVerifyClient require SSLVerifyDepth 10 </Directory>