プロジェクト

全般

プロフィール

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

蒲池 晃, 2026/03/04 08:36

1 1 蒲池 晃
h1. JPRS ACME 導入手順
2 1 蒲池 晃
3 1 蒲池 晃
事前に、eab-kid と eab-hmac-key を入手しておく
4 3 蒲池 晃
※社内向けドキュメント https://aitp.sharepoint.com/:f:/r/sites/msteams_79cb18/Shared%20Documents/FS/ACME?csf=1&web=1&e=eP4C0Z
5 1 蒲池 晃
6 1 蒲池 晃
1.certbot のインストール
7 1 蒲池 晃
<pre>
8 1 蒲池 晃
sudo dnf update -y
9 1 蒲池 晃
sudo dnf install -y certbot python3-certbot-apache
10 1 蒲池 晃
</pre>
11 1 蒲池 晃
--- OSが古くてうまく行かない時 ---
12 1 蒲池 晃
aptのリストを書き換える
13 1 蒲池 晃
<pre>
14 1 蒲池 晃
vi /etc/apt/sources.list
15 1 蒲池 晃
</pre>
16 1 蒲池 晃
<pre>
17 1 蒲池 晃
deb http://archive.debian.org/debian/ buster main contrib non-free
18 1 蒲池 晃
deb http://archive.debian.org/debian/ buster-proposed-updates main contrib non-free
19 1 蒲池 晃
deb http://archive.debian.org/debian-security buster/updates main contrib non-free
20 1 蒲池 晃
</pre>
21 1 蒲池 晃
<pre>
22 1 蒲池 晃
echo 'Acquire::Check-Valid-Until "false";' | sudo tee /etc/apt/apt.conf.d/99no-check-valid-until
23 1 蒲池 晃
</pre>
24 1 蒲池 晃
更新
25 1 蒲池 晃
<pre>
26 1 蒲池 晃
sudo apt clean
27 1 蒲池 晃
sudo apt update
28 1 蒲池 晃
</pre>
29 1 蒲池 晃
インストールする
30 1 蒲池 晃
<pre>
31 1 蒲池 晃
sudo apt install -y snapd
32 1 蒲池 晃
sudo snap install core
33 1 蒲池 晃
sudo snap refresh core
34 1 蒲池 晃
sudo snap install --classic certbot
35 1 蒲池 晃
sudo ln -s /snap/bin/certbot /usr/bin/certbot
36 1 蒲池 晃
</pre>
37 1 蒲池 晃
------
38 1 蒲池 晃
バージョンの確認
39 1 蒲池 晃
<pre>
40 1 蒲池 晃
certbot --version
41 1 蒲池 晃
</pre>
42 2 蒲池 晃
2.JPRS 用ディレクトリ作成(分離運用)
43 1 蒲池 晃
<pre>
44 1 蒲池 晃
sudo mkdir -p /etc/letsencrypt-jprs
45 1 蒲池 晃
sudo mkdir -p /var/lib/letsencrypt-jprs
46 1 蒲池 晃
sudo mkdir -p /var/log/letsencrypt-jprs
47 1 蒲池 晃
</pre>
48 2 蒲池 晃
3.JPRS ACME アカウント登録(EAB)
49 1 蒲池 晃
<pre>
50 1 蒲池 晃
sudo certbot register \
51 1 蒲池 晃
  --config-dir /etc/letsencrypt-jprs \
52 1 蒲池 晃
  --work-dir /var/lib/letsencrypt-jprs \
53 1 蒲池 晃
  --logs-dir /var/log/letsencrypt-jprs \
54 1 蒲池 晃
  -m 'admin@example.jp' \
55 1 蒲池 晃
  --agree-tos \
56 1 蒲池 晃
  --eab-kid '<JPRS_EAB_KID>' \
57 1 蒲池 晃
  --eab-hmac-key '<JPRS_EAB_HMAC_KEY>' \
58 1 蒲池 晃
  --server 'https://acme.amecert.jprs.jp/DV/getDirectory'
59 1 蒲池 晃
</pre>
60 2 蒲池 晃
4ー1.証明書の発行(Webroot 方式・通常ドメイン用)
61 1 蒲池 晃
<pre>
62 1 蒲池 晃
sudo certbot certonly \
63 1 蒲池 晃
  --config-dir /etc/letsencrypt-jprs \
64 1 蒲池 晃
  --work-dir /var/lib/letsencrypt-jprs \
65 1 蒲池 晃
  --logs-dir /var/log/letsencrypt-jprs \
66 1 蒲池 晃
  --webroot -w /var/www/html \
67 1 蒲池 晃
  --key-type rsa \
68 1 蒲池 晃
  -d example.jp -d www.example.jp \
69 1 蒲池 晃
  --server 'https://acme.amecert.jprs.jp/DV/getDirectory'
70 1 蒲池 晃
</pre>
71 2 蒲池 晃
4-2.証明書の発行(DNS-01 方式・ワイルドカード対応)
72 1 蒲池 晃
DNSテキストレコードを発行
73 1 蒲池 晃
<pre>
74 1 蒲池 晃
sudo certbot certonly \
75 1 蒲池 晃
  --config-dir /etc/letsencrypt-jprs \
76 1 蒲池 晃
  --work-dir /var/lib/letsencrypt-jprs \
77 1 蒲池 晃
  --logs-dir /var/log/letsencrypt-jprs \
78 1 蒲池 晃
  --manual \
79 1 蒲池 晃
  --preferred-challenges dns \
80 1 蒲池 晃
  --key-type rsa \
81 1 蒲池 晃
  -d '*.example.jp' -d example.jp \
82 1 蒲池 晃
  --server 'https://acme.amecert.jprs.jp/DV/getDirectory'
83 1 蒲池 晃
</pre>
84 1 蒲池 晃
発行されたTXTレコードをDNSに登録
85 1 蒲池 晃
DNSが設定されたら、
86 1 蒲池 晃
<pre>
87 1 蒲池 晃
dig TXT _acme-challenge.example.jp +short
88 1 蒲池 晃
</pre>
89 2 蒲池 晃
5.下記のようなファイルが生成される
90 1 蒲池 晃
<pre>
91 1 蒲池 晃
/etc/letsencrypt-jprs/live/example.jp/fullchain.pem
92 1 蒲池 晃
/etc/letsencrypt-jprs/live/example.jp/privkey.pem
93 1 蒲池 晃
</pre>
94 2 蒲池 晃
6.APACHEのConfigを設定する
95 1 蒲池 晃
<pre>
96 1 蒲池 晃
<VirtualHost *:443>
97 1 蒲池 晃
  ServerName example.jp
98 1 蒲池 晃
  ServerAlias www.example.jp
99 1 蒲池 晃
100 1 蒲池 晃
  DocumentRoot /var/www/html
101 1 蒲池 晃
102 1 蒲池 晃
  SSLEngine on
103 1 蒲池 晃
  SSLCertificateFile /etc/letsencrypt-jprs/live/example.jp/fullchain.pem
104 1 蒲池 晃
  SSLCertificateKeyFile /etc/letsencrypt-jprs/live/example.jp/privkey.pem
105 1 蒲池 晃
</VirtualHost>
106 1 蒲池 晃
</pre>
107 2 蒲池 晃
7.定期的な更新方法
108 1 蒲池 晃
<pre>
109 1 蒲池 晃
sudo certbot renew \
110 1 蒲池 晃
  --config-dir /etc/letsencrypt-jprs \
111 1 蒲池 晃
  --work-dir /var/lib/letsencrypt-jprs \
112 1 蒲池 晃
  --logs-dir /var/log/letsencrypt-jprs \
113 1 蒲池 晃
  --dry-run
114 1 蒲池 晃
</pre>
115 1 蒲池 晃
このコマンドを入れた後にHTTPDを再起動する
116 1 蒲池 晃
<pre>
117 1 蒲池 晃
service httpd restart
118 1 蒲池 晃
</pre>
119 1 蒲池 晃
これをシェルスクリプトにして、月に1回事項する
120 1 蒲池 晃
<pre>
121 1 蒲池 晃
10 1 1 * * root /home/bitnami/batchfiles/certbot-jprs.sh
122 1 蒲池 晃
</pre>
123 1 蒲池 晃
124 1 蒲池 晃
</pre>