Я установил контроллер домена Samba 4 AD на Debian Jessie (samba 4.2.10). Все работает нормально, за исключением того, что winbind дает неверную информацию о пользователе / группе.
У меня есть образец пользователя «testuser» и группа безопасности «люди». Их атрибуты UNIX настроены следующим образом:
Однако winbind показывает это:
root@agnus:~# wbinfo -i testuser
testuser:*:10010:100:Test User:/home/HOME/testuser:/bin/false
UID совпадает, но все остальное неверно.
Мой smb.conf содержит это:
# Global parameters
[global]
workgroup = HOME
realm = HOME.LOCAL
netbios name = AGNUS
server role = active directory domain controller
server services = s3fs, rpc, nbt, wrepl, ldap, cldap, kdc, drepl, winbindd, ntp_signd, kcc, dnsupdate
idmap_ldb:use rfc2307 = yes
idmap config *:backend = tdb
idmap config *:range = 2000-9999
idmap config HOME:backend = ad
idmap config HOME:schema_mode = rfc2307
idmap config HOME:range = 10000-99999
winbind nss info = rfc2307
winbind enum users = yes
winbind enum groups = yes
winbind normalize names = yes
winbind use default domain = yes
winbind refresh tickets = yes
[netlogon]
path = /var/lib/samba/sysvol/home.local/scripts
read only = No
[sysvol]
path = /var/lib/samba/sysvol
read only = No
Что не так с моей настройкой?
В принципе ничего. Вам не хватает строк шаблона, так как вы используете samba 4 AD DC. Samba 4.2 и 4.3 имеют разное поведение с getent passwd, wbinfo -u или id.
По возможности обновитесь до 4.4.3, погуглите дебы в списке самбы. Они хорошо работают. samba 4.4.3 также требует установки winbind, ADDC и member, но! все выходы теперь могут быть такими же.
и о строках шаблона.
template homedir (G)
When filling out the user information for a Windows NT user, the winbindd(8) daemon uses this parameter to fill in the home directory for that user. If the string %D is present it is
substituted with the user's Windows NT domain name. If the string %U is present it is substituted with the user's Windows NT user name.
Default: template homedir = /home/%D/%U
template shell (G)
When filling out the user information for a Windows NT user, the winbindd(8) daemon uses this parameter to fill in the login shell for that user.
Default: template shell = /bin/false
добавьте их в ваш DC smb.conf.
И последнее, обязательно прочтите: https://www.brightbox.com/blog/2014/03/04/add-cacert-ubuntu-debian/ такая настройка действительно упрощает задачу. Еще вопросы, задавайте список самбы.