Рубрики
Uncategorized

Trancexdb 2.0 — быстро включить шифрование TLS с Trafik

JumpStArt Ваш StackDB Stack с автоматическим управлением сертификатом TLS. Использовать дело Так что вы’ … Помечено с докером, безопасностью, микросервисами, дежопами.

JumpStArt Ваш StackDB Stack с автоматическим управлением сертификатом TLS.

Использовать дело

Таким образом, вы управляете групповыми службами IoT/Finance или CryptogUrnency с Docker или Kubernetes и решили использовать этот блестящий приборной панель ShineUxDB 2.0 в Производство Отказ Черт возьми, может даже играть с Flux API тоже — для тех Extra Fancy Запросы.

(Кому нужна графана?)

Очевидно, что в этот момент вам нужно будет защитить трафик между вашим веб-приложением и вашим сервером (плюс микросервисы). Это именно то, что TLS Шифрование делает — вы знаете, добавляет этого https:// Вы видите везде.

Что тебе понадобится

  • Вы бежите бегущую к вашей бэкэнде в контейнерах Docker. Это либо Docker, Docker Swarm или Kubernetes, или любой другой поставщик, который запускает контейнеры Docker, определяемые через файл составляющих YAML или аналогичный.
  • Вы либо работаете, либо планируете запускать Трафик как ваш прокси.
  • Вы владеете доменом и можем управлять своими записями DNS.

Необязательный:

инструкции

  1. Если вы выбираете проще, HTTP-01 ACME Challenge убедитесь, что вы Создайте все необходимые записи DNS заранее (то есть создать А или Cname Рекорды), включая любые имена подстановки подстановки. Сказав это, если ваш Действительно нужно Сертификаты подстановки для поддоменов, вы должны использовать ACME DNS-01.

    Осторожно: есть Плюсы и минусы для использования каждого типа задачи. Используйте лучшие практики отрасли и ваше собственное решение при решении того, какой метод использовать для вашего проекта.

    Ниже приведен пример типичной таблицы записи DNS для HTTP-01 Challenge :

    A
    A
    Сосредоточение

    Наше основное доменное имя — example.com И мы запускаем два сервиса, которые будут выставлены на имена поддоменов Трафик. * и Приключите. * . Если у вас есть больше сервисов, которые вы хотите, доступны через поддомен, теперь время добавить их здесь. Настройки TTL не относятся к этому руководству, поэтому не стесняйтесь нырять глубже в DNS в свое время.

    И вот тот же стол при попытке DNS-01 Challenge :

    A
    A
  2. Мы храним наши сертификаты в привязке, установленном acme.json Отказ Следовательно, соответствующие разрешения необходимо заранее установить для Trafik для доступа (принять его в качестве безопасного) Этот файл:

  3. (Re) Определите свой контейнер для наключите, применяя следующие этикетки :

    Для докера (с использованием сочинений):

    Для докера Рой:

    Имена my-topuxdb , MyResolver и Websecure Уникальные идентификаторы в конфигурации Traefik представляют Маршрутизатор (оказание услуг), Resolver сертификата и Выходная точка (порт 443) соответственно. Здесь мы определили маршрутизатор my-topuxdb На данный момент, тогда как последние два будут определены на следующем шаге. Обратите внимание, что мы Не выставляйте сервисные порты В нашем создании файла больше, поскольку все трафик теперь будет обрабатываться Trafik.

    Примечание. Для роя Traefik требует, чтобы вы явно определили хотя бы один порт, на котором работает сервис, даже если не имеет портов прослушивания. (см. Обнаружение порта — Traefik Docs)

    Не забудьте развернуть эту новую конфигурацию, используя Докер сочиняет или Docker Stack Deploy -C Docker-Compose.yml Отказ

  4. Давайте теперь добавим контейнер Traefik в ваш Compose файл.

    Ниже приведены 4 различных способа сделать это — в зависимости от комбинации оркестратора и типа ACME Challenge.

    Во всех случаях мы используем Постановка Давайте шифрование сервера — это помогает нам генерировать новые сертификаты в случае, если мы намного быстрее, поскольку Лимит ставки намного выше Отказ Как только все работает, просто удалите линию, определяющую СертификаторыМЕРСЛОВЕРЫ.MYRESOLVER.ACME.CASERVER и перераспределить свой контейнер Traefik.

    Кроме того, DNS-сервер, который я использую для вызова DNS-01, это Digitalocean , который требует, я определяю Do_auth_token Отказ В зависимости от вашего поставщика DNS вам понадобится Определите разные учетные данные Отказ

    1. Для Docker (Compose) + Challenge HTTP-01:

    2. Для Docker (Compose) + DNS-01 Challenge:

    3. Для Docker Swarm + HTTP-01 Challenge:

    4. Для Docker Swarm + DNS-01 Challenge:

    Опять же, не забудьте развернуть эту новую услугу и через пару секунд вы должны быть запущены и запущены.

Переключиться на производство

Как уже упоминалось на шаге 4, вы будете использовать Постановка Давайте шифровать сервер для генерации сертификата. Таким образом, ваш сертификат не будет доверен браузером:

Легко исправить: как только все работает, как и ожидалось с недействительный Сертификат просто удалить линию, определяющую СертификаторыМЕРСЛОВЕРЫ.MYRESOLVER.ACME.CASERVER и перераспределить свой контейнер Traefik.

Все еще запутался?

  1. Зачем использовать https?
  2. Что такое TLS.

Оригинал: «https://dev.to/siaarzh/influxdb-2-0-quickly-enabling-tls-encryption-with-traefik-17ni»