После обновления Discourse использует, как мне кажется, очень старый SSL-сертификат, который я применял давным-давно, вместо сертификата от Let’s Encrypt.
Кажется, я использовал StartCom очень давно, но уже давно перешёл на Let’s Encrypt.
В моём файле app.yml указано:
templates:
- "templates/cron.template.yml"
- "templates/postgres.template.yml"
- "templates/redis.template.yml"
- "templates/sshd.template.yml"
- "templates/web.template.yml"
- "templates/web.ssl.template.yml"
- "templates/web.letsencrypt.ssl.template.yml"
Непонятно, почему система снова начала использовать старый сертификат.
Есть ли у кого-нибудь идеи, как это исправить?
Я пересобрал систему, чтобы посмотреть, что именно происходит, и вот что выводится:
I, [2025-10-06T06:29:29.144007 #1] INFO -- : File > /etc/runit/1.d/install-ssl chmod: +x chown:
I, [2025-10-06T06:29:29.144328 #1] INFO -- : Replacing # after ssl with if [ -n "$LETSENCRYPT_ACCOUNT_EMAIL" ]; then
if [[ ! "$LETSENCRYPT_ACCOUNT_EMAIL" =~ ([^@]+)@([^\.]+) ]]; then
echo "LETSENCRYPT_ACCOUNT_EMAIL is not a valid email address"
exit 1
fi
/usr/local/bin/configure-ssl
exec /usr/local/bin/configure-letsencrypt
else
echo "LETSENCRYPT_ACCOUNT_EMAIL ENV not set. Skipping Let's Encrypt setup."
fi
# after ssl in /etc/runit/1.d/install-ssl
I, [2025-10-06T06:29:29.149199 #1] INFO -- : File > /usr/local/bin/configure-ssl chmod: +x chown:
I, [2025-10-06T06:29:29.149595 #1] INFO -- : > curl https://raw.githubusercontent.com/acmesh-official/acme.sh/3.0.6/acme.sh > /opt/acme.sh
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 215k 100 215k 0 0 989k 0 --:--:-- --:--:-- --:--:-- 993k
I, [2025-10-06T06:29:29.388552 #1] INFO -- :
I, [2025-10-06T06:29:29.388677 #1] INFO -- : > chmod +x /opt/acme.sh
I, [2025-10-06T06:29:29.390922 #1] INFO -- :
I, [2025-10-06T06:29:29.395637 #1] INFO -- : File > /usr/local/bin/configure-letsencrypt chmod: +x chown:
I, [2025-10-06T06:29:29.399975 #1] INFO -- : File > /usr/local/bin/letsencrypt chmod: +x chown:
Кажется, что процесс настройки Let’s Encrypt выполняется, но по какой-то причине используется другой сертификат.
Я вижу, что мой сертификат раньше находился (и, возможно, всё ещё находится) по путям:
/var/discourse/shared/standalone/ssl/forum.keyboardmaestro.com.cer
/var/discourse/shared/standalone/ssl/forum.keyboardmaestro.com_ecc.key
/var/discourse/shared/standalone/ssl/forum.keyboardmaestro.com_ecc.cer
/var/discourse/shared/standalone/ssl/forum.keyboardmaestro.com.key
но система, похоже, выбирает
/shared/ssl/ssl.crt
Правильно ли я понимаю?
