Troubleshooting Samba Domain Members

Материал из Русский WINE
Перейти к: навигация, поиск

Устранение неполадок участников домена Samba

Общее

Настройка уровня логов Samba

Первым делом настройте уровень логов Samba.

Команде net не удается подключиться по адресу 127.0.0.1

Используя настройки по-умолчанию, команда net подключается к адресу 127.0.0.1. Если Samba не слушает петлевой интерфейс, подключение не удастся. Например:

# net rpc rights list -U administrator
Enter administrator's password:
Could not connect to server 127.0.0.1
Connection failed: NT_STATUS_CONNECTION_REFUSED

Для решения данной проблемы, настройте Samba на дополнительное прослушивание петлевого интерфейса. Для подробностей см. Настройка Samba для привязки к определенным интерфейсам.

В качестве временного решения проблемы, можно использовать ключ -I IP_address или -S host_name после команды net.

Участник леса домена в лесу ActiveDirectory

Устранение неполадок при вводе в домен

Домен DNS не настроен. Не удается выполнить обновление DNS. (No DNS domain configured. Unable to perform DNS Update.)

Если при присоединении хоста к Active Directory (AD) команда net не может обновить DNS:

# net ads join -U administrator
Enter administrator's password:
Using short domain name -- SAMDOM
Joined 'AD-Member' to dns domain 'samdom.example.com'
No DNS domain configured for AD-Member. Unable to perform DNS Update.
DNS update failed: NT_STATUS_INVALID_PARAMETER

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

После присоединения клиента к домену команда net находит полное доменное имя (FQDN) с помощью библиотек переключателя службы имен (NSS). Если полное доменное имя не может быть разрешено, например, с помощью DNS или файла /etc/hosts, обновление DNS завершается ошибкой.

Решение проблемы:

Добавьте IP-адрес и полное доменное имя в файл /etc/hosts. Например:

10.99.0.5     AD-Member.samdom.example.com     AD-Member

Запустите команду net ads join снова.

Если динамические обновления DNS по-прежнему не работают, проверьте на DNS-сервере AD, работают ли динамические обновления.

Ошибка обновления DNS: ERROR_DNS_UPDATE_FAILED

Если при вводе компьютера в домен Active Directory (AD), команда net завершается с ошибкой, говорящей об обновлении DNS:

# net ads join -U administrator
Enter administrator's password:
Using short domain name -- SAMDOM
Joined 'M1' to dns domain 'samdom.example.com'
DNS Update for m1.samdom.example.com failed: ERROR_DNS_UPDATE_FAILED
DNS update failed: NT_STATUS_UNSUCCESSFUL

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

Решение проблемы:

Ошибка обновления DNS: ERROR_DNS_GSS_ERROR

При использовании BIND9_DLZ-бэкенда динамические обновления DNS могут завершаться ошибкой из-за неправильной настройки Kerberos на контроллере домена AD (DC), на котором запущен DNS-сервер:

# net ads join -U administrator
Enter administrator's password:
Using short domain name -- SAMDOM
Joined 'AD-Member' to dns domain 'samdom.example.com'
DNS Update for AD-Member.samdom.example.com failed: ERROR_DNS_GSS_ERROR
DNS update failed: NT_STATUS_UNSUCCESSFUL

Для решения проблемы нужно перенастроить Samba с бэкэндом BIND9:

# samba_upgradedns --dns-backend=BIND9_DLZ
Reading domain information
DNS accounts already exist
No zone file /usr/local/samba/private/dns/SAMDOM.EXAMPLE.COM.zone
DNS records will be automatically created
DNS partitions already exist
dns-DC1 account already exists
See /usr/local/samba/private/named.conf for an example configuration include file for BIND
and /usr/local/samba/private/named.txt for further documentation required for secure DNS updates
Finished upgrading DNS

И после этого перезапустить службу bind.[i

Ошибка gss_init_sec_context: Разная ошибка: слишком большой перекос часов (gss_init_sec_context failed with: Miscellaneous failure: Clock skew too great)

Если при подключении хоста к домену AD команда net завершается следующей ошибкой:

# net ads join -U administrator 
Enter administrator's password:
gss_init_sec_context failed with [ Miscellaneous failure (see text): Clock skew too great]
kinit succeeded but ads_sasl_spnego_gensec_bind(KRB5) failed: An internal error occurred.
Failed to join domain: failed to connect to AD: An internal error occurred.

Обратите внимание на строку gss_init_sec_context failed with [ Miscellaneous failure (see text): Clock skew too great]. Она говорит о большом рассинхроне времени между контроллером домена и клиентом.

Kerberos требует синхронизированного времени для предотвращения атак повторного воспроизведения. Время на клиенте не должно отличаться от КД более чем на 5 минут.

Для исправления ошибки, установите правильное время и запустите команду net ads join снова.

Не удалось присоединиться к домену: не удалось найти контроллер домена для домена SAMDOM — неопределенная ошибка

Если при присоединении клиента к Active Directory (AD) команде net не удается найти контроллер домена (DC):

# net ads join -U administrator
Enter administrator's password:
Failed to join domain: failed to find DC for domain SAMDOM - Undetermined error

Samba использует DNS-запросы и широковещательные рассылки для обнаружения контроллеров домена при присоединении к домену. Если оба метода не срабатывают, отображается ошибка: failed to find DC for domain SAMDOM - Undetermined error.

В качестве краткосрочного решения вы можете передать команде параметр "-S" и имя контроллера домена. Например:

# net ads join -U administrator -S DC1.samdom.example.com

Однако в AD важна правильная конфигурация DNS. Чтобы избежать будущих проблем, связанных с неправильной конфигурацией DNS, корректней настроить конфигурацию преобразователя DNS. Дополнительные сведения см. в разделе Конфигурация DNS для Linux и Unix.

Winbind и проблемы с аутентификацией

Утилита getent не может вывести список всех пользователей или групп домена

Если утилита getent может вывести отдельных пользователей или группы домена, но команды getent passwd или же getent group не могут вывести список всех пользователей или групп домена:

  • Убедитесь, что коммутатор службы имен (name service switch, NSS) может использовать библиотеку libnss_winbind. Подробнее см. Libnss winbind Links

Включите следующие параметры в вашем файле smb.conf:

winbind enum users = yes
winbind enum groups = yes

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

Перезагрузите Samba:

# smbcontrol all reload-config

Участник леса домена в домене NT4

В настоящее время здесь нет контента.

Samba
Search.png
Файловое хранилище Samba как файловый серверПодключение общей папкиSamba как файловый сервер в домене
Служба каталогов
Сервер Samba как служба каталогов (AD)Изменение IP-адреса ADРепликация сервера ADРезервное копирование и восстановлениеУправление пользователямиГрупповые политикиГрупповая политика паролей
Клиент Подключение клиента ADУстранение неполадок участников домена Samba
Бэкэнды идентификаторов winbind idmap config tdbidmap config adidmap config rididmap config autorid
Прочее Samba как сервер печатиПроверка конфигурационного файлаУтилиты командной строкиLMHOSTSУровень логовКаталоги SambaНастройка DNS
Разное Настройка Samba для привязки к определенным интерфейсамТестирование динамических обновлений DNSSamba Перенастройка бэкенда BIND9 DLZКонфигурация DNS для Linux и Unix
Информация SSSD vs WinbindУстановка Samba