Last modified 2 weeks ago
OpenSSLメモ
ホスト名のaliasに対応した証明書
ここ参照
証明書の作成
秘密鍵と自己証明書の作成。サーバ証明書、クライアント証明書ともこのコマンド一発で作成できる。単に通信路の暗号化するだけなら、これで十分。
$ openssl.exe req -nodes -new -x509 -keyout server.key -out server.crt Loading 'screen' into random state - done Generating a 1024 bit RSA private key ...........................................++++++ ............++++++ writing new private key to 'server-key.pem' Enter PEM pass phrase: [パスワード入力] Verifying - Enter PEM pass phrase: [パスワード入力(確認用)] ----- 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]:JP [日本の国コードJPを入力] State or Province Name (full name) [Some-State]:Kanagawa [証明書保有者の県名を入力] Locality Name (eg, city) []:Kamakura [市名を入力] Organization Name (eg, company) [Internet Widgits Pty Ltd]:[所属組織名(会社名、団体名)等を入力] Organizational Unit Name (eg, section) []: [所属組織における部署を入力] Common Name (eg, YOUR name) []:Taro Okamoto [保有者の名前を入力] Email Address []:taro@gmail.com [メールアドレスを入力] $
これで、server.key(秘密鍵)とserver.crt(証明書)が作成される。
パスワード証明書の作成
上記の手順で作成した秘密鍵を利用するには、パスワードが必要となります。Apacheで利用すると、Apacheを起動する都度パスワードの入力が必要です。今度は、パスワード無しの秘密鍵とそれをもとに自己証明書を作成してみましょう。
$ openssl genrsa -out server.key 1024 Loading 'screen' into random state - done Generating RSA private key, 1024 bit long modulus ...................++++++++++++ ..............................++++++++++++ e is 65537 (0x10001) $ openssl.exe req -nodes -new -x509 -batch -key server.key -out server.crt ...
これでパスワード無しの秘密鍵と自己証明書が作成できます。今度は-batchオプションを付けているため、証明書の保有者情報は全て空欄で証明書が作成されます。
証明書の確認
$ openssl s_client -connect yuna.ultimania.org:443 </dev/null 2>/dev/null | openssl x509 -noout -text Certificate: Data: Version: 3 (0x2) Serial Number: 04:0b:a4:f8:d5:5e:e0:92:a4:53:fc:9c:53:f1:b4:f6:d5:ba Signature Algorithm: sha256WithRSAEncryption Issuer: C = US, O = Let's Encrypt, CN = R11 ★発行者 Validity Not Before: Nov 12 04:22:58 2024 GMT Not After : Feb 10 04:22:57 2025 GMT Subject: CN = ultimania.org Subject Public Key Info: ... X509v3 extensions: X509v3 Key Usage: critical Digital Signature, Key Encipherment X509v3 Extended Key Usage: TLS Web Server Authentication, TLS Web Client Authentication X509v3 Basic Constraints: critical CA:FALSE X509v3 Subject Key Identifier: 71:34:2D:CC:B9:53:C7:AE:6D:FF:EB:95:E3:99:D4:3F:3D:3D:57:7F X509v3 Authority Key Identifier: C5:CF:46:A4:EA:F4:C3:C0:7A:6C:95:C4:2D:B0:5E:92:2F:26:E3:B9 Authority Information Access: OCSP - URI:http://r11.o.lencr.org CA Issuers - URI:http://r11.i.lencr.org/ X509v3 Subject Alternative Name: ★証明書のドメイン DNS:alminium.ultimania.org, DNS:drive.ultimania.org, DNS:kanon.ultimania.org, DNS:test.ultimania.org, DNS:ultimania.org, DNS:yuna.ultimania.org X509v3 Certificate Policies: Policy: 2.23.140.1.2.1 CT Precertificate SCTs: Signed Certificate Timest
証明書タイプの見分け方
■ドメイン証明書
Subject: CN = ultimania.org
CNがドメイン名のみ。
■企業認証証明書
Subject: C = US, ST = WA, L = Redmond, O = Microsoft Corporation, CN = microsoft.com
所在地、組織情報が入っている。
■EVSSL
Issuer: C = GB, ST = Greater Manchester, L = Salford, O = Sectigo Limited, CN = Sectigo RSA Extended Validation Secure Server CA
IssuerにExtended Validation Secure ServerもしくはEV SSLが入っている。