今回はUbuntuのVPS上で、 Certbot を使って Let's Encrypt のワイルドカードSSL証明書
(*.slicks.site)を取得した際の手順をまとめました。
■構築環境:
Ubuntu 24.04 LTS
1. Certbotのインストール
まずは、Certbotをインストールします。
sudo apt update
sudo apt install -y certbot python3-certbot-nginx
2. ワイルドカード証明書の発行(DNS認証)
ワイルドカード証明書の取得にはDNS認証
が必要です。以下のコマンドを実行します。
sudo certbot certonly --manual --preferred-challenges dns -d slicks.site -d '*.slicks.site'
3. DNS TXTレコードの追加
Certbotを実行すると、次のようなメッセージが表示されます。
Please deploy a DNS TXT record under the name:
_acme-challenge.slicks.site.
with the following value:
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
指定された「_acme-challenge.slicks.site
」という名前で、「XXX...」というTXTレコード
をDNSの管理画面(お名前.com、Cloudflareなど)で追加します。
DNS反映の確認方法
DNSレコードが反映されたかどうかは以下のツールで確認できます。
DNSに反映されるまで数分~数十分かかる場合があります。反映が確認できたらCertbotの画面でEnterキーを押して次に進みます。
4. 複数のTXTレコードを求められる場合
Certbotから2つ目のTXTレコードを追加するように指示される場合があります。その際は1つ目を削除せずに追加してください。
(This must be set up in addition to the previous challenges; do not remove,
replace, or undo the previous challenge tasks yet.)
2つ目も同様に追加し、反映後、再びEnterキーを押します。
5. 証明書の取得完了
成功すると以下のようなメッセージが表示されます。
Successfully received certificate.
Certificate is saved at: /etc/letsencrypt/live/slicks.site/fullchain.pem
Key is saved at: /etc/letsencrypt/live/slicks.site/privkey.pem
This certificate expires on 2025-07-13.
These files will be updated when the certificate renews.
6. Nginx設定(SSL対応)
取得した証明書をNginxに設定します。
server {
listen 80;
server_name slicks.site *.slicks.site;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name slicks.site *.slicks.site;
ssl_certificate /etc/letsencrypt/live/slicks.site/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/slicks.site/privkey.pem;
root /home/your-path/public;
index index.php index.html;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/phpX.X-fpm.sock;
}
}
設定後はNginxをリロードします。
sudo nginx -t && sudo systemctl reload nginx
注意点(自動更新について)
今回の方法では証明書の自動更新ができません。期限が近づいたら、再度同じ手順を繰り返す必要があります。
以上がワイルドカード証明書取得の手順です。これで安全なHTTPS環境が整いました!