Контроллер домена на Linux — Sernet
22 января 2015 kna
А теперь к полезному: сейчас я расскажу как поднять контроллер домена на Linux дистрибутиве — Sernet. В отличие от Novell/SUSE Excellent Samba4 Appliance, установка которого описана тут, этот работает у меня без глюков! Тьфу-тьфу-тьфу!!! Итак,…
1. Качай дистрибутив тут.
2. Устанавливаем.
a. Если устанавливаете на MS Hyper-V, то при автоматической установке возникнут проблемы. Избавиться от них можно так: SerNet Samba4 и Hyper-V
b. Рекомендую устанавливать через Advanced options -> Expert Install. На непонятные вопросы отвечать просто нажатием Enter.
c. Настройку сети лучше делать не с помощью dhcp, а вручную. Т.к. это всё-таки контроллер домена, ip должен быть статическим.
3. После установки получаем это:
a. Жмём Start Setup
b. Hostname. Указываем имя создаваемого контроллера домена. DC
c. Realm. Указываем полное имя домена. PBD.NET
d. Domain name. Указываем то же самое, только без окончания. PBD
e. Administrator password. Указываем пароль администратора (логин при этом будет root)
f. Forwarder DNS. После настройки домен-контроллера он сам будет выступать в качестве DNS сервера, но только для локальных адресов. Поэтому если на клиентах указывать DNS — ip адрес контроллера домена, то интернет работать не будет. Для работы интернета на клиентах нужно будет ещё добавить вторичный DNS-сервер, например 8.8.8.8. Опция Forwarder DNS позволяет избежать назначения двух DNS серверов на клиентах. Если служба DNS контроллера домена не может разрешить DNS-запрос, она обрацается к DNS-серверу в сети интернет. Поэтому выбираем Yes и вписываем туда DNS-сервер в интернете. Например, 8.8.8.8 или 91.222.240.250.
g. Zarafa AD schema extensions. Фиг знает что это, и оно скорее всего никому не надо, но я зачем-то установил.
h. Устанавливаем пароль для пользователя sernet
i. Autologin. Спрашивает Хотите ли Вы отключить автоматический вход для пользователя sernet??? Ясен пень — ДА!
Поздравляю, почти готово!!!
4. Теперь попробуем добавить компьютер в домен.
Для того чтобы можно было включить компьютер в домен, с него должен пинговаться контроллер домена по имени! В нашем случае: ping PBD. Если не пингуется, в настройках сети установите DNS сервер ip_адрес_контроллера_домена, а тот что был раньше сделать альтернативным (Если Вы правильно настроили Forwarder DNS, то альтернативный можете не указывать).
При вхождении в состав домена, потребуется ввести имя пользователя и пароль. Пользователь: Administrator, пароль — тот, что Вы вводили для пользователя root.
Если всё правильно, компьютер входит в домен и перезагружается.
5. Самое время войти под учетной записью администратора домена. Для этого вписываем Administrator и соответствующий пароль (от root контроллера домена). Домен должен быть выбран PBD.
6. Для управления всем этим чудом, нужно установить windows administrative tools.
После установки идём Панель управления -> Программы -> Программы и компоненты -> Включение или отключение компонентов Windows. Там выбираем средства удаленного администрирования полностью, жмём ОК!
Внимание!!!
Предупреждаю по поводу откатов контроллера домена!
Производя откат, или иные операции влекущие за собой изменение времени, обязательно проверяйте синхронизацию времени контроллера домена с временем интернета!!!
2
(Просмотрено 654 раз, 1 раз за сегодня)
Категория: Active Directory
Настройка авторизации через Kerberos
Начнём с настройки авторизации в домене через протокол Kerberos. Вам потребуется изменить файл . В общем случае он выглядит так:
default_realm = DOMAIN.COM kdc_timesync = 1 ccache_type = 4 forwardable = true proxiable = true v4_instance_resolve = false v4_name_convert = { host = { rcmd = host ftp = ftp } plain = { something = something-else } } fcc-mit-ticketflags = true DOMAIN.COM = { kdc = dc kdc = dc2 admin_server = dc default_domain = DOMAIN.COM } .domain.com = DOMAIN.COM domain.com = DOMAIN.COM krb4_convert = false krb4_get_tickets = false
Вам, конечно, нужно изменить на ваш домен и и на ваши доменконтроллеры. Кстати, возможно вам понадобится написать полные имена доменконтроллеров и . Поскольку у меня прописан домен поиска в DNS, то мне это делать не нужно.
Обратите особое внимание на регистр написания имени домена — везде, где домен написан в верхнем регистре, его обязательно нужно писать именно в верхнем регистре. Иначе волшебным образом ничего может не заработать.. Это не все возможные опции настройки Kerberos, только основные
Однако их обычно достаточно
Это не все возможные опции настройки Kerberos, только основные. Однако их обычно достаточно.
Теперь настало время проверить, что мы можем авторизоваться в домене. Для этого выполните команду
kinit [email protected]
Вместо username естественно стоит вписать имя существующего пользователя домена.
Имя домена необходимо писать заглавными буквами!
Если вы не получили никаких ошибок — значит вы настроили всё верно и домен отдаёт вам билет Kerberos. Кстати, некоторые распространённые ошибки перечислены чуть ниже.
Убедиться в том, что билет получен, можно выполнив команду
klist
Удалить все билеты (они вам вообще говоря не нужны) можно командой
kdestroy
Итак, будем считать, что авторизацию вы настроили, пора настроить непосредственно вход в домен, об этом после списка распространённых ошибок .
Распространённые ошибки kinit
kinit(v5): Clock skew too great while getting initial credentials
Это значит, что у вашего компьютера не синхронизировано время с доменконтроллером (см. выше).
kinit(v5): Preauthentication failed while getting initial credentials
Вы ввели неверный пароль.
kinit(v5): KDC reply did not match expectations while getting initial credentials
Самая странная ошибка. Убедитесь, что имя realm в , а так же домен в команде введены большими буквами:
DOMAIN.COM = { # ...
kinit [email protected]
kinit(v5): Client not found in Kerberos database while getting initial credentials
Указанного пользователя не существует в домене.
Настройка сети и hostname.
Как правило, настройки сети и hostname задаются при установке CentOS, но если требуется изменить:
Способ 1. Через мастер настройки Network Manager:
nmtui
Способ 2. Через редактирование текстовых конфигураций:
Опеределяем имя файла с конфигурацией интерфейса:
# nmcli dev statusDEVICE TYPE STATE CONNECTIONeno16777984 ethernet connected eno16777984
или
nmcli con shNAME UUID TYPE DEVICEeno16777984 c78d41cc-6eee-44d1-a77a-ba416e8e8727 802-3-ethernet Wired connection 1 e23e01c4-7eb0-4018-89f0-2b9bf27d1427 802-3-ethernet # ls -l /etc/sysconfig/network-scripts/ifcfg-*-rw-r--r--. 1 root root 321 Mar 4 09:02 /etc/sysconfig/network-scripts/ifcfg-eno16777984-rw-r--r--. 1 root root 254 Sep 16 14:51 /etc/sysconfig/network-scripts/ifcfg-lo-rw-r--r--. 1 root root 327 Mar 4 08:26 /etc/sysconfig/network-scripts/ifcfg-Wired_connection_1
Значит искомый файл: /etc/sysconfig/network-scripts/ifcfg-eno16777984. Открываем:
nano /etc/sysconfig/network-scripts/ifcfg-eno16777984
У меня сетевых интерфейса два и настройки выглядят так:
HWADDR=00:0C:29:E4:6F:EDTYPE=EthernetBOOTPROTO=staticDEFROUTE=yesIPV4_FAILURE_FATAL=noIPV6INIT=noIPV6_AUTOCONF=noIPV6_DEFROUTE=yesIPV6_FAILURE_FATAL=noNAME=”Wired connection 1"UUID=e23e01c4–7eb0–4018–89f0–2b9bf27d1427ONBOOT=yesIPADDR=192.168.1.202PREFIX=24GATEWAY=192.168.1.2IPV6_PEERDNS=yesIPV6_PEERROUTES=yes
и
TYPE=EthernetBOOTPROTO=staticDEFROUTE=yesIPV4_FAILURE_FATAL=noIPV6INIT=noIPV6_AUTOCONF=noIPV6_DEFROUTE=yesIPV6_FAILURE_FATAL=noNAME=eno16777984UUID=c78d41cc-6eee-44d1-a77a-ba416e8e8727DEVICE=eno16777984ONBOOT=yesDHCPV6C=yesIPADDR=192.168.0.202PREFIX=24GATEWAY=192.168.0.1IPV6_PRIVACY=noDNS1=192.168.0.1
Учтите, что служба network парсит все, что лежит в данной папке и начинается с ifcfg-*, добавляя эти настройки ввиде дополнительных IP-адресов к данному адаптеру. Например, если создать два файла: ifcfg-eno1 и ifcfg-eno1–2, то интерфейс будет иметь два айпи адреса и настройки содержащиеся в этих файлах.
Разобраться с настройками можно с помощью команды:
nmcli con sh
или
nmcli con sh
Зачастую при использовании AD DC в Samba возникают проблемы с поддержкой TCP/IP v6, поэтому отключаем поддержку :
echo net.ipv6.conf.all.disable_ipv6=1 > /etc/sysctl.d/disableipv6.conf
Применяем настройки ядра:
sysctl -p
и перезапускаем сеть:
/etc/init.d/network restartили:service network restartили:systemctl restart network
Устанавливаем hostname:
# nano /etc/sysconfig/networkHOSTNAME=dc
Поумолчанию net-tools не включены в CentOS7 Minimal. Устанавливаем, если нужно и проверяем настройки сети:
yum -y install net-toolsifconfig -a
Настройка SSL.
Active Directory испльзует LDAP (Lightweight Directory Access Protocol), шифрование которого по умолчанию отключено. Для обеспечения безопасности необходимо включить SSL/TSL. Сам сертификат был уже создан, когда поднимался домен:
Поумолчанию сертификаты действительны в течение 700 дней с момента их создания. Чтобы использовать их в конфигурацию Samba следует добавить строки:
# nano /usr/local/samba/etc/smb.conf tls enabled = yes tls keyfile = tls/key.pem tls certfile = tls/cert.pem tls cafile = tls/ca.pem
и перезапустить Samba:
service samba4 restart
Использование самозаверяющегося (self-signed) сертификата.
# cd /usr/local/samba/private/tls/
Создайте ключь длинной 2048 байт сроком действия 9999 дней. Заполните все поля, особенно FQDN-имя вашего контроллера-домена:
# openssl req -newkey rsa:2048 -keyout myKey.pem -nodes -x509 -days 9999 -out myCert.pemGenerating a 2048 bit RSA private key.............+++..+++writing new private key to ‘myKey.pem’-----You are about to be asked to enter information that will be incorporatedinto your certificate request.What you are about to enter is what is called a Distinguished Name or a DN.There are quite a few fields but you can leave some blankFor some fields there will be a default value,If you enter ‘.’, the field will be left blank.-----Country Name (2 letter code) :RUState or Province Name (full name) []:My CityLocality Name (eg, city) :My LocationOrganization Name (eg, company) :My CompanyOrganizational Unit Name (eg, section) []:My UnitCommon Name (eg, your name or your server’s hostname) []:dc.domain.localEmail Address []:[email protected]
Далее следует задать права:
# chmod 600 myKey.pem
добавить строки в конфигурацию:
# nano /usr/local/samba/etc/smb.conftls enabled = yestls keyfile = tls/myKey.pemtls certfile = tls/myCert.pemtls cafile =
и перезапустите Samba:
service samba4 restart
Использование доверенного (trusted) сертификата.
# cd /usr/local/samba/private/tls/# openssl genrsa -out myKey.pem 2048
Аналогично заполняем поля
Важно задать в поле “Common Name” FQDN домен контроллра (hostname -f). Добавляем строки в конфигурацию:
# nano /usr/local/samba/etc/smb.conftls enabled = yestls keyfile = tls/myKey.pemtls certfile = tls/myCert.pemtls cafile = tls/myIntermediate .pem #не заполнять, если не требуется
и перезапускаем Samba.
Проверка сертификата.
Просмотреть данные о сертификате можно следюущей командой:
# openssl x509 -in /usr/local/samba/private/tls/myCert.pem -noout -text
Проверка сертификата локально:
# openssl verify /usr/local/samba/private/tls/myCert.pem
Есть используется CA, то используйте команду:
# openssl verify /usr/local/samba/private/tls/myCert.pem -CApath /usr/local/samba/private/tls/ca-file.pem
Проверка сертфиката удаленно через TCP:
# openssl s_client -showcerts -connect dc.domain.local:636
Если используется, CA, то:
# openssl s_client -showcerts -connect localhost:636 -CApath /usr/local/samba/private/tls/ca-file.pem
LDAP
Для проверки доступности и работоспособности службы LDAP можно запросить отчет о репликации:
sudo samba-tool drs showrepl
Default-First-Site-Name\DC2 DSA Options: 0x00000001 DSA object GUID: 303f45ca-3a45-4169-ad71-0903ac3e7ab9 DSA invocationId: 4750cc0a-ba23-4492-a1cd-3c66f5b3b073 ==== INBOUND NEIGHBORS ==== CN=Configuration,DC=samdom,DC=example,dc=com Default-First-Site-Name\DC1 via RPC DSA object GUID: ce07ab44-222f-4882-b4f5-ed382f6b2047 Last attempt @ Fri Dec 6 10:27:20 2019 MSK was successful 0 consecutive failure(s). Last success @ Fri Dec 6 10:27:20 2019 MSK DC=samdom,DC=example,dc=com Default-First-Site-Name\DC1 via RPC DSA object GUID: ce07ab44-222f-4882-b4f5-ed382f6b2047 Last attempt @ Fri Dec 6 10:27:20 2019 MSK was successful 0 consecutive failure(s). Last success @ Fri Dec 6 10:27:20 2019 MSK DC=DomainDnsZones,DC=samdom,DC=example,dc=com Default-First-Site-Name\DC1 via RPC DSA object GUID: ce07ab44-222f-4882-b4f5-ed382f6b2047 Last attempt @ Fri Dec 6 10:27:20 2019 MSK was successful 0 consecutive failure(s). Last success @ Fri Dec 6 10:27:20 2019 MSK CN=Schema,CN=Configuration,DC=samdom,DC=example,dc=com Default-First-Site-Name\DC1 via RPC DSA object GUID: ce07ab44-222f-4882-b4f5-ed382f6b2047 Last attempt @ Fri Dec 6 10:27:20 2019 MSK was successful 0 consecutive failure(s). Last success @ Fri Dec 6 10:27:20 2019 MSK DC=ForestDnsZones,DC=samdom,DC=example,dc=com Default-First-Site-Name\DC1 via RPC DSA object GUID: ce07ab44-222f-4882-b4f5-ed382f6b2047 Last attempt @ Fri Dec 6 10:27:20 2019 MSK was successful 0 consecutive failure(s). Last success @ Fri Dec 6 10:27:20 2019 MSK ==== OUTBOUND NEIGHBORS ==== CN=Configuration,DC=samdom,DC=example,dc=com Default-First-Site-Name\DC1 via RPC DSA object GUID: ce07ab44-222f-4882-b4f5-ed382f6b2047 Last attempt @ Fri Dec 6 08:27:31 2019 MSK was successful 0 consecutive failure(s). Last success @ Fri Dec 6 08:27:31 2019 MSK DC=samdom,DC=example,dc=com Default-First-Site-Name\DC1 via RPC DSA object GUID: ce07ab44-222f-4882-b4f5-ed382f6b2047 Last attempt @ Thu Dec 5 17:24:10 2019 MSK was successful 0 consecutive failure(s). Last success @ Thu Dec 5 17:24:10 2019 MSK DC=DomainDnsZones,DC=samdom,DC=example,dc=com Default-First-Site-Name\DC1 via RPC DSA object GUID: ce07ab44-222f-4882-b4f5-ed382f6b2047 Last attempt @ Thu Dec 5 17:24:10 2019 MSK was successful 0 consecutive failure(s). Last success @ Thu Dec 5 17:24:10 2019 MSK CN=Schema,CN=Configuration,DC=samdom,DC=example,dc=com Default-First-Site-Name\DC1 via RPC DSA object GUID: ce07ab44-222f-4882-b4f5-ed382f6b2047 Last attempt @ Thu Dec 5 17:24:10 2019 MSK was successful 0 consecutive failure(s). Last success @ Thu Dec 5 17:24:10 2019 MSK DC=ForestDnsZones,DC=samdom,DC=example,dc=com Default-First-Site-Name\DC1 via RPC DSA object GUID: ce07ab44-222f-4882-b4f5-ed382f6b2047 Last attempt @ Thu Dec 5 17:24:10 2019 MSK was successful 0 consecutive failure(s). Last success @ Thu Dec 5 17:24:10 2019 MSK ==== KCC CONNECTION OBJECTS ==== Connection -- Connection name: 49744c99-ca35-4811-af8f-73119e8b31f5 Enabled : TRUE Server DNS name : DC1.windomain.le Server DN name : CN=NTDS Settings,CN=DC1,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=samdom,DC=example,dc=com TransportType: RPC options: 0x00000001 Warning: No NC replicated for Connection!
При проверке может выдаваться следующее предупреждение:
Кроме этого, для проверки корректности работы репликации каталогов, добавьте нового пользователя на ранее установленном контроллере домена, и убедитесь, что этот пользователь автоматически появился на новом контроллере.
Настройка Samba и вход в домен
Для того, чтобы войти в домен, необходимо прописать правильные настройки в файле . На данном этапе вас должны интересовать только некоторые опции из секции . Ниже — пример части файла конфигурации Samba с комментариями по поводу значения важных параметров:
# Эти две опции нужно писать именно в заглавном регистре, причём workgroup без # последней секции после точки, а realm - полное имя домена workgroup = DOMAIN realm = DOMAIN.COM # Эти две опции отвечают как раз за авторизацию через AD security = ADS encrypt passwords = true # Просто важные dns proxy = no socket options = TCP_NODELAY # Если вы не хотите, чтобы самба пыталась при случае вылезти в лидеры в домене или рабочей группе, # или даже стать доменконтроллером, то всегда прописывайте эти пять опций именно в таком виде domain master = no local master = no preferred master = no os level = 0 domain logons = no # Отключить поддержку принтеров load printers = no show add printer wizard = no printcap name = /dev/null disable spoolss = yes
После того, как вы отредактируете выполните команду
testparm
Она проверит вашу конфигурацию на ошибки и выдаст суммарную сводку о нём:
# testparm Load smb config files from /etc/samba/smb.conf Loaded services file OK. Server role: ROLE_DOMAIN_MEMBER Press enter to see a dump of your service definitions
Как видно мы задали правильные параметры для того, чтобы наш компьютер стал членом домена. Теперь пора попытаться непосредственно войти в домен. Для этого введите команду:
net ads join -U username -D DOMAIN
И в случае успеха вы увидите что-то похожее на:
# net ads join -U username -D DOMAIN Enter username's password: Using short domain name -- DOMAIN Joined 'SMBSRV01' to realm 'domain.com'
Используемые параметры команды net
: Обязательный параметр, вместо необходимо подставить имя пользователя с правами администратора домена, и указать пароль.
: — собственно сам домен, домен можно и не указывать, но лучше всё же это всегда делать — хуже не будет.
: , можно не указывать, но бывают случаи когда автоматически сервер не находит контроллер домена.
: В AD часто используется OU (Organizational Unit), есть в корне домена OU = Office, в нем OU = Cabinet, чтобы сразу добавить в нужный можно указать так: sudo net ads join -U username createcomputer=«Office/Cabinet».
Если больше никаких сообщений нет — значит всё хорошо. Попробуйте попинговать свой компьютер по имени с другого члена домена, чтобы убедиться, что в домене всё прописалось так, как надо.
Так же можно набрать команду:
net ads testjoin
Если все хорошо, можно увидеть:
#net ads testjoin Join is OK
Но иногда после сообщения о присоединении к домену выдаётся ошибка наподобие:
DNS update failed!
Это не очень хорошо, и в этом случае рекомендуется ещё раз прочитать раздел про настройку DNS чуть выше и понять, что же вы сделали не так. После этого нужно удалить компьютер из домена и попытаться ввести его заново. Если вы твердо уверены, что всё настроили верно, а DNS всё равно не обновляется, то можно внести вручную запись для вашего компьютера на ваш DNS сервер и всё будет работать. Конечно, если нет никаких других ошибок, и вы успешно вошли в домен. Однако лучше всё же разберитесь, почемуDNS не обновляется автоматически. Это может быть связано не только с вашим компьютером, но и с некорректной настройкой AD.
Прежде чем выяснять, почему же не обновляется DNS, не забудьте перезагрузить компьютер после введения в домен! Вполне возможно, что это решит проблему.
Если всё прошло без ошибок, то поздравляем, вы успешно вошли в домен! Можете заглянуть в AD и убедиться в этом. Кроме того хорошо бы проверить, что вы можете видеть ресурсы в домене. Для этого установите :
sudo aptitude install smbclient
Теперь можно просматривать ресурсы компьютеров домена. Но для этого нужно иметь билет kerberos, т.е. если мы их удалили, то получаем опять через kinit (см. выше). Посмотрим какие ресурсы предоставлены в сеть компьютером :
smbclient -k -L workstation
Вы должны увидеть список общих ресурсов на этом компьютере.
Настройка сервера
Настройка Samba-сервера выполняется в несколько этапов. Так как все данные пользователей и машин хранятся в LDAP, вначале неободимо выполнить настройку OpenLDAP-сервера, а затем — настройку LDAP для хранения учётных записей пользователей Linux. Это необходимо для работы Linux-клиентов. После этого можно настроить Samba-сервер.
Настройка Samba
Перед настройкой Samba-сервера настройте LDAP для хранения учётных записей Unix-пользователей. Для этого выполните:
cl-setup unix
* ПРЕДУПРЕЖДЕНИЕ: Выполнение этой программы изменит конфигурационные файлы и базу данных сервиса LDAP. Если вы готовы продолжить выполнение программы, введите 'yes', если нет - 'no': yes * Добавлен ldif файл ... * Unix сервис сконфигурирован ...
Для настройки Samba-сервера выполните:
cl-setup samba
* ПРЕДУПРЕЖДЕНИЕ: Выполнение этой программы изменит конфигурационные файлы Samba сервиса. Если вы готовы продолжить выполнение программы, введите 'yes', если нет - 'no': yes * Добавлен ldif файл ... * Запускается Samba ... * Пользователь client добавлен в Unix сервис * Пользователь client добавлен в Samba сервис * Пользователь admin добавлен в Unix сервис * Пользователь admin добавлен в Samba сервис * Samba сервис сконфигурирован ...
В качестве параметров вы можете указать netbios и workgroup.
- — устанавливает имя NetBIOS, под которым будет работать Samba сервер. По умолчанию оно устанавливается равным первому компоненту DNS-имени хоста.
- — имя домена или рабочей группы NT для компьютеров, которые будут получать доступ к этому серверу.
Задайте пароль администратора (пользователь с логином ):
cl-passwd —smb admin samba
Новый пароль:
Повторите новый пароль:
* Пароль пользователя admin Samba сервиса изменен
Заметка
Пользователь используется только для ввода клиентского компьютера с ОС Windows в домен. Admin не имеет домашней директории.
Если нужен администратор домена для управления компьютерами на Windows, создайте нового пользователя и включите его в доменную группу .
Пример создания администратора домена:
cl-useradd -p —gid «Domain Admins» -c «Администратор домена» d_admin samba
Новый SMB пароль: Повторите новый SMB пароль: * Пользователь d_admin добавлен в Unix сервис * Пользователь d_admin добавлен в Samba сервис
Добавление и удаление пользователей
Для работы с пользователями используйте аналоги стандартных Unix-команд: , , , , , , . Синтаксис этих команд будет во многом совпадать с одноименными системными утилитами.
Для примера добавьте пользователя test и задайте ему пароль:
cl-useradd test samba
* Пользователь test добавлен в Unix сервис * Пользователь test добавлен в Samba сервис
cl-passwd test samba
Новый пароль: Повторите новый пароль: * Пароль пользователя Unix сервиса изменен * Пароль пользователя test Samba сервиса изменен
Проверка зон
Следующие примеры запрашивают у сервиса DNS информацию о локальной машине (127.0.0.1).
Команда:
host -t A localhost 127.0.0.1
Проверка реверсивной зоны 0.0.127.in-addr.arpa.
Команда:
host -t PTR 127.0.0.1 127.0.0.1
Настройка модуля BIND9_DLZ
Во время назначения Samba на роль контроллера домена AD автоматически создаётся конфигурационный файл /var/lib/samba/bind-dns/named.conf службы BIND9:
Нажмите, чтобы развернуть
# This DNS configuration is for BIND 9.8.0 or later with dlz_dlopen support. # # This file should be included in your main BIND configuration file # # For example with # include «/var/lib/samba/bind-dns/named.conf»; # # This configures dynamically loadable zones (DLZ) from AD schema # Uncomment only single database line, depending on your BIND version # dlz «AD DNS Zone» { # For BIND 9.8.x # database «dlopen /usr/lib/x86_64-linux-gnu/samba/bind9/dlz_bind9.so»; # For BIND 9.9.x # database «dlopen /usr/lib/x86_64-linux-gnu/samba/bind9/dlz_bind9_9.so»; # For BIND 9.10.x # database «dlopen /usr/lib/x86_64-linux-gnu/samba/bind9/dlz_bind9_10.so»; # For BIND 9.11.x database «dlopen /usr/lib/x86_64-linux-gnu/samba/bind9/dlz_bind9_11.so»; };
Для включения модуля BIND9_DLZ:
Добавить команду включения в конфигурационый файл /etc/bind/named.conf:
Определить используемую версию bind командой:
sudo named -v
/var/lib/samba/bind-dns/named.conf, и убедиться, что раскомментировна строка, соответствующая используемой версии
Разрешить доступ к файлу /var/lib/samba/bind-dns/named.conf:
sudo named-checkconf
sudo systemctl restart bind9
Ошибка /usr/sbin/samba_dnsupdate: ; TSIG error with server: tsig verify failure
Сообщения в системном журнале вида «/usr/sbin/samba_dnsupdate: update failed: REFUSED» и связанные с ними сообщения об ошибках обновления DNS можно игнорировать.
Ошибка «status: FORMERR» при обращении к DNS-серверу Windows AD
Пример:
Ошибка возникает из-за того, что DNS-сервер Windows AD, вопреки действующим стандартам, считает ошибкой низвестные ему опции запроса (стандарты требуют просто игнорировать такие опции).
Вариант обхода — использовать в команде dig опцию +nocookie (или +noends):
dig SRV _ldap._tcp.windomain.ru +nocookie
; > DiG 9.11.3-1ubuntu1.5-Debian > SRV _ldap._tcp.windomain.ru +nocookie;; global options: +cmd;; Got answer:;; ->>HEADER;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 3
;; OPT PSEUDOSECTION:; EDNS: version: 0, flags:; udp: 4000;; QUESTION SECTION:;_ldap._tcp.windomain.ru. IN SRV
;; ANSWER SECTION:_ldap._tcp.windomain.ru. 600 IN SRV 0 100 389 swin.windomain.ru._ldap._tcp.windomain.ru. 900 IN SRV 0 100 389 ad.windomain.ru.
;; ADDITIONAL SECTION:swin.windomain.ru. 3600 IN A 10.0.2.10ad.windomain.ru. 900 IN A 10.0.2.250
;; Query time: 0 msec;; SERVER: 10.0.2.10#53(10.0.2.10);; WHEN: Fri Dec 06 08:58:06 MSK 2019;; MSG SIZE rcvd: 156