見出し画像

ローカルNWのWebサーバをhttps化するための環境設定について(概要)

本記事では、会社内や自宅内のWebサーバをhttps化するための仕組みと環境設定について概要を紹介します。具体的手順は、別途、記事で紹介します。
最近のブラウザは、アクセス先のWebサーバがhttpsで配信されていないとセキュリティ上のメッセージが表示されたり、提供機能が制限されたりします。例えば、スマホの場合、カメラ操作などはできなくなります。今回紹介する内容は、Webサーバが社内(イントラネット)に設置されている場合や自宅にWebサーバを構築している場合に簡単にhttps化環境を構築したい方向けの情報です。一般的にhttps化をするためには、インターネット上のCA局に依頼して認証キーを取得する必要がありますが、そのとき、依頼先のCA局から構築するWebサーバと通信ができないと、動作しません。つまり、インターネット上に存在するWebサーバは、CA局と通信が可能ですが、ローカルネットワークは、プライベートIPアドレスで設定しているので、インターネットからは、アクセスできず、何らかの仕組みが必要です。DMZゾーンに転送する代理サーバを設置する案などがネットでも紹介されていますが、環境設定が少し難しいです。今回紹介する方式は、以下のようにインターネット上のCA局を利用せず、独自にCA局を作成してそこで作成した認証キーをアクセスするPCやスマホに配布する方法です。この方法だと、費用もかからないのでメリットも大きいです。

ローカルCA局はLinux上で構築しますが、WebサーバがLinuxならその上に構築しても動作します。ローカルCA局は、認証キー作成時にのみ動作すれば、通常期間では、動作しなくても動きます。(認証キーや暗号化キーには期限が設定されるので、定期的:2年周期など に更新作業は必要です)
また、キー作成時には、ホスト名(ドメイン名)で作成しますが、自宅などの場合、ドメイン名取得にもお金がかかるので、IPアドレスを指定して暗号化キーを作成することも可能です。
この方式で注意することは、作成した認証キーは自動配布(操作するPCやスマホなど)されません。事前にマニュアルで、作成したキーを操作するブラウザにインストールが必要です。スマホは、少しだけ手順が複雑ですが、手動で設定できます。
会社などで、ADサーバでドメイン管理をしている場合は、ADサーバの配布機能を使って、PCには、自動配布可能です。(スマホはドメインに参加していないので、手動となります)
以下、簡単な構築手順を説明します。
(1)ローカルCA局の構築
Linuxで動作するeasy-rsaパッケージを使って、CA局を構築します。

(2)CSRを作成
easyrsa gen-reqコマンドで作成

(3)Webサーバ用の証明書を作成
easyrsaコマンドで作成(IPアドレスも指定することで、IPアドレスアクセス可能となります)

(4)Webサーバ(https化したいサーバ)
mod_sslライブラリのインストール(Apache2の場合)
ssl.confの編集と(3)で作成した証明書をWebサーバに格納

(5)PCやスマホに(2)で作成した証明書を配布(インストール)

上記操作で、対象Webサーバにhttpsでアクセス可能です。
以下は、自宅に設置しているWebサーバにhttpsでかつ、IPアドレスでブラウザからアクセスした例です。

ブラウザに登録した証明書は、以下のようになっています。

簡単にhttps化できるので、スマホ向けサービスがいろいろ可能です。特にカメラを操作できるメリットは大きいです。(https化されていないサイトでは、カメラ操作ができない方式なので)





この記事が気に入ったらサポートをしてみませんか?