в ISC-DHCP-сервер + BIND9 + непривязанный + dnscrypt & DDNS и не работает

Оригинал

у меня есть сложная настройка DNS на моем домашнем маршрутизаторе, на котором работают серверы Ubuntu. Моя цель состоит в том, чтобы быть в состоянии,

  1. запрос DNS моего местного провайдера для гео leocation чувствительных поисков, что я забочусь о
  2. dnscrypt-proxy для большинства просмотров. Для некоторых доменов (некоторые из них я знаю), многие из которых я не знаю, и как таковые, кроме конкретных доменов, мой провайдер отравляет поиски ложными адресами для трафика blackhole. Я желаем, чтобы это был сервер поиска DNS по умолчанию
  3. минимизировать поиск DNS в интернете. Мое подключение к интернету не является надежным и в определенное время в течение дня у меня есть всего лишь 50/50 шанс иметь DNS поисков из страны успеха
  4. иметь свой собственный внутренний домен, преимущественно для обратного поиска.

решение, которое я должен был реализовать для достижения этих целей,

  1. unbound в качестве основного DNS-сервера моей локальной сети для кэширования поиска, агрессивно сохраняя этот кэш, и перенаправление адресов на соответствующий DNS-сервер для кэша пропускает
  2. dnscrypt-proxy on 127.0.2.1:53 как forward-addr на "." в несвязанных
  3. bind on 192.168.1.1:40 авторитетным для моего локального домена только
  4. isc-dhcp-server для раздачи IP-адресов и вставки прямого и обратного просмотра.

мне удалось достичь большинства своих целей. Так сдержанно менять вещи значительно за исключением для прямого / обратного просмотра нестатических хостов в моей локальной сети.

мои подозрения isc-dhcp-server отправляет обновления DDNS в unbound, что не имеет ни малейшего представления, что с ней делать. Как я могу спросить isc-dhcp-server отправить 192.168.1.1:40,bind несмотря на то, что я хочу, чтобы DNS-сервер для моих клиентов был 192.168.1.1:53,unbound или enable unbound знать, как пересылать DDNS обновления bind?

пример ошибки сообщение

Sep 29 08:01:10 ubuntu dhcpd[7057]: DHCPREQUEST for 192.168.1.101 from 28:18:78:7c:d5:a1 (Xbox-SystemOS) via enp2s0
Sep 29 08:01:10 ubuntu dhcpd[7057]: DHCPACK on 192.168.1.101 to 28:18:78:7c:d5:a1 (Xbox-SystemOS) via enp2s0
Sep 29 08:01:22 ubuntu dhcpd[7057]: Unable to add forward map from Xbox-SystemOS.mydomain.ddns.net. to 192.168.1.101: timed out

соответствующие строки в dhcpd.conf

ddns-updates on;
ddns-update-style interim;
key rndc-key { algorithm hmac-md5; secret MIND_YOUR_BUSINESS; }

subnet ...... {
    ....
    option domain-name-servers 192.168.1.1;
    ...
    ddns-domainname "mydomain.ddns.net.";
    ddns-rev-domainname "in-addr.arpa.";
}

соответствующие строки /etc/bind/named.conf.local

zone "mydomain.ddns.net" {
        type master;
        file "/etc/bind/zones/db.mydomain.ddns.net"; # Zone file path
       allow-update { key rndc-key; };               # allow for dynamic updates
};

zone "168.192.in-addr.arpa" {
        type master;
        file "/etc/bind/zones/db.192.168";           # 192.168.0.0/16 subnet
        allow-update { key rndc-key; };              # allow for dynamic updates
};

обновление 1

После рытья через dhcpd.conf я пришел к выводу, что не могу указать номер порта для сервера bind в нем. Существует, однако, волшебный вариант с именем ddns-local-address4 что позволило мне указать другой IP-адрес сервера для DDNS из domain-name-server option.

я изменил привязку к послушай 127.0.0.1 и это в значительной степени работает (по крайней мере, bind теперь получает обновление). Однако это срабатывание на разрешения.

Sep 29 19:21:40 ubuntu named[31415]: client 127.0.0.1#2824/key rndc-key: signer "rndc-key" approved
Sep 29 19:21:40 ubuntu named[31415]: client 127.0.0.1#2824/key rndc-key: updating zone 'mydomain.ddns.net/IN': adding an RR at 'iPhone.mydomain.ddns.net' A 192.168.1.104
Sep 29 19:21:40 ubuntu named[31415]: client 127.0.0.1#2824/key rndc-key: updating zone 'mydomain.ddns.net/IN': adding an RR at 'iPhone.mydomain.ddns.net' TXT "316a52934f2adcaf4c95004e870a4c0f70"
Sep 29 19:21:40 ubuntu named[31415]: /etc/bind/zones/db.mydomain.ddns.net.jnl: open: permission denied
Sep 29 19:21:40 ubuntu named[31415]: client 127.0.0.1#2824/key rndc-key: updating zone 'mydomain.ddns.net/IN': error: journal open failed: unexpected error
Sep 29 19:21:40 ubuntu kernel: [212079.779512] audit: type=1400 audit(1475148100.710:25): apparmor="DENIED" operation="open" profile="/usr/sbin/named" name="/etc/bind/zones/db.mydomain.ddns.net.jnl" pid=31419 comm="named" requested_mask="w" denied_mask="w" fsuid=110 ouid=0

мои лучшие попытки, однако, дать bind достаточное разрешение на обновление этого файла не работает. Что это дает?

ps aux | grep named
bind     31415  0.0  0.2 429564 19572 ?        Ssl  19:10   0:00 /usr/sbin/named -f -u bind

ls -la /etc/bind/zones
total 16
drwxrwsr-x 2 root bind 4096 Sep 29 19:21 .
drwxr-sr-x 3 root bind 4096 Sep 29 19:07 ..
-rw-r--r-- 1 root bind  340 Sep 28 08:01 db.192.168
-rw-r--r-- 1 root bind  514 Sep 27 07:40 db.mydomain.ddns.net
-rw-rw-r-- 1 bind bind    0 Sep 29 19:21 db.mydomain.ddns.net.jnl

обновление 2

я изменил свой профиль apparmor для имени, и я больше не получаю ошибки разрешений.

когда я запрос bind непосредственно на 127.0.0.1, все работает.

однако, когда я запроса с помощью ubuntu, это не пересылка просмотров bind правильно.

что я делаю неправильно сейчас?

С unbound.conf

    local-zone: "1.168.192.in-addr.arpa." nodefault
    local-zone:   "168.192.in-addr.arpa." nodefault

    stub-zone:
            name:   "168.192.inaddr.arpa."
            stub-addr: 127.0.0.1

    stub-zone:
            name: "1.168.192.inaddr.arpa."
            stub-addr: 127.0.0.1

    stub-zone:
            name: "mydomain.ddns.net."
            stub-addr: 127.0.0.1
7
задан M Afifi
13.12.2022 23:16 Количество просмотров материала 2999
Распечатать страницу

1 ответ

в /etc/unbound/unbound.d/ это нарушало разрешение mydomain.ddns.net.. После того, как файл был удален, это решило проблему.

окончательная настройка

  1. dnscrypt-proxy прослушивание 127.0.2.1.
  2. bind прослушивание 127.0.0.1.
  3. unbound прослушивание 192.168.1.1, передает mydomain.ddns.net to bind С помощью stub-zone заявления в вопросе, имеет значение по умолчанию вперед к dnscrypt-proxy.
  4. isc-server-dhcp обновления bind С помощью ddns* опции dhcpd.conf
0
отвечен M Afifi 2022-12-15 07:04

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх