Назад | Перейти на главную страницу

CentOS 6 не может разрешить одну учетную запись AD

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

У нас есть 14 интегрированных серверов Centos 6 AD, использующих Samba / Winbind с idmap_ad (security = ads, idmap backend = ad), эта настройка отлично работает на 13 из них.

Проблема

Проблема в одном сервере и одном пользователе. Из окна проблемы вы просто не можете разрешить одного конкретного пользователя. Этот пользователь разрешается со всех остальных серверов.

Результаты при попытке решить на проблемном сервере:

# id username
id: username: No such user

# wbinfo -i username
Could not get info for user username

Результаты при попытке разрешить на хорошем сервере:

# id username
uid=12830(username) gid=100(users) groups=100(users)

# wbinfo -i username
username:*:12830:100:User Name:/home/username:/bin/bash

Попытки решения

Я остановил winbind и smb и очистил кеш winbind (winbindd_cache.tdb & winbindd_cidmap.tdb) и запустил их снова - без радости

Я начал winbind с -n для прямого поиска - без радости

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

Я совершенно убежден, что это не winbind после вышеуказанного теста, но я не понимаю, почему пользователь не решает.

Я могу бегать wbinfo -n и получите SID пользователей, затем запустите net cache list |grep thesid и увидеть:

Ключ: IDMAP / SID2UID / S-1-5-21-746745685-249376194-4547331-1137 Тайм-аут: вторник, 2 апреля 17:30:32 2013 Значение: 1283 0 Ключ: IDMAP / UID2SID / 12830 Тайм-аут: вторник, 2 апреля 17: 30:32 2013 Значение: S-1-5-21-746745685-249376194-4547331 -1137

Это показывает правильный UID (12930), чтобы сервер мог найти его в AD и получить его атрибуты Unix.

Я могу бегать net lookup sid S-1-etc и он успешно возвращает его как DOMAIN\username

Я тогда попробовал net cache flush и перезапустил smb и winbind, это тоже не помогло.

Я все еще не могу id пользователь ни wbinfo -i и поэтому пользователь не может войти в систему или получить доступ к ресурсам samba, поскольку сервер не может их разрешить.

Бесит то, что все остальные пользователи работают, в том числе и вновь созданные!

...

Кто-нибудь может помочь? Я застрял!

...

Основные детали:

Этот сервер имеет ту же конфигурацию, что и другие на этом сайте, и они работают отлично, поэтому я знаю, что проблема не в них. Это как если бы серверу просто не нравился SID пользователя или что-то подобное, и он не будет искать его стандартными методами.

Дайте мне знать, если вам понадобится дополнительная информация.

Спасибо

Теперь решено, это сработало для меня:

Очистил все кеши Winbind и очистил сетевой кеш, не забудьте сделать резервную копию, прежде чем что-либо удалять!

Остановите службы Winbind и Samba:

service winbind stop
service smb stop

Очистите кеш Samba Net:

net cache flush

Удалите кеши Winbind:

rm –f /var/lib/samba/*.tdb
rm –f /var/lib/samba/group_mapping.ldb

Запустите Samba, а затем службы Winbind - Примечание: порядок важен

service smb start
service winbind start

Проверьте это, попытавшись разрешить пользователя.