Сгенерировать SSL-сертификат с помощью letsencrypt не удается с помощью "300 - множественный выбор"
У меня есть некоторые проблемы с получением traefik
генерировать lets-encrypt
сертификат для домена с www.
supdomain как отдельный SAN. У меня есть другие контейнеры с идентичной конфигурацией, работающие в этой среде.
Журнал (отладка) довольно многословен, но я смог увидеть это сообщение
time="2018-08-27T07:41:43Z" level=debug msg="Try to challenge certificate for domain [mydomain.de www.mydomain.de] founded in Host rule"
time="2018-08-27T07:41:43Z" level=debug msg="Looking for provided certificate(s) to validate [\"mydomain.de\" \"www.mydomain.de\"]..."
time="2018-08-27T07:41:43Z" level=debug msg="Domains [\"mydomain.de\" \"www.mydomain.de\"] need ACME certificates generation for domains \"mydomain.de,www.mydomain.de\"."
time="2018-08-27T07:41:43Z" level=debug msg="Loading ACME certificates [mydomain.de www.mydomain.de]..."
time="2018-08-27T07:41:56Z" level=debug msg="Unable to split host and port: address www.mydomain.de: missing port in address. Fallback to request host."
time="2018-08-27T07:42:00Z" level=error msg="Unable to obtain ACME certificate for domains \"mydomain.de,www.mydomain.de\" detected thanks to rule \"Host:mydomain.de,www.mydomain.de\" : cannot obtain certificates: acme: Error -> One or more domains had a problem:\n[mydomain.de] acme: Error 403 - urn:ietf:paramsacme:error:unauthorized - Invalid response from http://mydomain.de/.well-known/acme-challenge/o74RJIDdodxG-hXpmX9en_55ZpptifsjYInrjY97Bic: \"<!DOCTYPE HTML PUBLIC \"-//IETF//DTD HTML 2.0//EN\">\n<html><head>\n<title>300 Multiple Choices</title>\n</head><body>\n<h1>Multiple C\"\n"
time="2018-08-27T07:43:44Z" level=debug msg="No certificate provided dynamically can check the domain \"www.mydomain.de\", a per default certificate will be used."
LABEL
Этот контейнер использует:
LABEL traefik.enable="true" \
traefik.backend="mydomain-backend" \
traefik.docker.network="web-gateway" \
traefik.frontend.rule="Host:mydomain.de,www.mydomain.de" \
traefik.port="80"
Пока сообщение довольно очевидно с Invalid response from http://mydomain.de/.well-known/acme-challenge/o74RJIDdodxG-hXpmX9en_55ZpptifsjYInrjY97Bic
который, кажется, возвращает код-300 результат. Но почему это происходит? Не должен ли трафик отлавливать запросы /.well-known
и вернуть правильный ключ авторизации для letsencrypt? Использование только одного домена wwww.mydomain.de
генерация сертификатных работ.
Как я могу это исправить? Заранее спасибо!
1 ответ
Я нашел решение. Согласно этой записи в блоге это связано с настройками DNS первого домена mydomain.de
который имеет A
Запись, указывающая на мой сервер и AAAA
-Record (IPv6), указывающий на другое местоположение, которое вызвало ответ "множественный выбор", который фактически является ответом от certbot/letsencrypt и не связан с traefik
,
После удаления AAAA
- Запись из поколений сертификатов DNS теперь, кажется, работает.