HTTPS通信を行うためのドメインがなかったので、OpenSSLで自己証明書を作成しました。
OpenSSLのインストール
まずOpenSSLというツールをインストールします。
こちらの記事を参考に以下のことを行いました。
・OpenSSLのインストーラーをダウンロード(今回はWin64 OpenSSL v3.4.1のEXEをダウンロードしました)
・Visual C++再配布パッケージのインストール
・インストーラーを起動し、インストール
・環境変数にopenssl.exeへのパスを登録
・バージョン確認
以下のように実行してエラーが出る場合は管理者権限でコマンドプロンプトを実行すると上手くいくかもしれません。(私がそうでした)
自己証明書の作成
1.秘密鍵の作成
openssl genrsa -out server.key 2048
2048ビットのRSA秘密鍵を生成し、server.keyファイルに保存しています。
実行して以下のようなエラーが出る場合は管理者権限でコマンドプロンプトを実行すると上手くいくかもしれません。(私がそうでした)
C:\>openssl genrsa -out server.key 2048
genrsa: Can't open "server.key" for writing, Permission denied
2.証明書署名要求(CSR)の作成
openssl req -new -key server.key -out server.csr
実行すると以下のような情報の入力を求められます。
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 []:
A challenge password []:
An optional company name []:
・Country Name (国コード): 例えば「JP」
・State or Province Name (都道府県): 例えば「Tokyo」
・Locality Name (市区町村): 例えば「Minato-ku」
・Organization Name (組織名): 例えば「My Company」
・Organizational Unit Name (部署名): 例えば「IT Department」
・Common Name (サーバー名/ドメイン名): 例えば「example.com」や「localhost」
・Email Address (メールアドレス): 任意
・A challenge password (チャレンジパスワード): 空欄でも可
・An optional company name (任意の会社名): 空欄でも可
3.自己証明書の作成
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
作成した秘密鍵とCSRから365日間有効な自己証明書が生成されます。
4.確認
以下2つのコマンドの実行結果を比較して同じ出力であれば、秘密鍵と証明書が対応していることが確認できます。
openssl x509 -in server.crt -noout -modulus | openssl md5
openssl rsa -in server.key -noout -modulus | openssl md5
server.crtやserver.keyなどの作成されたファイルはコマンドを実行したディレクトリに保存されています。
ファイルの中身が以下のような形式になっていたらOKです。
-----BEGIN PRIVATE KEY-----
~
~
~
-----END PRIVATE KEY-----