Предложение для разработчиков и системных администраторов
Re: Предложение для разработчиков и системных администраторов
Жизнено необходима опция/фцнкция позволяющая реплицировать dns зоны в PoweDNS кластер. либо по API Powerdns, либо классически через AXFR. Типа настройка с указанием IP куда слать нотифай для репликации. и аозможность включения и выключения этой фичи для пользовательского домена.
Ubuntu 24.04
BCP: latest
BCP: latest
Re: Предложение для разработчиков и системных администраторов
Можно ли добавить ACME DNS LE для Certbot
Получение SSL через Certbot и ACME DNS Plugin
Создаем хранилище учетных записей
Создаем файл учетной записи
Выполняем регистрацию
Одну регистрацию можно использовать для нескольких доменов, но имейте ввиду это будет один сертификат.
В некоторых случаях нужно будет использовать отдельные регистрационные данные для каждого WildCard.
Создаем на основе регистрации привязку к домену в /etc/letsencrypt/credentials/acme-registration.json
Создаем CNAME записи на DNS (в конце каждой записи стоит точка ".")
Запрещаем все кроме рута или нужно пользователя от кого будет вызываться certbot
Проверка
Получение сертификата
Получение SSL через Certbot и ACME DNS Plugin
Код: Выделить всё
apt install -y curl jq python3 python3-pip
pip install certbot-dns-acmedns --no-cache-dir --break-system-packages --root-user-action=ignoreКод: Выделить всё
mkdir -p /etc/letsencrypt/credentialsКод: Выделить всё
cat <<EOF >>/etc/letsencrypt/credentials/credentials
dns_acmedns_api_url = https://auth.acme-dns.io/
dns_acmedns_registration_file = /etc/letsencrypt/credentials/acme-registration.json
EOFКод: Выделить всё
curl -sX POST https://auth.acme-dns.io/register | jq >> /etc/letsencrypt/credentials/temp.acme-registration.json
Одну регистрацию можно использовать для нескольких доменов, но имейте ввиду это будет один сертификат.
В некоторых случаях нужно будет использовать отдельные регистрационные данные для каждого WildCard.
Создаем на основе регистрации привязку к домену в /etc/letsencrypt/credentials/acme-registration.json
Код: Выделить всё
nano /etc/letsencrypt/credentials/acme-registration.json
{
"test1.example.com": {
"username": "2a2dcde6-2b09-4759-a96a-7a77da9c693e",
"password": "8sb1BRg2-hB_eNur4nS1GiSJMRJhoYvQcoGveCSo",
"fulldomain": "c2345ff7-6c56-46d2-befc-a4b607402040.auth.acme-dns.io",
"subdomain": "c2345ff7-6c56-46d2-befc-a4b607402040",
"allowfrom": []
},
"test2.example.com": {
"username": "2a2dcde6-2b09-4759-a96a-7a77da9c693e",
"password": "8sb1BRg2-hB_eNur4nS1GiSJMRJhoYvQcoGveCSo",
"fulldomain": "c2345ff7-6c56-46d2-befc-a4b607402041.auth.acme-dns.io",
"subdomain": "c2345ff7-6c56-46d2-befc-a4b607402041",
"allowfrom": []
}
}Код: Выделить всё
_acme-challenge.test1.example.com → c2345ff7-6c56-46d2-befc-a4b607402040.auth.acme-dns.io.
_acme-challenge.test2.example.com → c2345ff7-6c56-46d2-befc-a4b607402041.auth.acme-dns.io.Запрещаем все кроме рута или нужно пользователя от кого будет вызываться certbot
Код: Выделить всё
chmod -R 0600 /etc/letsencrypt/credentials/Код: Выделить всё
certbot certonly --dry-run --agree-tos --email 'ssl@example.com' --domains '*.test1.example.com,*.test2.example.com' --authenticator 'dns-acmedns' --dns-acmedns-credentials '/etc/letsencrypt/credentials/credentials' --dns-acmedns-propagation-seconds '15'Код: Выделить всё
certbot certonly --agree-tos --email 'ssl@example.com' --domains '*.test1.example.com,*.test2.example.com' --authenticator 'dns-acmedns' --dns-acmedns-credentials '/etc/letsencrypt/credentials/credentials' --dns-acmedns-propagation-seconds '15'