Summary: | Не блокируется tty в /etc/security/access.conf | ||
---|---|---|---|
Product: | Sisyphus | Reporter: | underwit <underwit> |
Component: | login | Assignee: | placeholder <placeholder> |
Status: | CLOSED FIXED | QA Contact: | qa-sisyphus |
Severity: | major | ||
Priority: | P5 | CC: | glebfm, ldv, lepata, mcpain, placeholder, rider, underwit, zerg |
Version: | unstable | ||
Hardware: | x86_64 | ||
OS: | Linux | ||
Bug Depends on: | |||
Bug Blocks: | 38056 |
Description
underwit
2020-06-30 12:12:29 MSK
(In reply to underwit from comment #0) > Попытка входа на tty4 для username проходит успешно. Чем осуществляется попытка входа? (Ответ для Dmitry V. Levin на комментарий #1) > Чем осуществляется попытка входа? ctrl+alt+f4 или chvt 4 навернякак systemd-logind. (In reply to Anton Farygin from comment #3) > навернякак systemd-logind. Тогда попробуйте выяснить, выставляет ли он PAM_TTY, и если да, то в какое значение. agetty, а не systemd-logind. А как выяснить ? Вижу процессы: /sbin/agetty -o -p -- \u --noclear tty5 linux (In reply to Anton Farygin from comment #5) > agetty, а не systemd-logind. А как выяснить ? agetty всё-таки не осуществляет login. Выяснить просто: залогиниться и посмотреть в лог. > Вижу процессы: > /sbin/agetty -o -p -- \u --noclear tty5 linux Ещё можно chvt 5, дождаться приглашения, и посмотреть ps ещё раз. audit пишет что запускается /bin/login, в моём случае это login-0.60-alt35.x86_64 *** Bug 38056 has been marked as a duplicate of this bug. *** В SimplePAMApps: pamapps/login/login.c:118 Для login_remote_host устанавливается значение по умолчанию - "localhost", которое модифицируется в parse_args() только при передаче в качестве аргумента имени хоста. В противном случае эта строка остается без изменений и устанавливается в PAM_RHOST. В linux-pam: modules/pam_access/pam_access.c:846 идёт получение через pam_get_item сожержимого PAM_RHOST, а в строке 853 идет проверка на то, что это содержимое либо нулевой указатель, либо пустая строка. А у нас там "localhost" -> условие не выполняется, проверки на tty нет и, следовательно, программа разрешает вход из-под tty. Так было с 2001 года. Я уберу PAM_RUSER и PAM_RHOST, это починит pam_access, а вы попробуйте выяснить, как это повлияет на весь остальной софт. (Ответ для Dmitry V. Levin на комментарий #10) > Так было с 2001 года. Я уберу PAM_RUSER и PAM_RHOST, это починит > pam_access, а вы попробуйте выяснить, как это повлияет на весь остальной > софт. Как минимум повлияет на то, что при указании правила "-:USER:localhost" вход через tty будет разрешён, а я так понял, что его необходимо запрещать. Предлагаю "localhost" починить позже, а то прям горит. (Ответ для Sergey V Turchin на комментарий #12) > Предлагаю "localhost" починить позже, а то прям горит. Ссылка на огнетушитель: http://git.altlinux.org/tasks/254422/ Проверил в fedora Если указать localhost то он не блокируется. Не надо проверять pam_access в Федоре, в этом нет смысла. Проверьте, пожалуйста, как наш софт отреагирует на отсутствие PAM_RUSER и PAM_RHOST. (Ответ для Dmitry V. Levin на комментарий #15) > Проверьте, пожалуйста, как наш софт отреагирует на отсутствие PAM_RUSER и > PAM_RHOST. "наш" - это какой? Где взять версию, где PAM_RUSER и PAM_RHOST отсутствуют? (In reply to Олег Соловьев from comment #16) > (Ответ для Dmitry V. Levin на комментарий #15) > > Проверьте, пожалуйста, как наш софт отреагирует на отсутствие PAM_RUSER и > > PAM_RHOST. > > "наш" - это какой? Хотя бы тот, который входит в наши дистрибутивы. Могут быть побочные эффекты. > Где взять версию, где PAM_RUSER и PAM_RHOST отсутствуют? #254330 Вход локальным пользователем под sddm работает. Вход локальным пользователем с tty работает. SimplePAMApps-0.60-alt36 -> sisyphus: Fri Jul 03 2020 Dmitry V. Levin <ldv@altlinux> 0.60-alt36 - login: do not set PAM_RUSER and PAM_RHOST unnecessarily (closes: #38655). |