Lightsail環境で、1つのIPアドレスに対して複数ドメインのSSLサーバー証明書を適用する。


基本的には、以下のサイトの説明通りで良い。
Apacheに、複数ドメインのSSL証明書を導入する - CLOVER🍀

つまり、デフォルトでは1つしかない<VirtualHost _default_:443>タグをコピーして、
別のドメインでアクセスされた時用に もう1つ記載する。

Lightsail環境においては、/opt/bitnami/apache2/conf/bitnami/bitnami.confファイルが
/etc/httpd/conf.d/ssl.confの様な位置づけになっているというのが肝か。

/opt/bitnami/apache2/conf/bitnami/bitnami.conf
<VirtualHost _default_:443>
  ServerName hoge.com
  DocumentRoot "/opt/bitnami/apache2/htdocs"
  SSLEngine on
SSLCertificateFile "/opt/bitnami/apache2/conf/server.crt"
SSLCertificateKeyFile "/opt/bitnami/apache2/conf/server.key"
  :

<VirtualHost _default_:443>
  ServerName test.com
  DocumentRoot "/opt/bitnami/apache2/htdocs"
  SSLEngine on
SSLCertificateFile "/opt/bitnami/apache2/conf/server2.crt"
SSLCertificateKeyFile "/opt/bitnami/apache2/conf/server2.key"
  :

その後、sudo /opt/bitnami/ctlscript.sh restart apacheを実行して、設定を再読込みさせれば良い。

なお、下記記事で「違うドメインでも同じ証明書を使い回せる」とあったので試してみましたが、
今回の環境では上手くいきませんでした。
複数バーチャルホストに複数SSLのApache設定:俺ならこう書く

備考

上記の、.crtファイル と .keyファイルは、以下の要領で作成。

bitnami@ip-xxx:/etc/letsencrypt$ ./letsencrypt-auto certonly --webroot -w /opt/bitnami/apache2/htdocs/ -d <ServerName>

sudo cp /etc/letsencrypt/live/<ServerName>/privkey.pem /opt/bitnami/apache2/conf/server2.key
sudo cp /etc/letsencrypt/live/<ServerName>/fullchain.pem /opt/bitnami/apache2/conf/server2.crt