Kerberos/Samba не может присоединиться к Active Directory [DEBIAN 8]

Вопрос или проблема

У меня есть проблема, когда я пытаюсь присоединиться к своему домену.

Я смог успешно создать билет kerberos.

root@debian:~# kinit [email protected]
Пароль для [email protected]:
root@debian:~# klist
Кэш билетов: FILE:/tmp/krb5cc_0
Основной принцип: [email protected]

Действителен с       Истекает            Служебный принцип
26/04/2016 18:20:18  27/04/2016 04:20:18  krbtgt/[email protected]
        продлить до 27/04/2016 18:20:11

и когда я пытаюсь присоединиться к домену:

    root@debian:~# net ads join -k 
Не удалось присоединиться к домену: ошибка при поиске
    DC информации для домена 'ASP.DOMAIN' через rpc: {Время ожидания устройства} Указанная операция ввода-вывода на %hs не была завершена до истечения времени ожидания.

мой krb5.conf:

[libdefaults]
        default_realm = ASP.DOMAIN

# Следующие переменные krb5.conf только для MIT Kerberos.
        krb4_config = /etc/krb.conf
        krb4_realms = /etc/krb.realms
        kdc_timesync = 1
        ccache_type = 4
        forwardable = true
        proxiable = true

[realms]
        ASP.DOMAIN = {
                kdc = asp.domain
                admin_server = server.domain
                default_domain = DOMAIN
        }

[domain_realm]
        .asp.domain = ASP.DOMAIN
        asp.domain = ASP.DOMAIN

Мой smb.conf:

[global]
        security = ADS
        realm = ASP.DOMAIN
        password server = server.domain
        workgroup = asp.domain
        winbind separator = /
        idmap uid = 10000-20000
        idmap gid = 10000-20000
        winbind enum users = yes
        winbind enum groups = yes
        template homedir = /home/%D/%U
        template shell = /bin/bash
        client use spnego = yes
        winbind use default domain = yes
        domain master = no
        local master = no
        preferred master = no
        os level = 0

У меня нет идей: нет блокировок на моем файрволе. Билет в порядке. Я пробовал с 3 контроллерами домена.

PS: Домен – это переменная

EDIT: Я также пробовал сделать это с samba-tool

root@debian:~# samba-tool domain join ASP.DOMAIN MEMBER -UAdministrateur --real=ASP.DOMAIN
ERROR(runtime): uncaught exception - Соединение с SAMR pipe PDC для ASP.DOMAIN не удалось: соединение с DC не удалось: NT_STATUS_IO_TIMEOUT
  Файл "/usr/lib/python2.7/dist-packages/samba/netcmd/__init__.py", строка 175, в _run
    return self.run(*args, **kwargs)
  Файл "/usr/lib/python2.7/dist-packages/samba/netcmd/domain.py", строка 606, в run
    machinepass=machinepass)

EDIT 2: Присоединение в порядке? Но wbinfo -u не работает

root@debian:~# net ads join -U Administrateur
Введите пароль для Administrateur:
Используя короткое имя домена -- DOMAIN
Присоединился 'ASP.DOMAIN' к dns домену 'asp.domain'
DNS обновление для asp.kapia не удалось: ERROR_DNS_GSS_ERROR
Ошибка обновления DNS: NT_STATUS_UNSUCCESSFUL
root@debian:~# net ads testjoin
Присоединение в порядке

root@debian:~# wbinfo -u
не удалось получить сведения об интерфейсе winbind: WBC_ERR_WINBIND_NOT_AVAILABLE
не удалось получить имя домена winbind!
Ошибка при попытке найти доменных пользователей

EDIT 3:

введите описание изображения здесь
EDIT 4:

root@debian:~# service winbind status
● winbind.service - LSB: запуск демона Winbind
   Загружено: загружено (/etc/init.d/winbind)
   Активно: активно (вышел) с ср. 2016-04-27 16:16:00 CEST; 55s назад
  Процесс: 2222 ExecStart=/etc/init.d/winbind start (код=вышел, статус=0/УСПЕХ)

апрель 27 16:16:00 debian winbindd[2233]: #5 /usr/lib/x86_64-linux-gnu/libtevent.so.0(tevent_common_loop_timer_delay+0xcd) [0x7fbc2b11e1cd]
апрель 27 16:16:00 debian winbindd[2233]: #6 /usr/lib/x86_64-linux-gnu/libtevent.so.0(+0x91ca) [0x7fbc2b11f1ca]
апрель 27 16:16:00 debian winbindd[2233]: #7 /usr/lib/x86_64-linux-gnu/libtevent.so.0(+0x78e7) [0x7fbc2b11d8e7]
апрель 27 16:16:00 debian winbindd[2233]: #8 /usr/lib/x86_64-linux-gnu/libtevent.so.0(_tevent_loop_once+0x8d) [0x7fbc2b11a12d]
апрель 27 16:16:00 debian winbindd[2233]: #9 /usr/sbin/winbindd(main+0xb7c) [0x7fbc325cbc8c]
апрель 27 16:16:00 debian winbindd[2233]: #10 /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf5) [0x7fbc2a92db45]
апрель 27 16:16:00 debian winbindd[2233]: #11 /usr/sbin/winbindd(+0x25318) [0x7fbc325cc318]
апрель 27 16:16:00 debian winbindd[2233]: [2016/04/27 16:16:00.971185,  0] ../source3/lib/dumpcore.c:318(dump_core)
апрель 27 16:16:00 debian winbindd[2233]: создание дампа в /var/log/samba/cores/winbindd
апрель 27 16:16:00 debian winbindd[2233]:

У вас установлено значение default_realm, но вы также можете изменить ваш krb5.conf следующим образом:

[libdefaults]
    default_realm = ASP.DOMAIN
    dns_lookup_realm = true
    dns_lookup_kdc = true

У меня есть эти записи в моем smb.conf для winbind, но на самом деле я сейчас использую sssd:

winbind trusted domains only = no
winbind use default domain = yes
; winbind enum users = yes            
; winbind enum groups = yes

winbind nested groups = yes
winbind expand groups = 4

winbind offline logon = yes
winbind refresh tickets = yes

winbind normalize names = no

Настройки winbind enum * могут замедлить всё. Попробуйте и посмотрите, будет ли это хорошо работать для вас или нет. Это одна из причин, почему я перешел на sssd.

Я заметил, что при подключении клиента Samba к домену AD я всегда получаю ошибку обновления DNS. Клиент добавляется корректно, но не может обновить свою запись DNS. (Поскольку большинство моих клиентов на самом деле являются серверами на базе Linux со статическими IP-адресами, это меня никогда не беспокоило.)

Ответ или решение

Решение проблемы: Не удается присоединиться к Active Directory через Kerberos/Samba на Debian 8

При попытке присоединить Debian 8 к домену Active Directory с использованием Kerberos и Samba может возникнуть проблема, описанная вами. В этой статье мы подробно рассмотрим возможные причины возникновения данной проблемы и предложим методы ее решения.

1. Проверка конфигурации Kerberos

Ваша конфигурация krb5.conf выглядит практически корректно. Однако для улучшения распознаваемости KDC и повышения надежности, рекомендуется добавить следующие строки:

[libdefaults]
    default_realm = ASP.DOMAIN
    dns_lookup_realm = true
    dns_lookup_kdc = true

Добавление dns_lookup_realm и dns_lookup_kdc позволит Kerberos автоматически разрешать домены и KDC через DNS.

2. Настройки Samba

Проверьте ваш файл конфигурации smb.conf. Убедитесь, что все параметры указаны правильно. Особенно внимательно отнеситесь к следующим настройкам:

[global]
    security = ADS
    realm = ASP.DOMAIN
    workgroup = ASP
    password server = server.domain
    idmap uid = 10000-20000
    idmap gid = 10000-20000
    winbind use default domain = yes

Обратите внимание на разницу между realm и workgroup. Рабочая группа обычно соответствует краткому имени домена без суффикса .DOMAIN.

Кроме того, если ваш сервер имеет статический IP, убедитесь, что DNS настроен правильно и разрешает имя вашего KDC.

3. Тестирование связи с контроллерами домена

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

ping server.domain
nslookup server.domain

Если вы видите проблемы с разрешением DNS, это может быть причиной ошибки.

4. Статус службы Winbind

Убедитесь, что служба winbind запущена и работает должным образом. Выполните команду:

service winbind status

Если она не активна или имеет ошибки, попробуйте перезапустить ее:

service winbind restart

Следите за логами в /var/log/samba/, чтобы обнаружить дополнительные ошибки.

5. Проблемы с обновлением DNS

Вы упомянули, что ошибка ERROR_DNS_GSS_ERROR возникает при попытке обновления DNS. Это часто связано с отсутствием достаточных прав у учётной записи, используемой для подключения. Убедитесь, что учетная запись имеет права на обновление DNS записей.

В случае, если обновление DNS не критично, можно игнорировать эту ошибку, особенно для серверов с фиксированными IP-адресами.

6. Использование SSSD вместо Winbind

Рассмотрите возможность перехода с winbind на sssd. Некоторые администраторы сообщают о более стабильной работе sssd в средах с Active Directory. Настройка может выглядеть следующим образом:

[sssd]
services = nss, pam
config_file_version = 2
domains = ASP.DOMAIN

[domain/ASP.DOMAIN]
id_provider = ad
access_provider = ad

Заключение

Соблюдение вышеуказанных рекомендаций должно помочь вам успешно присоединить Debian 8 к Active Directory. Если проблема сохраняется, обратитесь к логам Samba и Kerberos для детального анализа. Помните, что в каждом случае необходимо учитывать особенности вашей сети и конфигурации. Надеюсь, данный документ сможет помочь вам решить возникшую проблему и успешно интегрировать ваш Linux-сервер в среду Active Directory.

Оцените материал
Добавить комментарий

Капча загружается...