[devel] Новый Kerberos и новая Samba

Evgeny Sinelnikov sin на altlinux.org
Чт Ноя 23 02:46:21 MSK 2017


22 ноября 2017 г., 20:50 пользователь Alexander Bokovoy
<ab at altlinux.org> написал:
> 2017-11-22 16:04 GMT+02:00 Evgeny Sinelnikov <sin at altlinux.org>:
>> Здравсвуйте,
>>
>> В эти выходные в сизиф отправился новый libkrb5. Новая Samba (пока
>> 4.6.11, готовится 4.7.3) тоже уехала в сизиф и p8.
>>
>> В krb5.conf опция includedir для /etc/krb5.conf.d/ теперь включена, по
>> умолчанию.
>>
>> При этом проявилась регрессия, которая имелась и раньше. При включении
>> includedir проблема проявляется вне зависимости от версии libkrb5. В
>> p8 на libkrb5-1.14.5 проблема воспроизводится точно также, как и в
>> сизифе на libkrb5-1.15.2 и для samba-DC-4.6.x выглядит следующим
>> образом:
>>
>> ==> server.domain.alt: + samba-tool domain provision
>> --realm=DOMAIN.ALT --domain DOMAIN '--adminpass=Pa$$word'
>> --dns-backend=SAMBA_INTERNAL --server-role=dc --use-rfc2307
>> --host-ip=192.168.56.2
>> ==> server.domain.alt: Looking up IPv6 addresses
>> ==> server.domain.alt: Setting up share.ldb
>> ==> server.domain.alt: Setting up secrets.ldb
>> ==> server.domain.alt: Setting up the registry
>> ==> server.domain.alt: Setting up the privileges database
>> ==> server.domain.alt: Setting up idmap db
>> ==> server.domain.alt: Setting up SAM db
>> ==> server.domain.alt: Setting up sam.ldb partitions and settings
>> ==> server.domain.alt: Setting up sam.ldb rootDSE
>> ==> server.domain.alt: Pre-loading the Samba 4 and AD schema
>> ==> server.domain.alt: Adding DomainDN: DC=domain,DC=alt
>> ==> server.domain.alt: Adding configuration container
>> ==> server.domain.alt: Setting up sam.ldb schema
>> ==> server.domain.alt: Setting up sam.ldb configuration data
>> ==> server.domain.alt: Setting up display specifiers
>> ==> server.domain.alt: Modifying display specifiers
>> ==> server.domain.alt: Adding users container
>> ==> server.domain.alt: Modifying users container
>> ==> server.domain.alt: Adding computers container
>> ==> server.domain.alt: Modifying computers container
>> ==> server.domain.alt: Setting up sam.ldb data
>> ==> server.domain.alt: Setting up well known security principals
>> ==> server.domain.alt: Setting up sam.ldb users and groups
>> ==> server.domain.alt: ERROR(ldb): uncaught exception - operations
>> error at ../source4/dsdb/samdb/ldb_modules/password_hash.c:2820
>> ==> server.domain.alt:   File
>> "/usr/lib64/python2.7/site-packages/samba/netcmd/__init__.py", line
>> 176, in _run
>> ==> server.domain.alt:     return self.run(*args, **kwargs)
>> ==> server.domain.alt:   File
>> "/usr/lib64/python2.7/site-packages/samba/netcmd/domain.py", line 471,
>> in run
>> ==> server.domain.alt:     nosync=ldap_backend_nosync,
>> ldap_dryrun_mode=ldap_dryrun_mode)
>> ==> server.domain.alt:   File
>> "/usr/lib64/python2.7/site-packages/samba/provision/__init__.py", line
>> 2175, in provision
>> ==> server.domain.alt:     skip_sysvolacl=skip_sysvolacl)
>> ==> server.domain.alt:   File
>> "/usr/lib64/python2.7/site-packages/samba/provision/__init__.py", line
>> 1787, in provision_fill
>> ==> server.domain.alt:     next_rid=next_rid, dc_rid=dc_rid)
>> ==> server.domain.alt:   File
>> "/usr/lib64/python2.7/site-packages/samba/provision/__init__.py", line
>> 1447, in fill_samdb
>> ==> server.domain.alt:     "KRBTGTPASS_B64":
>> b64encode(krbtgtpass.encode('utf-16-le'))
>> ==> server.domain.alt:   File
>> "/usr/lib64/python2.7/site-packages/samba/provision/common.py", line
>> 55, in setup_add_ldif
>> ==> server.domain.alt:     ldb.add_ldif(data, controls)
>> ==> server.domain.alt:   File
>> "/usr/lib64/python2.7/site-packages/samba/__init__.py", line 225, in
>> add_ldif
>> ==> server.domain.alt:     self.add(msg, controls)
>>
>>
>> Мы уже с этим сталкивались:
>> - Не работает создание домена SambaDC
>> https://bugzilla.altlinux.org/show_bug.cgi?id=33409
>>
>> И не мы одни, но при нашем участии:
>> - [Samba] samba 4.6.0 dc provisioning fails with exception
>> https://lists.samba.org/archive/samba/2017-March/207031.html
>> - Uncaught exception at ldb_modules/password_hash.c:2241 during new
>> domain provision
>> https://bugzilla.samba.org/show_bug.cgi?id=11573
>>
>> В последней баге (Samba #11573) Andrew Bartlett, в итоге, ответил:
>>> We need to backport:
>>> https://github.com/heimdal/heimdal/commit/fe43be85587f834266623adb0ecf2793d212a7ca
> Проще говоря, heimdal до какой-то версии не умел include/includedir.
>
>> В целом, "это не бага, а фича". Так сложилось. Причём для samba-4.7,
>> которая собрана  в новой федоре это уже и не актуально. Новая Samba
>> поддерживает MIT Kerberos, а не только Нeimdal.
> Думаю, что можно добавить этот патч в Самбу 4.6.3 в сборке. И
> избавиться от него при переезде на MIT.
>

Да, я именно так и думал поступить. Спасибо, что укрепили меня в
логичности этого варианта.



-- 
Sin (Sinelnikov Evgeny)


Подробная информация о списке рассылки Devel