У меня есть похожие случаи в этой теме на Изменения членства в группе AD не отражаются в информации winbind. Единственная разница в том, что это происходит только в «перекрестном домене» для моего сценария.
Вот моя конфигурация - http://pastebin.ca/3035431 ...
Я был бы признателен, если бы кто-нибудь пролил на меня свет:
(1) как позволить команде "id" отражать правильное членство в группе.
(2) как я могу заставить Winbind автоматически отражать членство в группе после внесения изменений в Active Directory.
Спасибо!
Кажется, что это удаляет кеш и заставляет winbind извлекать информацию из ADC:
service winbind stop
rm /var/cache/samba/netsamlogon_cache.tdb
service winbind start
Прежде чем пробовать то, что я предлагаю, поймите, что это может сбросить сопоставления UID / GID, созданные Samba. Я делаю это, потому что все, что меня волнует, исходит из Active Directory rfc2307, поэтому мне удобно очищать кеши Samba / Winbindd и начинать заново.
Что в итоге сработало для меня, так это удаление всех файлов из / var / cache / samba.
Недавно я боролся за обновление списка групп только для одного упрямого идентификатора пользователя. Конечно же, мой идентификатор пользователя.
Я не верю, что нахожусь в ситуации перекрестного домена, но это возможно. Я нахожусь в большой многодоменной Active Directory, но работаю с пользователями и группами только в одном домене.
Я пробовал много попыток, включая «очистку сетевого кеша», добавление --no-caching в winbindd и удаление group_mapping.tdb, winbindd_idmap.tdb и winbindd_cache.tdb из / var / lib / samba.
Вот сценарий с командами, которые очищают файлы кеша Samba / Winbindd:
#!/usr/bin/bash
#
# Quicky for backing up and removing the
# Samba / Winbindd cache files
#
# This solution worked when a single users group
# list would not update when changed in Active
# directory.
#
#
# Environment
#
# CentOS 7 with all updates as of 20150828
# Sernet Samba 4.2.3 - Version 4.2.3-SerNet-RedHat-18.el7
#
/usr/bin/sh /etc/init.d/sernet-samba-smbd stop
/usr/bin/sh /etc/init.d/sernet-samba-winbindd stop
/usr/bin/sh /etc/init.d/sernet-samba-nmbd stop
cd /var
/usr/bin/tar cbzf 512 samba_var_backup_`date '+%Y%m%d_%H%M%S'`.tgz cache/samba lib/samba log/samba
/usr/bin/find cache/samba -type f -exec /usr/bin/rm -f {} \;
/usr/bin/rm -f lib/samba/group_mapping.tdb
/usr/bin/rm -f lib/samba/winbindd_idmap.tdb
/usr/bin/rm -f lib/samba/winbindd_cache.tdb
/usr/bin/sh /etc/init.d/sernet-samba-nmbd start
/usr/bin/sh /etc/init.d/sernet-samba-winbindd start
/usr/bin/sh /etc/init.d/sernet-samba-smbd start
Я считаю, что создал ситуацию, из-за которой мой идентификатор пользователя не обновлялся. В этой системе CentOS 7 я начал пробовать команду «realm» и метод SSSD для общения с Active Directory, используя CentOS 7, встроенный в sssd и Samba, который, как мне кажется, был Samba 4.1.x.
SSSD почти сработал, но был слишком медленным. Такие команды, как «id» и «groups», были ужасно медленными. Думаю, у Samba были проблемы, потому что поиски были слишком медленными.
Я решил попробовать последнюю версию Samba 4.2.x из-за нового winbindd и большего размера io по умолчанию.
Sernet Samba / Winbindd 4.2.3 работает отлично. Samba без проблем присоединилась к Active Directory. Командные строки "id" и "groups" работают быстро, особенно после первого поиска.
Вот мой smb.conf для справки:
[global]
workgroup = PROJECTS
security = ads
realm = PROJECTS.EXAMPLE.NET
kerberos method = secrets and keytab
max log size = 50000
log level = 2
template homedir = /home/%U
template shell = /bin/bash
idmap config PROJECTS : default = yes
idmap config PROJECTS : backend = ad
idmap config PROJECTS : schema_mode = rfc2307
idmap config PROJECTS : range = 10000-9999999999
idmap config *:backend = tdb
idmap config *:range = 2000-3999
winbind nss info = rfc2307
winbind use default domain = yes
winbind offline logon = no
winbind enum groups = yes
winbind enum users = yes
winbind refresh tickets = yes
#
# 20150827 by Joe
# Comment out expand groups for now
# I added it trying to solve nested groups not working
# correctly. Look ups slowed down when I added this and
# did not solve the problem for my login.
#
## winbind expand groups = 3
os level = 0
local master = no
domain master = no
preferred master = no
# ------------------ Options Joe Likes ------------------------
#
path = /tmp
force create mode = 0775
force directory mode = 2775
unix extensions = no
wide links = yes
load printers = no
map archive = no
map readonly = permissions
nt acl support = no
#============================ Share Definitions ==============================
[projects]
path = /disks/projects/projects_share
comment = Projects Storage
writeable = Yes
browseable = yes
guest ok = no