Поддерживает ли AWS Route53 ACL, чтобы ограничить доступ к записям TXT

Поддерживает ли AWS Route53 DNS какие-либо проприетарные списки доступа (ACL) для ограничения доступа к некоторым записям DNS (записи TXT), но при этом сохраняет доступ к этим записям TXT из учетной записи AWS?

Я знаю, что намерение DNS-сервера состоит в том, чтобы сделать все записи DNS общедоступными, но некоторые записи TXT могут быть слишком откровенными для реализации.

Пример: Kubernetes «внешний контроллер DNS», который создает A-записи и добавляет записи TXT. Контроллер DNS полагается на атрибут «владелец» в записи TXT, чтобы определить, разрешает ли он вносить изменения в эту запись, поэтому записи TXT не могут быть удалены полностью.

      service-a.example.com. A   192.0.2.4
service-a.example.com. TXT "heritage=external-dns,external-dns/owner=eks/my-eks-cluster,external-dns/resource=service/test/my-svc2"

2 ответа

R53 предлагает частные размещенные зоны, которые вы можете связать с вашими VPC, чтобы внутренний трафик мог добавлять / обновлять / разрешать записи, сохраняя при этом конфиденциальность этой информации. Возможно, вы можете использовать частную зону хостинга для DNS, которая должна оставаться внутренней.

Думаю, я сам нашел ответ ...

Да, мне известно о частных зонах в Route53, но, честно говоря, я стараюсь их избегать, потому что невозможно запросить сертификат AWS SSL для частной зоны, если вы также не запустите AWS Private CA (что дорого). Во-вторых, вам нужно будет настроить «разделенный DNS» на вашем VPN-сервере, который часто не полностью автоматизирован, поэтому публичная зона DNS является более предпочтительной.

Да, я понимаю, что фильтрация DNS-записей по типу является анти-шаблоном для DNS как концепции, поэтому она, вероятно, нигде не реализована.

Решение на базе AWS route53 может быть следующим:

  • создать публичную зону DNS через aws servicediscovery create-public-dns-namespace
  • запустить внешний DNS-контроллер Kubernetes с --provider=aws-sd

В этом случае внешний контроллер DNS зарегистрирует сервис / вход Kubernetes в AWS Service Discovery, где он сохранит запись «описания», показывающую вашу внутреннюю реализацию. В то же время публичная зона DNS будет содержать только A-запись, что довольно безобидно.

В этом случае можно зарегистрировать свои частные и общедоступные входы / ALB в одной и той же общедоступной зоне DNS, например:

  • pub-svc1.my.domain
  • pub-svc1.private.my.domain

Таким образом, все клиенты VPN смогут разрешать оба типа имен - нет необходимости в дополнительной частной зоне DNS или в дополнительной конфигурации VPN с разделением DNS; плюс вы можете запросить общедоступные сертификаты SSL через AWS для своего *.private.my.domain.

Другие вопросы по тегам