Debian.pro/

Про Debian


«Чиним» letsencrypt+cloudflare в debian 11 — или просто ставим отдельный софт в stable debian из testing/sid.

На данный момент в debian 11 в main-репе лежит не очень работающая версия python3-certbot-dns-cloudflare (а в других никакой не лежит). С некоторое долей вероятности, попытавшись получить через letsencrypt certonly —dns-cloudflare НЕ-wildcard сертификат, вы получите такое (актуально это и для wildcard+domain сертификатов, само собой):

IMPORTANT NOTES:
- The following errors were reported by the server:

Domain: example.com
Type: unauthorized
Detail: During secondary validation: Incorrect TXT record
"yXsLroPbfZa-SfLffaKwwdqgyqIW_-BUbEjZ9VsPRV8" found at
_acme-challenge.example.com

To fix these errors, please make sure that your domain name was
entered correctly and the DNS A/AAAA record(s) for that domain
contain(s) the right IP address.

А особо высшим пилотажем станет то, что и старые сертификаты могут перестать продлеваться — которые уже были когда-то получены ровно на этой же машине.

Решать будем по старинке, при помощи debian testing, чёртовой матери и пиннинга в апте.
Создаём файлик вроде /etc/apt/sources.list.d/bookworm.list

deb http://deb.debian.org/debian bookworm main contrib non-free

(я на всякий случай указал все репы, вы можете по вкусу что-то убрать).

Создаём файлик /etc/apt/preferences.d/bookworm

Package: *
Pin: release n=bookworm
Pin-Priority: -100

Чтобы пакеты из этого репозитория не устанавливались никогда без явного указания опции -t

Не забываем про apt update

root@server:~# apt update

Проверяем, что без -t не ставится версия из bookworm:

root@server:~# apt-get install python3-certbot-dns-cloudflare python3-certbot certbot python3-josepy python3-acme
...
python3-certbot-dns-cloudflare is already the newest version (1.6.0-1).
python3-josepy is already the newest version (1.2.0-2).
python3-josepy set to manually installed.
0 upgraded, 0 newly installed, 0 to remove and 57 not upgraded.

Ну и теперь указываем опцию -t и ставим версию из тестинга:

root@server:~# apt-get install -t bookworm python3-certbot-dns-cloudflare python3-certbot certbot python3-josepy python3-acme
Setting up certbot (1.25.0-1) ...
Setting up python3-certbot-dns-cloudflare (1.18.0-1) ...
Processing triggers for man-db (2.9.4-2) ...

Ну и как бы всё.
Единственное но — пакет и обновляться не будет из тестинга. Вам нужно будет написать правильный пиннинг, что бы пакеты, перечисленные в команде выше, имели pin=500+ при установке из bookworm — но мне тратить на статью больше 20 минут как-то лениво.

Ну и, само собой, использовать это можно не только с cloudflare — так поставится любая программа.


Комментариев пока нет.

Написать комментарий