💬

ローカルでhttps接続できた

2023/01/17に公開

Apache2を使い稼働しているWordPressのサイトの検証をしたいのですが、ドメインを付け替えて設置するのが大変と思い、稼働しているドメインでローカル内でhttps接続できないか試行錯誤していました。

色々な記事を参考にして、アクセスできるようになりました。

まず、Ubuntuのhostの中に、検証したいドメインを追記してください。

127.0.0.1  domain.name

こうすると、ローカルのIPアドレスで、ドメインをApache2に向けることができます。

今回使った証明書は、mkcertです。
mkcertは、Ubuntu上で証明書を発行するためのソフトウェアです。
これは、ローカル開発環境でHTTPSを使用するために必要な証明書を簡単にインストールすることができるものです。
また、mkcertは自己署名証明書を使用し、ブラウザに信頼される根証明書を作成することができます。

既にApache2がUbuntu22.04にインストールされているとして、進めていきます。

下記のコマンドで、mkcertをインストールできます。

apt install -y mkcert

この続きは、下記の記事のサーバー側の工程で、できます。
https://zenn.dev/karubi69/articles/abfe239b43715c

Ubuntu22.04は、下記のように/etc/ssl/から下のディレクトリが存在しますので、そのまま使えます。
下記のように、sudoを付けると移動できます。

sudo mv ***-key.pem /etc/ssl/private/***-key.pem
sudo mv ***.pem /etc/ssl/certs/***.pem

参考にした記事の「default-ssl.confを有効にするため/etc/apache2/sites-enabledでシンボリックリンクを作成し」の部分を実行して、既にファイルがあるとエラーになるかもしれないです。
実は、私は、ApacheのSSLで使う方法として、下記の記事を試したことで、ファイルが出来てしまったかなと思っています。
そのため、既にあるとエラーになった場合は、既にあるファイルの中身を確認してください。
今回作ったファイルでしたら、そのままスルーしてください。

https://qiita.com/Disk_MJM/items/f8992fd1805d5d6dc896

結果的に上記の記事の内容は、今回は大丈夫かなと思いました。
新しいドメインでテストするときは、この記事でも良いと思います。
私も、Let's Encryptを使う流れも簡単だと思いますが、今回は、ドメインの関係でmkcertを使いました。

今回上記の記事を実行して、ポート443が開いていないことが分かりました。
HTTPSの通信ができるように、443ポートが開いているか確認してください。
ポートのことは、上記の記事の他に、下記の記事も参考になります。
https://qiita.com/siida36/items/be21d361cf80d664859c

クライアントに転送せず、証明書のインポートなくできました。

実は、手順通り行って証明書をインストールする段階で、エラーになりました。
そのため証明書のインポートをせず試したら、ちゃんとHTTPSで表示できました。

ポートスキャンのツール

ポートスキャンのツールは、こちらも参考になります。
https://arkgame.com/2022/10/22/post-314095/

実際に稼働しているウエブサイトの検証目的

今回の記事は、WordPressを使ったウエブサイトで、プラグインやテーマの更新を行った時に、デザインにどのように影響が出るのか検証する際に、活用できると思います。

Discussion