Bug 40398 - Домен Active Directory (Samba). Веб-интерфейс не даёт выбрать источник базы пользователей Samba ActiveDirectory.
Summary: Домен Active Directory (Samba). Веб-интерфейс не даёт выбрать источник базы п...
Status: CLOSED FIXED
Alias: None
Product: Альт Сервер
Classification: Distributions
Component: Ошибки работы (show other bugs)
Version: 9.1
Hardware: x86_64 Linux
: P5 blocker
Assignee: Anton V. Boyarshinov
QA Contact: qa-p8@altlinux.org
URL:
Keywords:
Depends on: 40557
Blocks:
  Show dependency tree
 
Reported: 2021-07-08 09:42 MSK by Олег
Modified: 2021-07-26 08:27 MSK (History)
8 users (show)

See Also:


Attachments
Скриншот настроек домена и меню Источник базы пользователей (где ошибка) (289.05 KB, image/jpeg)
2021-07-08 09:42 MSK, Олег
no flags Details
Пользователь и группа в АД (139.66 KB, image/png)
2021-07-08 10:13 MSK, Олег
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Олег 2021-07-08 09:42:22 MSK
Created attachment 9491 [details]
Скриншот настроек домена и меню Источник базы пользователей (где ошибка)

Устанавливаю Альт Сервер и настраиваю домен Active Directory (Samba). Все идет штатно. Выбираю Источник базы пользователей Samba ActiveDirectory (поле рядом содержит имя моего домена) и создаю там пользователя и группу. Тоже ок.
После полного обновления системы выбор источника базы пользователей Samba ActiveDirectory не дает выбрать домен (поле пустое), хотя он в настройках домена остался. Ранее созданый пользователь и группа исчезли.
Пытался создать домен снова, но проблема осталась.
Если "с нуля" ставить Альт Сервер, потом обновиться, то настройка домена Active Directory (Samba) сразу приводит к той же проблеме = выбор источника базы пользователей Samba ActiveDirectory не дает выбрать домен (поле пустое).
Comment 1 Олег 2021-07-08 10:13:09 MSK
Created attachment 9492 [details]
Пользователь и группа в АД
Comment 2 Олег 2021-07-08 10:14:49 MSK
На скриншоте пользователь olegdc и группа itdc созданы в АД до обновления.
Comment 3 Anton V. Boyarshinov 2021-07-15 11:49:39 MSK
Сохраняется ли ошибка после обновления до свежего p9?
Comment 4 Олег 2021-07-15 12:15:43 MSK
Только что обновил сервер (у которого уже эта ошибка после предыдущего обновления проявилась). Перезагрузил => Ничего не поменялось.
Comment 5 Anton V. Boyarshinov 2021-07-19 10:54:39 MSK
Женя, Миша, похоже после обновления самбы alterator-net-domain от неё отвалился.
Посмотрите, пожалуйста.
Comment 6 Anton V. Boyarshinov 2021-07-21 13:22:29 MSK
Я сделал стенд и попытался разобраться, упёрся в:

# samba-tool  domain info 127.0.0.1 -d 4
lpcfg_load: refreshing parameters from /etc/samba/smb.conf
Processing section "[global]"
Processing section "[sysvol]"
Processing section "[netlogon]"
pm_process() returned Yes
GENSEC backend 'gssapi_spnego' registered
GENSEC backend 'gssapi_krb5' registered
GENSEC backend 'gssapi_krb5_sasl' registered
GENSEC backend 'spnego' registered
GENSEC backend 'schannel' registered
GENSEC backend 'naclrpc_as_system' registered
GENSEC backend 'sasl-EXTERNAL' registered
GENSEC backend 'ntlmssp' registered
GENSEC backend 'ntlmssp_resume_ccache' registered
GENSEC backend 'http_basic' registered
GENSEC backend 'http_ntlm' registered
GENSEC backend 'http_negotiate' registered
GENSEC backend 'krb5' registered
GENSEC backend 'fake_gssapi_krb5' registered
added interface ens4 ip=2a0c:88c0:1:2:5054:ff:fed9:78ec bcast= netmask=ffff:ffff:ffff:ffff::
added interface ens4 ip=10.4.1.137 bcast=10.4.1.255 netmask=255.255.254.0
added interface ens4 ip=2a0c:88c0:1:2:5054:ff:fed9:78ec bcast= netmask=ffff:ffff:ffff:ffff::
added interface ens4 ip=10.4.1.137 bcast=10.4.1.255 netmask=255.255.254.0
added interface ens4 ip=2a0c:88c0:1:2:5054:ff:fed9:78ec bcast= netmask=ffff:ffff:ffff:ffff::
added interface ens4 ip=10.4.1.137 bcast=10.4.1.255 netmask=255.255.254.0
added interface ens4 ip=2a0c:88c0:1:2:5054:ff:fed9:78ec bcast= netmask=ffff:ffff:ffff:ffff::
added interface ens4 ip=10.4.1.137 bcast=10.4.1.255 netmask=255.255.254.0
finddcs: searching for a DC by IP 127.0.0.1
finddcs: performing CLDAP query on 127.0.0.1
finddcs: No matching CLDAP server found
ERROR: Invalid IP address '127.0.0.1'!
  File "/usr/lib64/samba-dc/python3.7/samba/netcmd/domain.py", line 215, in run
    res = netcmd_get_domain_infos_via_cldap(lp, None, address)
  File "/usr/lib64/samba-dc/python3.7/samba/netcmd/common.py", line 75, in netcmd_get_domain_infos_via_cldap
    flags=nbt.NBT_SERVER_LDAP | nbt.NBT_SERVER_DS)

Самба при этом загружена, конфиг выглядит в первом приближении нормально.

Это ОЧЕНЬ похоже на регрессию после обновления самбы.
Женя?
Стенд доступен в офисе, могу дать доступ.
Comment 7 Anton V. Boyarshinov 2021-07-21 14:24:44 MSK
проблема воспроизводится в установленном с нуля RC сервера 9.2
Comment 8 Anton V. Boyarshinov 2021-07-21 15:01:04 MSK
На свежей установке alt-server RC samba-tool domain info 127.0.0.1 работает, но ldap-users использует samba-tool-plus

# samba-tool-plus domain info 127.0.0.1
Traceback (most recent call last):
  File "/usr/bin/samba-tool-plus", line 33, in <module>
    from netcmdplus.main import cmd_sambatoolplus
  File "/usr/lib/python3/site-packages/netcmdplus/main.py", line 26, in <module>
    from netcmdplus.user import cmd_userplus
  File "/usr/lib/python3/site-packages/netcmdplus/user.py", line 30, in <module>
    from samba.netcmd.user import ( cmd_user, cmd_user_create )
ImportError: cannot import name 'cmd_user_create' from 'samba.netcmd.user' (/usr/lib64/python3/site-packages/samba/netcmd/user.py)

При этом:
# rpm -qf /usr/lib64/python3/site-packages/samba/netcmd/user.py
python3-module-samba-4.14.5-alt1.x86_64
# rpm -qf /usr/bin/samba-tool-plus 
netcmdplus-0.1.1-alt2.noarch

Этот разлом где-то между netcmdplus и samba
Comment 9 Evgeny Sinelnikov 2021-07-21 15:43:30 MSK
На наших стендах мы пока с таким не сталкивались, поскольку развёртываем DC через ansible. Эта проблема, скорее всего, связана с некорректной конфигурацией, которая получается при использовании alterator-net-domain.

Нужно собрать информацию для анализа на воспроизведённом примере, а также проанализировать алгоритм развёртывания домена, и сравнить его с нашим текущим для сложных стендов:
https://github.com/altlinuxteam/ansible-samba
Comment 10 Andrey Cherepanov 2021-07-21 16:00:37 MSK
(Ответ для Evgeny Sinelnikov на комментарий #9)
> На наших стендах мы пока с таким не сталкивались, поскольку развёртываем DC
> через ansible. Эта проблема, скорее всего, связана с некорректной
> конфигурацией, которая получается при использовании alterator-net-domain.
> 
> Нужно собрать информацию для анализа на воспроизведённом примере, а также
> проанализировать алгоритм развёртывания домена, и сравнить его с нашим
> текущим для сложных стендов:
> https://github.com/altlinuxteam/ansible-samba

При чём здесь конфигурация? Бэкенды alterator-ldap-users и alterator-ldap-groups  используют netcmdplus - пакет, который расширял возможности samba-tool. Надо или его актуализировать для python3-module-samba или переписать на нативное использование python3-module-samba.

Python - зло. Эта бага подтверждает.
Comment 11 Anton V. Boyarshinov 2021-07-21 17:17:06 MSK
(Ответ для Andrey Cherepanov на комментарий #10)
> (Ответ для Evgeny Sinelnikov на комментарий #9)
> > На наших стендах мы пока с таким не сталкивались, поскольку развёртываем DC
> > через ansible. Эта проблема, скорее всего, связана с некорректной
> > конфигурацией, которая получается при использовании alterator-net-domain.
> > 
> > Нужно собрать информацию для анализа на воспроизведённом примере, а также
> > проанализировать алгоритм развёртывания домена, и сравнить его с нашим
> > текущим для сложных стендов:
> > https://github.com/altlinuxteam/ansible-samba
> 
> При чём здесь конфигурация? Бэкенды alterator-ldap-users и

Конфигурация при том, что после обновления с сервера 9.0 с созданным доменом AD обычный samba-tool тоже выдаёт ошибку. В наличии 2 разные проблемы: проблема с netcmdplus кажется более критичной, но состояние домена после обновления тоже важно.

Если alterator создаёт домен неправильно, значит надо изучать что именно неправильно, исправлять его самого и создавать инструменты исправления созданных им конфигураций, а не отвечать "мы разворачиваем ансиблом, УМВР"
Comment 12 Evgeny Sinelnikov 2021-07-21 18:13:31 MSK
(Ответ для Anton V. Boyarshinov на комментарий #11)
[...]
> Если alterator создаёт домен неправильно, значит надо изучать что именно
> неправильно, исправлять его самого и создавать инструменты исправления
> созданных им конфигураций, а не отвечать "мы разворачиваем ансиблом, УМВР"

А где было сказано, что этого ("изучать что именно неправильно") делать не надо и почему трактовка выстроена в негативном ключе?

Конструктивный вариант всегда предполагает, что нужно рассматривать те несколько вариантов из конечного числа рабочих, вместо перебора бесконечного числа нерабочих. Я так на это смотрю.
Comment 13 Andrey Cherepanov 2021-07-21 18:40:39 MSK
(Ответ для Evgeny Sinelnikov на комментарий #9)
> На наших стендах мы пока с таким не сталкивались, поскольку развёртываем DC
> через ansible.

Прошу дать роли Ansible для разворачивания samba для deploy.
Comment 14 AEN 2021-07-21 18:44:49 MSK
(Ответ для Andrey Cherepanov на комментарий #13)
> (Ответ для Evgeny Sinelnikov на комментарий #9)
> > На наших стендах мы пока с таким не сталкивались, поскольку развёртываем DC
> > через ansible.
> 
> Прошу дать роли Ansible для разворачивания samba для deploy.

Не стоит отдельную багу завести?
Comment 15 Andrey Cherepanov 2021-07-21 19:11:29 MSK
(Ответ для AEN на комментарий #14)
> (Ответ для Andrey Cherepanov на комментарий #13)
> > (Ответ для Evgeny Sinelnikov на комментарий #9)
> > > На наших стендах мы пока с таким не сталкивались, поскольку развёртываем DC
> > > через ansible.
> > 
> > Прошу дать роли Ansible для разворачивания samba для deploy.
> 
> Не стоит отдельную багу завести?

Это не бага, а пожелание.
Comment 16 Anton V. Boyarshinov 2021-07-22 10:39:42 MSK
(Ответ для Олег на комментарий #4)
> Только что обновил сервер (у которого уже эта ошибка после предыдущего
> обновления проявилась). Перезагрузил => Ничего не поменялось.

У меня на стенде после обновления netcmdplus эта проблема решилась.
Попробуйте, пожалуйста
apt-repo add 279902
apt-get update
apt-get install netcmdplus
Comment 17 Олег 2021-07-23 02:33:53 MSK
Выполнил команды по инструкции. Но, что-то пошло не так. Кажется, репа не подключилась и ничего не установилось:
[root@altserver ~]# apt-repo add 279902
[root@altserver ~]# apt-get update 
Получено: 1 http://mirror.yandex.ru p9/branch/x86_64 release [1954B]
Пропущено http://git.altlinux.org repo/279902/x86_64 release     
Получено: 2 http://mirror.yandex.ru p9/branch/x86_64-i586 release [1175B]
Получено: 3 http://mirror.yandex.ru p9/branch/noarch release [1545B]
Получено 4674B за 0s (13,0kB/s).
Получено: 1 http://mirror.yandex.ru p9/branch/x86_64/classic pkglist [19,5MB]
Ошибка http://git.altlinux.org repo/279902/x86_64/task pkglist
  404 Not Found
Пропущено http://git.altlinux.org repo/279902/x86_64/task release
Получено: 2 http://mirror.yandex.ru p9/branch/x86_64/classic release [135B]    
Получено: 3 http://mirror.yandex.ru p9/branch/x86_64-i586/classic pkglist [14,4MB]
Получено: 4 http://mirror.yandex.ru p9/branch/x86_64-i586/classic release [140B]
Получено: 5 http://mirror.yandex.ru p9/branch/noarch/classic pkglist [5440kB]  
Получено: 6 http://mirror.yandex.ru p9/branch/noarch/classic release [135B]    
Получено 39,3MB за 16s (2370kB/s).                                             
E: Failed to fetch http://git.altlinux.org/repo/279902/x86_64/base/pkglist.task  404 Not Found
E: Some index files failed to download. They have been ignored, or old ones used instead.
[root@altserver ~]# apt-cache search netcmdplus
netcmdplus - Extended samba-tool (netcmd) version
python3-module-netcmdplus - python3 module for samba-tool-plus (netcmdplus)
[root@altserver ~]# apt-get install netcmdplus
Чтение списков пакетов... Завершено
Построение дерева зависимостей... Завершено
Последняя версия netcmdplus уже установлена.
0 будет обновлено, 0 новых установлено, 0 пакетов будет удалено и 31 не будет обновлено.

------------набираю вручную результаты еще одной команды (с сервера долго перетаскивать...)-----------

[root@altserver ~]# apt-repo list
rpm http://git.altlinux.org repo/279902/x86_64 task
rpm [p9] ... и т.д.
Comment 18 Andrey Cherepanov 2021-07-23 09:42:38 MSK
(Ответ для Олег на комментарий #17)
> Выполнил команды по инструкции. Но, что-то пошло не так. Кажется, репа не
> подключилась и ничего не установилось:
Пока не добралось до зеркал. Попробуйте так (под root):

wget http://ftp.altlinux.ru/pub/distributions/ALTLinux/p9/branch/noarch/RPMS.classic/netcmdplus-0.1.2-alt1.noarch.rpm
rpm -Uvh netcmdplus-0.1.2-alt1.noarch.rpm
Comment 19 Олег 2021-07-26 02:45:31 MSK
Сегодня стал устанавливать http://ftp.altlinux.ru/pub/distributions/ALTLinux/p9/branch/noarch/RPMS.classic/netcmdplus-0.1.2-alt1.noarch.rpm, но не пошло из-за неудовлетворенных зависимостей.
Обновил систему. Заметил, что много обновленных пакетов samba и тот самый netcmdplus.
Проверил сразу после обновления - ошибка ушла.
Спасибо!

P.S. Пока здесь собрались знатоки Samba-DC, воспользуюсь случаем и задам вопрос:
Есть ли у Альт графическая оболочка для управления общими ресурсами домена (папки, принтеры и т.д.)?
Comment 20 Andrey Cherepanov 2021-07-26 08:27:33 MSK
(Ответ для Олег на комментарий #19)
> Есть ли у Альт графическая оболочка для управления общими ресурсами домена
> (папки, принтеры и т.д.)?
Нет.

Эту багу закрываем.