Трафик не генерирует сертификат TLS (Ошибка 401) - PullRequest
0 голосов
/ 02 мая 2020

Я надеюсь, что кто-то здесь может мне помочь.

Я настроил свой Traefik в docker на NAS-устройстве Synology, с указанием портов 80 и 443. Все работает, кроме TLS. Я использую DNS-запрос Cloudflare, и что бы я ни указывал, он всегда выдает ошибку 401 неверных учетных данных. Я трижды проверил, что мой адрес электронной почты и ключ API верны. Кто-нибудь еще испытывает эту проблему? Буду очень признателен за любую помощь в этом:)

docker -compose.yaml

traefik:
    image: traefik:latest
    container_name: traefik
    restart: unless-stopped
    security_opt:
      - no-new-privileges:true
    networks:
      - proxy
    ports:
      - 80:80
      - 443:443
      - 8080:8080
    environment:
      - "CF_API_EMAIL=email"
      - "CF_API_KEY=api"
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - /var/run/docker.sock:/var/run/docker.sock:ro
      - ${USERDIR}/traefik/data/traefik.yaml:/traefik.yml:ro
      - ${USERDIR}/traefik/data/config.yaml:/config.yml:ro
      - ${USERDIR}/traefik/data/acme:/acme

whoami:
    container_name: whoami
    image: containous/whoami
    networks:
      - proxy
    security_opt:
      - no-new-privileges:true
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.whoami.rule=Host(`example.com`)"
      - "traefik.http.routers.whoami.entrypoints=https"
      - "traefik.http.routers.whoami.tls=true"
      - "traefik.http.routers.whoami.tls.certResolver=myresolver"

traefik.yaml

entryPoints:
  http:
    address: ":80"
  https:
    address: ":443"
providers:
  docker:
    endpoint: "unix:///var/run/docker.sock"
    exposedByDefault: false
    network: proxy
  file:
    filename: ./config.yml

certificatesResolvers:
  myresolver:
    acme:
      email: email
      storage: /acme/acme.json
      dnsChallenge:
        provider: cloudflare
        resolvers:
          - 1.1.1.1:53
          - 1.0.0.1:53
      caServer: https://acme-staging-v02.api.letsencrypt.org/directory

log

level=error msg="Unable to obtain ACME certificate for domains "example.com": unable to generate a certificate for the domains [example.com]: error: one or more domains had a problem:\n[example.com] [example.com] acme: error presenting token: cloudflare: failed to create TXT record: error from makeRequest: HTTP status 401: invalid credentials\n" providerName=myresolver.acme routerName=whoami@docker rule="Host(`example.com`)"

1 Ответ

0 голосов
/ 11 мая 2020

На этот вопрос ответили в сообщении github - https://github.com/containous/traefik/issues/6782

Это связано с тем, что cloudflare недавно удалил поддержку .tk .ml и нескольких других TLD для использования своих apis

...