以前の記事でApacheでWebサーバを構築したが、SSL通信(https)の機能を試してみる。ここ最近GoogleもSSL対応を推奨しているようで、お家サーバもSSL対応の検討していく。
Ubuntu 16.04 LTS Serverでは、SSL通信を行うぶんには、Apacheのインストール時にサンプルのSSL証明書が自動的に作成されるので、サービスを有効するだけで利用できるようになっている。
【Ubuntu 16.04 LTS Server】Webサーバ「Apache2」を使う
Webページ(ホームページ)サーバ「Apache」を稼働させる。 インストール $ sudo apt install apache2 Webブラウザで、サーバのIPアドレスを入力し動作確認 「Ubuntu default page」が表示さ...
Apacheの設定
SSLモジュールとバーチャルホストの有効化
$ sudo a2enmod ssl
$ sudo a2ensite default-ssl
$ sudo service apache2 restart
nmapで通信ポートの確認
$ nmap localhost
Starting Nmap 7.01 ( https://nmap.org ) at 2017-03-18 16:24 JST
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00029s latency).
Other addresses for localhost (not scanned): ::1
Not shown: 988 closed ports
PORT STATE SERVICE
80/tcp open http
443/tcp open https
443ポートがオープンされている。これで、サンプルのSSL証明書でのSSL通信が可能になっている。
Webブラウザからhttps://[サーバIP]でアクセス
Firefoxでの画面例。サンプル証明書なので、下記のような警告画面が出るが例外登録し表示できるようにする。
「エラー内容」ボタンを押す
警告内容を確認し、「例外を追加…」ボタンを押すと下記画面になる。
「セキュリティ例外を承認」ボタンを押す
これで、HTTPS://
でWebページが表示できた。
補足
- Webブラウザで例外登録すると、以降は警告はでない。
- 私的に使う分には、このサンプルのSSL証明(オレオレ証明書)でいいかもしれないが、公にインターネットに公開するには、正式なSSL証明書を取得する必要がある。
http://
とhttps://
は別のバーチャルホストで動作しているので、別のページを表示する事も可能。
コメント