Главная
Главная Руководства Ubuntu › Ставим и настраиваем bind9 на Ubuntu



Автор:

Статья опубликована: 2022-12-27 18:09:28
Последние правки: 2022-12-27 21:01:34

bind9, он же named - самостоятельный DNS сервер. Установим master DNS и настроим одну зону на Ubuntu.

  • Что у нас есть?
    # cat /etc/os-release
    ...
    NAME="Ubuntu"
    VERSION="20.04.5 LTS (Focal Fossa)"
    ...
    # 
    


  • Установка
    # apt-get update
    # apt-get dist-upgrade
    # apt install bind9 bind9utils
    


  • Настройка

    Каталог, куда всё установилось: /etc/bind/. Добавляем свою зону в /etc/bind/named.conf.local
    zone "test.com" {
            type master;
            file "/etc/bind/master/test.com";
    };
    
    В блок options файла /etc/bind/named.conf.options добавляем свои настройки:
    options {
    .....
            version none;
            server-id none;
            hostname none;
    
            allow-recursion {
                    none;
            };
    };
    
    И закомментируем строку dnssec-validation auto;


  • Файл с зоной test.com

    /etc/bind/master/test.com
    $TTL    3h
    
    @       IN      SOA     ns0 root  (
                                    2022122701      ; Serial
                                    3600            ; Refresh
                                    900             ; Retry
                                    1209600         ; Expire
                                    3600 )          ; Minimum
            IN      NS      ns0
            IN      NS      ns1
    
            IN      A       3.3.3.3
            IN      A       4.4.4.4
    
            IN      AAAA    fe80::5555:5555:5555:3
            IN      AAAA    fe80::4444:4444:4444:4
    
    ;$ORIGIN @
    $TTL    1h
    ns0             IN      A       3.3.3.3
    ns0             IN      AAAA    fe80::5555:5555:5555:3
    ns1             IN      A       4.4.4.4
    ns1             IN      AAAA    fe80::5555:5555:5555:4
    
    www             IN      A       3.3.3.3
    www             IN      AAAA    fe80::5555:5555:5555:3
    www             IN      A       4.4.4.4
    www             IN      AAAA    fe80::5555:5555:5555:4
    
    Самые внимательные заметили, что на www.test.com приходится аж 4 разных ip. Это называется round-robin и используется для распределения нагрузки на сайт по нескольким серверам.
    P.S. Все ip-адреса являются вымышленными.


  • Запуск
    # systemctl enable named
    # systemctl restart named
    # systemctl status named
    


  • Master - Slave
    Бывает так, что нам хочется не один, а несколько dns-серверов и, чтобы не менять данные в файле одной и той же зоны на каждом сервере, один из них делается master, а остальные - slave, на них master передает все изменения в файле зоны. Настройки отличаются совсем чуть-чуть.

    Файл /etc/bind/named.conf.local

    master
    zone "test.com" {
            type master;
            file "/etc/bind/master/test.com";
            allow-transfer { 4.4.4.4; fe80::5555:5555:5555:4; };
            allow-update { 4.4.4.4; fe80::5555:5555:5555:4; };
            notify yes;
    };
    
    slave

    Делаем директорию /etc/bind/slave и делаем владельцем пользователя bind. Файл /etc/bind/slave/test.com НЕ СОЗДАЕМ.
    zone "test.com" {
            type master;
            file "/etc/bind/slave/test.com";
            masters { 3.3.3.3; fe80::5555:5555:5555:3; };
            allow-transfer { none; };
    };