サーバー証明書をLet’s Encryptからcertbotを使って取得設定するには、ドメイン名がDNSによって名前解決されており、なおかつドメインを運用するサーバにHTTPでアクセス可能になっている必要がある。
ダイナミックDNSなどでドメインを取得し、DNSでの名前解決ができていることを確認する。 NATの影響が煩わしい場合はIPv6(AAAAレコード)を設定したほうがいいかもしれない。
まず、Apache2にドメイン設定を行う。Ubuntu系での設定例は下記の通り。
Domain name | Document root | Apache conf |
---|---|---|
www.domain1.jp | /var/www/html/domain1.jp | /etc/apache2/sites-available/www.domain1.jp.conf |
www.domain2.com | /var/www/html/domain2.com | /etc/apache2/sites-available/domain2.com.conf |
設定例
ServerName www.domain1.jp DocumentRoot /var/www/html/domain1.jp
設定ファイルを作成したら、設定の有効化を行う。
$ sudo a2ensite www.domain1.jp $ ls -ltr /etc/apache2/sites-enabled/
設定ファイルに対するシンボリックリンクが設定されていれば、有効化されている。
サーバーへのhttpでのアクセスができていれば、certbotでサーバー証明書の発行から、ApacheのSSL設定までを行う。
$ sudo certbot certonly --webroot -w /var/www/html/www.domain1.jp -d www.domain1.jp -w /var/www/html/www.domain2.com -d www.domain2.com