はじめに
Webサイトを制作しているとローカル環境にWebサービスを立ち上げて動作確認することがあると思います。今回は、MacBookにUbuntuの仮想環境を作り、SSL通信のWebサービスを構築しました。
こちらのサイトを参考にさせていただきました。
詳しくは分かりませんが、オレオレSSL証明書なので、Chromeではつながらなかったです。Safariで動作確認を行いました。
構築環境
- MacBookPro MacOS:10
- VirtualeBox 6.0
- Ubuntu 18.04
- Apache 2.4
- Chrome 79.0
- Safari 13.0
#UbuntuにApacheをインストールする
まず、Apacheがインストールされているかを確認します。httpdもしくはapache2コマンドでApacheインストール有無の確認します。
$ httpd -v
Server version: Apache/2.4.29 (Ubuntu)
Server built: 2019-09-16T12:58:48
or
$ apache2 -v
Server version: Apache/2.4.29 (Ubuntu)
Server built: 2019-09-16T12:58:48
Apacheがインストールされていない場合は、Apacheをインストールしましょう。
$ sudo apt-get install apache2
次にApacheのSSLモジュールとデフォルトのSSLのサイトを有効化し、Apacheを再起動します。
$ sudo a2enmod ssl
$ sudo a2ensite default-ssl
$ sudo service apache2 restart
Apacheが443番ポートの待ち受け状態かどうかを確認します。
$ ss -lnt
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 :::80 :::*
LISTEN 0 128 :::443 :::*
SSLで通信を行うには、SSL証明書をサーバーにインストールしなければなりません。Ubuntuの場合、Apache2をインストールした時にSSL証明書が自動的に作成されて利用可能にな利ます。なんて便利で簡単なんだ!
動作確認
Webブラウザーからhttps://(サーバーのIPアドレス)にアクセスします。
最新のChromeではOCSPが無効のようで接続できませんでした。
SafariでWarningを許可してあげると繋がりました。
今回はここまで。これでhttpsでしか動作しない機能(メディアデバイスなど)をローカル環境で検証できそうです。