Пожалуйста, извините за неправильную терминологию. Если мне кажется, что я использую неправильный термин, возможно, так оно и есть.
Предыдущий сценарий:
- У меня есть домен и поддомены DOMAINA, *.DOMAINA у моего провайдера домена, указывающие на сервер имен linode ns*.linode.com
- Я разместил SITEA на линоде-сервере LINODESERV и использовал DNS-записи линодов.
- Я запустил letsencrypts certbot на LINODESERV и использовал плагин linode для создания сертификатов с использованием txt-записей. Это работало нормально
Новый сценарий:
У меня есть новый сервер Vercel, который обрабатывает все, но API-запросы API-запросы все еще происходят на LINODESERV.
Основной ДОМЕН и все поддомены *.DOMAINA теперь обрабатываются настройками домена vercels, которые также обрабатывают всю сертификацию SSL.
У меня есть запись A в настройках домена vercel, api.DOMAINA, которая указывает на IP-адрес LINDODESERV. Это прекрасно работает, и LINODESERV обрабатывает любые запросы api.DOMAINA.
Проблема:
Я больше не могу продлевать сертификат SSL для api.DOMAINA.
Симптомы:
Запуск обычного обновления показывает, что записи txt создаются в файле LINODESERV. Однако certbot сообщает:
DNS problem: NXDOMAIN looking up TXT for _acme-challenge.api.DOMAINA - check that a DNS record exists for this domain
Возможно проблема:
Раньше мой провайдер домена указывал прямо на ns1.linode.com, теперь он указывает на ns1.vercel.com, а vercel использует запись A для указания на api.DOMAINA.
Я чувствую, что из-за этого certbot не может достичь рекорда TXT? Но я не могу понять, почему и как это исправить.
стопка печенья
1 ответ
я не могу понять почему
Поскольку у вас по-прежнему настроен Certbot на использование подключаемого модуля службы DNS Linode, но ваша зона DNS больше не в Линоде, теперь он находится на ns#.vercel.com — это означает, что вам нужно заставить Certbot добавлять/удалять записи TXT через API Vercel (если он существует).
Записи A/AAAA и местоположение фактического сервера не имеют значения. Эти записи только информируют клиентов о том, куда подключаться для другой протоколы — они не позволяют серверу обрабатывать DNS-запросы для поддоменов (это делается через NS-записи).
Если у Vercel нет API, который мог бы использовать Certbot, создайте зону субдомена в Linode (например, «acme.example.com»), добавьте записи NS в Vercel, чтобы делегировать ее, и добавьте запись CNAME в «_acme- challenge.api.example.com», указывающий где-то в этой подзоне. Затем продолжайте использовать подключаемый модуль Certbot Linode DNS.
пользователь1686