Home » Ошибки » Ошибка в работе samba в домене AD — id: username: No such user

Ошибка в работе samba в домене AD — id: username: No such user

Столкнулся на днях с неожиданной ошибкой в samba, на которую потратил пару часов, пока не разобрался, в чем дело. Проблема возникла на файловом сервере linux, включенном в домен Windows. Использовал свою стандартную конфигурацию, но тут она почему-то подвела.

Если у вас есть желание научиться строить и поддерживать высокодоступные и надежные системы, рекомендую познакомиться с онлайн-курсом «Администратор Linux» в OTUS. Курс не для новичков, для поступления нужно пройти .

Нужно было добавить очередной сервер с samba в домен для использования в качестве файлового хранилища. Я такие вещи часто проделываю и у меня есть стандартная конфигурация самбы для этого дела. В зависимости от типа системы, бывают незначительные отличия в разных дистрибутивах, я сначала завожу машину в домен, проверяю что все работает, затем настраиваю самбу.

В этот раз все то же самое было. У меня имелась система CentOS 6. Добавил ее в домен, как описано в статье, заменив некоторые команды, так как они отличаются в 6-й и 7-й версии. Прошел все проверки, все было на первый взгляд нормально.

Проверка samba на ошибки

Залил файлы, выставил права, стал заходить на шару и удивился, что меня не пускает на нее. Причем странно не пускает. Зайти можно только залогинившись администратором домена, которым я добавлял сервер в домен. Всех остальных пользователей самба не пускала. В логах были следующие ошибки:

receive_smb_raw_talloc failed for client 10.1.4.189 read error = NT_STATUS_CONNECTION_RESET

kerberos_kinit_password SRV-FILES$@DOMAIN.LOCAL failed: Preauthentication failed

При этом все проверки wbinfo возвращают пользователей, группы, доверительные отношения и прочее. Билетик керберос нормально получается. Файл nsswitch.conf был правильно отредактирован, все как полагается. Не проходила следующая проверка:

# id domainuser
id: domainuser: No such user

и getent:

# getent passwd

выводил только локальных пользователей, а должен и доменных.

При этом, если сделать тоже самое с пользователем, под которым я заводил машину в домен, то команда возвращает верные данные о пользователе. Я хорошенько проверил все конфиги, сравнил их с другими серверами. Все как везде, но почему-то не работает. Перезапуски служб и перезагрузка не помогала.

Ответ нашел в интернете, хотя и не разу. Некоторые советы по решению схожих ошибок мне не помогли. А помогло вот что. У меня в конфмге самбы есть такие строки:

idmap config * : range = 10000-20000
idmap config * : backend = tdb

После того, как я их заменил на:

idmap config * : backend = rid
idmap config * : range = 5000-10000000
idmap config * : base_rid = 0

Все заработало. Простая смена backend с tdb на rid не помогала, необходимы были дополнительные параметры. Я до конца не стал вникать, что это такое и в чем принципиальная разница. Понял только, что через этот инструмент winbind взаимодействует с утилитами AD. После замены бэкенда все заработало как и должно.

Почему именно здесь проявилась эта ошибка я не понял. Все конфиги специально сверил с еще одним таким же сервером, введенным в этот же домен пол года назад.

Онлайн курс по Linux

Если у вас есть желание научиться строить и поддерживать высокодоступные и надежные системы, рекомендую познакомиться с онлайн-курсом «Администратор Linux» в OTUS. Курс не для новичков, для поступления нужны базовые знания по сетям и установке Linux на виртуалку. Обучение длится 5 месяцев, после чего успешные выпускники курса смогут пройти собеседования у партнеров. Что даст вам этот курс:
  • Знание архитектуры Linux.
  • Освоение современных методов и инструментов анализа и обработки данных.
  • Умение подбирать конфигурацию под необходимые задачи, управлять процессами и обеспечивать безопасность системы.
  • Владение основными рабочими инструментами системного администратора.
  • Понимание особенностей развертывания, настройки и обслуживания сетей, построенных на базе Linux.
  • Способность быстро решать возникающие проблемы и обеспечивать стабильную и бесперебойную работу системы.
Проверьте себя на вступительном тесте и смотрите подробнее программу по .

Помогла статья? Есть возможность отблагодарить автора

Автор Zerox

Zerox
Владимир, системный администратор, автор сайта. Люблю настраивать сервера, изучать что-то новое, делиться знаниями, писать интересные и полезные статьи. Открыт к диалогу и сотрудничеству.

One comment

  1. Аватар

    И какие это «дополнительные параметры»?

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

Ваш e-mail не будет опубликован.

Нажимая кнопку "Отправить комментарий" Я даю согласие на обработку персональных данных.