プロジェクト

全般

プロフィール

JPRS ACME » 履歴 » バージョン 2

バージョン 1 (蒲池 晃, 2026/03/04 08:32) → バージョン 2/3 (蒲池 晃, 2026/03/04 08:33)

h1. JPRS ACME 導入手順

事前に、eab-kid と eab-hmac-key を入手しておく

1.certbot のインストール
<pre>
sudo dnf update -y
sudo dnf install -y certbot python3-certbot-apache
</pre>


--- OSが古くてうまく行かない時 ---


aptのリストを書き換える
<pre>
vi /etc/apt/sources.list
</pre>
<pre>
deb http://archive.debian.org/debian/ buster main contrib non-free
deb http://archive.debian.org/debian/ buster-proposed-updates main contrib non-free
deb http://archive.debian.org/debian-security buster/updates main contrib non-free
</pre>
<pre>
echo 'Acquire::Check-Valid-Until "false";' | sudo tee /etc/apt/apt.conf.d/99no-check-valid-until
</pre>
更新
<pre>
sudo apt clean
sudo apt update
</pre>
インストールする
<pre>
sudo apt install -y snapd
sudo snap install core
sudo snap refresh core
sudo snap install --classic certbot
sudo ln -s /snap/bin/certbot /usr/bin/certbot
</pre>
------
バージョンの確認
<pre>
certbot --version
</pre>
2.JPRS 3.JPRS 用ディレクトリ作成(分離運用)
<pre>
sudo mkdir -p /etc/letsencrypt-jprs
sudo mkdir -p /var/lib/letsencrypt-jprs
sudo mkdir -p /var/log/letsencrypt-jprs
</pre>
3.JPRS 4.JPRS ACME アカウント登録(EAB)
<pre>
sudo certbot register \
--config-dir /etc/letsencrypt-jprs \
--work-dir /var/lib/letsencrypt-jprs \
--logs-dir /var/log/letsencrypt-jprs \
-m 'admin@example.jp' \
--agree-tos \
--eab-kid '<JPRS_EAB_KID>' \
--eab-hmac-key '<JPRS_EAB_HMAC_KEY>' \
--server 'https://acme.amecert.jprs.jp/DV/getDirectory'
</pre>
4ー1.証明書の発行(Webroot 5ー1.証明書の発行(Webroot 方式・通常ドメイン用)
<pre>
sudo certbot certonly \
--config-dir /etc/letsencrypt-jprs \
--work-dir /var/lib/letsencrypt-jprs \
--logs-dir /var/log/letsencrypt-jprs \
--webroot -w /var/www/html \
--key-type rsa \
-d example.jp -d www.example.jp \
--server 'https://acme.amecert.jprs.jp/DV/getDirectory'
</pre>
4-2.証明書の発行(DNS-01 5-2.証明書の発行(DNS-01 方式・ワイルドカード対応)
DNSテキストレコードを発行
<pre>
sudo certbot certonly \
--config-dir /etc/letsencrypt-jprs \
--work-dir /var/lib/letsencrypt-jprs \
--logs-dir /var/log/letsencrypt-jprs \
--manual \
--preferred-challenges dns \
--key-type rsa \
-d '*.example.jp' -d example.jp \
--server 'https://acme.amecert.jprs.jp/DV/getDirectory'
</pre>
発行されたTXTレコードをDNSに登録
DNSが設定されたら、
<pre>
dig TXT _acme-challenge.example.jp +short
</pre>
5.下記のようなファイルが生成される 6.下記のようなファイルが生成される
<pre>
/etc/letsencrypt-jprs/live/example.jp/fullchain.pem
/etc/letsencrypt-jprs/live/example.jp/privkey.pem
</pre>
6.APACHEのConfigを設定する 7.APACHEのConfigを設定する
<pre>
<VirtualHost *:443>
ServerName example.jp
ServerAlias www.example.jp

DocumentRoot /var/www/html

SSLEngine on
SSLCertificateFile /etc/letsencrypt-jprs/live/example.jp/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt-jprs/live/example.jp/privkey.pem
</VirtualHost>
</pre>
7.定期的な更新方法 8.定期的な更新方法
<pre>
sudo certbot renew \
--config-dir /etc/letsencrypt-jprs \
--work-dir /var/lib/letsencrypt-jprs \
--logs-dir /var/log/letsencrypt-jprs \
--dry-run
</pre>
このコマンドを入れた後にHTTPDを再起動する
<pre>
service httpd restart
</pre>
これをシェルスクリプトにして、月に1回事項する
<pre>
10 1 1 * * root /home/bitnami/batchfiles/certbot-jprs.sh
</pre>

</pre>