XAMPPのローカル環境でhttps通信を行う方法です。
(確認環境:Windows 10,Google Chrome,xampp)
目次
サンプル | httpd-ssl.confに追記する |
openssl2.cnfを作成する | |
opensslコマンドでサーバ証明書と秘密鍵を作成する | |
サーバ証明書をインストールする | |
xamppとGoogle Chromeでhttps通信を行う |
httpd-ssl.confに追記する
1.httpd-ssl.confの末尾に以下を追記します。
D:\xampp\apache\conf\extra\httpd-ssl.conf
<VirtualHost *:1443>
DocumentRoot "D:\xampp\htdocs\virtual-test1"
ServerName test
SSLEngine on
SSLCertificateFile "conf/ssl.crt/test-server7.crt"
SSLCertificateKeyFile "conf/ssl.key/test-server7.key"
</VirtualHost>
※1443でListenしています。httpd-ssl.confでListen 1443にしています。
openssl2.cnfを作成する
1.openssl.cnfをコピーしてopenssl2.cnfを作成し末尾に以下を追加します。
D:\xampp\apache\conf\openssl2.cnf
[ SAN ]
subjectAltName = @alt_names
[ alt_names ]
DNS.1 = test-server7
opensslコマンドでサーバ証明書と秘密鍵を作成する
1.Git Bash(※)を起動しD:\xampp\apache\confに移動して以下のopensslコマンドを実行します。
openssl req \
-newkey rsa:2048 \
-keyout test-server7.key \
-x509 \
-nodes \
-out test-server7.crt \
-subj "//CN=test-server7" \
-reqexts SAN \
-extensions SAN \
-config openssl2.cnf \
-days 3650
2.作成されたサーバ証明書(test-server7.crt)を以下に移動します。
D:\xampp\apache\conf\ssl.crt
3.作成された秘密鍵(test-server7.key)を以下に移動します。
D:\xampp\apache\conf\ssl.key
サーバ証明書をインストールする
1.サーバ証明書がある場所へ移動し、サーバ証明書をダブルクリックします。
D:\xampp\apache\conf\ssl.crt\test-server7.crt
2.「証明書のインストール」をクリックします。
2.「現在のユーザー」で次へをクリックします。
3.「証明書をすべて次のストアに配置する」にチェックを入れ「参照」を押します。
4.「信頼されたルート証明機関」を選択しOKを押して、元のダイアログに戻り「次へ」をクリックします。
5.確認画面がでるので「完了」をクリックします。
6.セキュリティ警告が出るので「はい」をクリックします。
7.正しくインポートされましたと表示されます。
xamppとGoogle Chromeでhttps通信を行う
1.xamppのapacheを起動します。Chromeは新規でブラウザを立ち上げます。
2.ブラウザのURLにhttps://test-server7:1443を入力するとhttps通信の鍵マークが表示されます。
証明書の有効期限が切れていた場合は、以下のように表示されます。
httpsではなくhttpで接続した場合は、以下のように注意マークが表示されます。
注意マークをクリックすると以下のメッセージが表示されます。
関連の記事