IIS&ASP.NET開発環境でのhttps動作確認手順まとめ
※前提:IIS & ASP.NETのサイト
1、OpenSSL をダウンロードする
Shining Light Productions - Win32 OpenSSL
※今回はWin64OpenSSL_Light-1_0_2a.exeをインストール
2、環境変数を設定
「Path」の最後に「;C:\OpenSSL-Win64\bin」を追加
「システム環境変数」の「新規」を押下して「C:\OpenSSL-Win64\bin\openssl.cfg」を入力してOKをクリック
※「C:\OpenSSL-Win64\bin」は任意
3、証明書の発行要求
※一般名:https://でアクセスする予定の名称を指定
4、サーバー証明書の発行
C:\testに移動(ここで証明証を発行する)
①opensslコマンド実行
②秘密鍵作成コマンド実行
genrsa -des3 -out server.key 1024
③任意のパスフレーズを入力
④パスフレーズを再入力
パスフレーズを設定を後の作業の簡略化のため、解除コマンド実行
rsa -in server.key -out server.key
証明書発行コマンド実行
x509 -in testsite.txt -out testsite.crt -req -signkey server.key -days 3650
※x509 -in [証明書の発行要求ファイル] -out [出力するファイル] -req -signkey [秘密鍵ファイル] -days 3650
①IISではpkcs12形式に変換する必要があるため、下記コマンド実行
pkcs12 -export -in testsite.crt -inkey server.key -out testsite.pkcs12
※pkcs12 -export -in [作成した証明書ファイル] -inkey [秘密鍵ファイル] -out [出力するファイル名]
②Export Password:空白のままエンター
③Verifying - Enter Export Password:空白のままエンター
5、サーバー証明書のインポート
6、IISにサイト追加
ポート:作成者のローカル端末の443ポートは別プロセスが動いてるため、444を利用。特に問題なければ443のままでOK。
ホスト名:「ドメイン」形式の証明書の場合、証明書のドメイン名がホスト名に当てはまるためホスト名の入力が出来ない。
7、動作確認
証明書エラーは表示されるけど、意図したサイトは表示される。
以下、この証明書エラーの回避方法。
①IEの「インターネットオプション>コンテンツ>証明証」をクリック
②「信頼された証明機関」の「インポート」をクリック
パスワードは解除したので、下記のままで「次へ」をクリック
httpsでエラーなく表示される
アドレスバーの鍵マークをクリックするとなんちゃって証明書の確認も出来る
以上