

Windowsでローカル開発専用SSL証明書を発行する基本的なやり方は下記通りですが、ブラウザーは証明書に信用したくないままです。

[![画像の説明をここに入力](https://i.stack.imgur.com/GYJou.png)](https://i.stack.imgur.com/GYJou.png)

行った行動を論述します。

## 段階１ OpenSSLで証明書を発行

OpenSSLはWindowsに入ってませんから、Git Bashから実行します。

[code]

    openssl req -newkey rsa:2048 -new -nodes -x509 -days 3650 -keyout key.pem -out cert.pem
    
[/code]

[![画像の説明をここに入力](https://i.stack.imgur.com/ubGrz.png)](https://i.stack.imgur.com/ubGrz.png)

入力した情報は

[code]

    Country Name (2 letter code) [AU]:JP
    State or Province Name (full name) [Some-State]:Tokyo
    Locality Name (eg, city) []:Tokyo
    Organization Name (eg, company) [Internet Widgits Pty Ltd]:Yamato Daiwa
    Organizational Unit Name (eg, section) []:Development
    Common Name (e.g. server FQDN or YOUR name) []:localhost
    Email Address []:tokugawa.takesi@gmail.com
    
[/code]

## 段階２ centmgrからの操作

「信頼されたルート証明書機関」へインポートします。

[![画像の説明をここに入力](https://i.stack.imgur.com/GAfjn.png)](https://i.stack.imgur.com/GAfjn.png)

下図、次へ進む事しかできません。

[![画像の説明をここに入力](https://i.stack.imgur.com/CI8bs.png)](https://i.stack.imgur.com/CI8bs.png)

ファイルパスを指定します。「.pem」形式はWindowsにより期待されないようなので、ファイルを表示させるには、ファイルピッカーで「全てのファイル」を事前に指定しなければいけません。

[![画像の説明をここに入力](https://i.stack.imgur.com/gnbUP.png)](https://i.stack.imgur.com/gnbUP.png)

「信頼されたルート証明機関」へ配置します。

[![画像の説明をここに入力](https://i.stack.imgur.com/Lzptl.png)](https://i.stack.imgur.com/Lzptl.png)

確認モーダルで「OK」をクリックしたら、手順が完了なはずです。

[![画像の説明をここに入力](https://i.stack.imgur.com/sqtyz.png)](https://i.stack.imgur.com/sqtyz.png)

上記の手順に漏れた行動は何ですか？


CC BY-SA 4.0
2023-06-03T05:40:15.483
95083
2023-06-04T04:18:23.463
2023-06-04T02:51:58.030
16876
16876
question
windows https openssl
Windowsでローカル開発専用SSL証明書を発行する方法


証明書はただ存在すればいいというものではありません。

>
[code]

>     Common Name (e.g. server FQDN or YOUR name) []:localhost
>  
[/code]

と入力して作成された証明書は `https://localhost/` のアドレスの正当性を証明するものとなります。

他方、ブラウザーのエラーメッセージには「 **127.0.0.1** では、～」と表示されています。証明書とは異なる
`https://127.0.0.1/` でアクセスされたのでしょうか？

ここまでの説明で分かると思いますが、

  * 証明書が証明するアドレス
  * ブラウザーがアクセスするアドレス

を一致させる必要があります。この場合の一致とは、ネットワーク的な一致ではなく文字列としての一致です。


CC BY-SA 4.0
2023-06-04T03:14:59.300
95097
2023-06-04T04:18:23.463
2023-06-04T04:18:23.463
4236
4236
95083
answer