Bug 46352 - Двойной запрос пароля для доменного пользователя с lightdm-kde-greeter
Summary: Двойной запрос пароля для доменного пользователя с lightdm-kde-greeter
Status: CLOSED FIXED
Alias: None
Product: Branch p10
Classification: Unclassified
Component: sssd-client (show other bugs)
Version: не указана
Hardware: x86_64 Linux
: P5 normal
Assignee: Evgeny Sinelnikov
QA Contact: qa-p10@altlinux.org
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-06-01 12:21 MSK by Anton Shevtsov
Modified: 2023-06-13 18:09 MSK (History)
11 users (show)

See Also:


Attachments
Патч для политики system-auth-sss-only.pam (344 bytes, patch)
2023-06-06 17:47 MSK, Anton Golubev
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Anton Shevtsov 2023-06-01 12:21:38 MSK
Исходные данные.
alt-kworkstation-10.1-install-x86_64.iso 

Установлено, обновлено до актуального состояния (пакеты, ядро)
Введен в домен (альт 10, самба)

Установлен kde5-display-manager-lightdm

после чего при входе доменным пользователем идет запрос
1. логин
2. пароль
3. password  

Содержимое /etc/pam.d/lightdm

#%PAM-1.0
auth            required        pam_shells.so
auth            required        pam_succeed_if.so quiet uid ne 0
auth            sufficient      pam_succeed_if.so user ingroup nopasswdlogin
auth            substack        common-login
-auth           optional        pam_gnome_keyring.so
-auth           optional        pam_mate_keyring.so
-auth           optional        pam_kwallet.so
-auth           optional        pam_kwallet5.so
account         include         common-login
password        include         common-login
session         substack        common-login
session         optional        pam_console.so
-session        optional        pam_ck_connector.so
session         required        pam_namespace.so
-session        optional        pam_gnome_keyring.so auto_start
-session        optional        pam_mate_keyring.so auto_start
-session        optional        pam_kwallet.so auto_start
-session        optional        pam_kwallet5.so auto_start

Если закомментировать в auth обращения к pam_kwallet, то проблема исчезает

sed -r -i 's/^(-auth.*pam_kwallet.*.so)/#\1/g' /etc/pam.d/lightdm
Comment 1 Alexander Makeenkov 2023-06-01 12:34:03 MSK
Аналогично, домен FreeIPA, пароль запрашивается два раза.
Comment 2 Sergey V Turchin 2023-06-01 17:04:31 MSK
Можно попробовать https://git.altlinux.org/tasks/322299/
Comment 3 Alexander Makeenkov 2023-06-01 17:11:50 MSK
(Ответ для Sergey V Turchin на комментарий #2)
> Можно попробовать https://git.altlinux.org/tasks/322299/

Мне на виртуалке в Samba домене помогло.
Comment 4 Sergey V Turchin 2023-06-02 13:54:44 MSK
(Ответ для Alexander Makeenkov на комментарий #3)
> (Ответ для Sergey V Turchin на комментарий #2)
> > Можно попробовать https://git.altlinux.org/tasks/322299/
> Мне на виртуалке в Samba домене помогло.
Тогда отправляю в p10.
Comment 5 Sergey V Turchin 2023-06-02 13:55:11 MSK
https://git.altlinux.org/tasks/322299/
Comment 6 Anton Golubev 2023-06-06 17:47:01 MSK
Created attachment 13395 [details]
Патч для политики system-auth-sss-only.pam

После некоторого дополнительного исследования, прояснилось, что pam-модуль pam_sss.so (из пакета sssd-client, отвечающий за аутентификацию доменного пользователя, по умолчанию не передаёт пароль последующим модулям, поэтому в pam_kwallet5.so приходит пустой пароль, и тот запрашивает пароль у пользователя (и происходит повторный ввод запрос).

Судя по документации https://manpages.ubuntu.com/manpages/impish/man8/pam_sss.8.html
можно попросить pam_sss передавать пароль дальше с помощью параметра forward_pass. Для этого можно изменить политику в соответствии с приложенным патчем.

В sddm, видимо, имеется костыль, который незаметно для пользователя, повторно передаёт пароль модулю pam_kwallet5.so, поэтому там проблема не проявляется.
Comment 7 Alexander Makeenkov 2023-06-06 17:50:40 MSK
(Ответ для Sergey V Turchin на комментарий #5)
> https://git.altlinux.org/tasks/322299/

Переоткрываю, потому что в этом задании обнаружен регресс, и пока что оно не будет пропущено.
Comment 8 Sergey V Turchin 2023-06-07 11:30:47 MSK
(Ответ для Anton Golubev на комментарий #6)
> Создано вложение 13395 [details] [подробности]
> Патч для политики system-auth-sss-only.pam
Т.е. костыль в pam_kwallet5.so лучше не делать?
Comment 9 Anton Golubev 2023-06-07 11:38:27 MSK
(In reply to Sergey V Turchin from comment #8)

> Т.е. костыль в pam_kwallet5.so лучше не делать?

в pam_kwallet5.so ничего не получится сделать, потому что туда просто не доходит пароль, и взять его уже неоткуда, (разве что попросить ещё раз у менеджера входа, как это и происходит, и если sddm (видимо) скрытно передаёт пароль повторно, то lighdm просто перенаправляет этот запрос пользователю)
Comment 10 Alexander Makeenkov 2023-06-07 11:49:59 MSK
Перевешиваю на мейнтейнера sssd-client
Comment 11 Evgeny Sinelnikov 2023-06-07 13:54:19 MSK
Нужно подумать как быть при обновлении. Сделаем control, если не найдется другого решения.
Comment 12 Sergey V Turchin 2023-06-07 14:01:41 MSK
(Ответ для Evgeny Sinelnikov на комментарий #11)
> Нужно подумать как быть при обновлении. Сделаем control, если не найдется
> другого решения.
Дык, нашли же другое. См. прикреплённый патч.
Comment 13 Sergey V Turchin 2023-06-07 14:29:42 MSK
(Ответ для Evgeny Sinelnikov на комментарий #11)
> Сделаем control
Только не это!
Предлагаю или не трогать или применить патч.
Comment 14 Sergey V Turchin 2023-06-07 15:48:39 MSK
Расшарил сборку #322299. Кто приложит патч? Я могу.
Comment 15 Sergey V Turchin 2023-06-07 16:27:34 MSK
Прошу пропустить build#322569
Comment 16 Sergey V Turchin 2023-06-07 16:29:39 MSK
(Ответ для Sergey V Turchin на комментарий #15)
> Прошу пропустить build#322569
Это в Сизиф. Дальше я сам.
Comment 17 Vera Blagoveschenskaya 2023-06-13 13:25:08 MSK
C версией lightdm-kde-greeter-0.4.11-alt1 пароль 2 раза не запрашивается.
Comment 18 Sergey V Turchin 2023-06-13 18:09:09 MSK
Исправлено в sssd-client-2.8.1-alt3