<div dir="ltr"><div>Доброй ночи.</div><div><br></div><div>Сборка проверена в различных конфигурациÑÑ… и отправлена на одобрение:</div><div>#240988 EPERM #8 sisyphus pam-config.git=1.8.0-alt1</div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">чт, 21 ноÑб. 2019 г. в 02:45, Evgeny Sinelnikov <<a href="mailto:sin@altlinux.org">sin@altlinux.org</a>>:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">ЗдравÑтвуйте,<br>
<br>
Хочу напомнить об актуальной до Ñих пор теме нелокальных вариантов<br>
наÑтроек PAM. С момента поÑледнего обÑÑƒÐ¶Ð´ÐµÐ½Ð¸Ñ Ð¿Ð¾ÑвилиÑÑŒ дополнительные<br>
вопроÑÑ‹, задачи и проблемы. Ð, между тем, Ñ Ñ‚ÐµÑ… пор ничего не<br>
изменилоÑÑŒ:<br>
<a href="https://lists.altlinux.org/pipermail/devel/2017-April/202654.html" rel="noreferrer" target="_blank">https://lists.altlinux.org/pipermail/devel/2017-April/202654.html</a><br>
<br>
Отмечу, что уÑловие uid >= 500 Ð´Ð»Ñ Ð»ÑŽÐ±Ñ‹Ñ… глобальных пользователей. И<br>
наÑтройку Ñтой политики Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ control Ñ Ð¿Ð¾ÐºÐ° оÑтавил - Ñто<br>
Ð¾Ñ‚Ð´ÐµÐ»ÑŒÐ½Ð°Ñ Ð½Ðµ Ñтоль Ð°ÐºÑ‚ÑƒÐ°Ð»ÑŒÐ½Ð°Ñ Ð¿Ñ€Ð¾Ð±Ð»ÐµÐ¼Ð° (оÑталаÑÑŒ Ñ‚ÐµÐºÑƒÑ‰Ð°Ñ Ñхема).<br>
<br>
Текущие изменениÑ, которые Ñ Ñ…Ð¾Ñ‡Ñƒ предложить протеÑтировать и<br>
внедрить, включают в ÑÐµÐ±Ñ Ñледующие проблемы и решениÑ:<br>
- "путаница при наличии Ñовпадающих логинов". По умолчанию вводитÑÑ<br>
Ñтрогий контроль на уровне Ñтека PAM-модулей Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ модулÑ<br>
pam_localuser Ð´Ð»Ñ Ð¼ÐµÑ‚Ð¾Ð´Ð¾Ð² krb5, krb5_ccreds и winbind (Ð´Ð»Ñ sss Ñто уже<br>
внедрено);<br>
- Ð”Ð»Ñ ÑÐ¾Ñ…Ñ€Ð°Ð½ÐµÐ½Ð¸Ñ Ð²Ð¾Ð·Ð¼Ð¾Ð¶Ð½Ð¾Ñтей логики Ñ Ð¸Ñпользованием "путаницы", как<br>
фичи (а такие варианты иÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ ÑущеÑтвуют) вводитÑÑ Ð¼ÐµÑ‚Ð¾Ð´<br>
krb5_local;<br>
- Ð”Ð»Ñ ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿Ð¾Ð»Ð¸Ñ‚Ð¸ÐºÐ°Ð¼Ð¸ наÑтройки ÑеÑÑии вводитÑÑ Ð½Ð¾Ð²Ñ‹Ð¹ control -<br>
system-policy.<br>
<br>
ТеÑÑ‚Ð¾Ð²Ð°Ñ Ñборка готова и ÑÐµÐ¹Ñ‡Ð°Ñ Ð½Ð°Ñ…Ð¾Ð´Ð¸Ñ‚ÑÑ Ð½Ð° Ñтадии отладки (оÑновные<br>
теÑты уÑпешно завершены, требуютÑÑ Ð´Ð¾Ð±Ñ€Ð¾Ð²Ð¾Ð»ÑŒÑ†Ñ‹ Ð´Ð»Ñ ÑƒÑ‡Ð°ÑÑ‚Ð¸Ñ Ð²<br>
раÑширенной проверке):<br>
#240988 EPERM #7 [test-only] sisyphus pam-config.git=1.8.0-alt1<br>
<br>
<br>
PS: Ðа текущем Ñтапе вÑÑ‘ завиÑит от мейнтенера pam-config:<br>
$ ssh girar acl sisyphus pam-config show<br>
pam-config   ldv<br>
<br>
PPS: Я не Ñтал трогать три метода pkcs11 (выглÑдит прилично Ð´Ð»Ñ Ñвоих<br>
задач), ldap и multi (pam-модули на базе ldap не понимаю как<br>
отлаживать - предпочитаю не трогать, как наÑледие).<br>
<br>
________________________________________<br>
<br>
О поÑледнем подробнее:<br>
<br>
sin@xpi pam-config $ ls -1 /etc/pam.d/system-*<br>
/etc/pam.d/system-auth -> system-auth-krb5_local<br>
/etc/pam.d/system-auth-krb5<br>
/etc/pam.d/system-auth-krb5_ccreds<br>
/etc/pam.d/system-auth-krb5_local<br>
/etc/pam.d/system-auth-ldap<br>
/etc/pam.d/system-auth-local<br>
/etc/pam.d/system-auth-multi<br>
/etc/pam.d/system-auth-pkcs11<br>
/etc/pam.d/system-auth-sss<br>
/etc/pam.d/system-auth-use_first_pass -> system-auth-use_first_pass-krb5_local<br>
/etc/pam.d/system-auth-use_first_pass-krb5<br>
/etc/pam.d/system-auth-use_first_pass-krb5_ccreds<br>
/etc/pam.d/system-auth-use_first_pass-krb5_local<br>
/etc/pam.d/system-auth-use_first_pass-ldap<br>
/etc/pam.d/system-auth-use_first_pass-local<br>
/etc/pam.d/system-auth-use_first_pass-multi<br>
/etc/pam.d/system-auth-use_first_pass-pkcs11<br>
/etc/pam.d/system-auth-use_first_pass-sss<br>
/etc/pam.d/system-auth-use_first_pass-winbind<br>
/etc/pam.d/system-auth-winbind<br>
/etc/pam.d/system-policy -> system-policy-global<br>
/etc/pam.d/system-policy-global<br>
/etc/pam.d/system-policy-local<br>
<br>
ÐаÑтройка system-policy раÑширÑÐµÐ¼Ð°Ñ Ð¸ включает в ÑебÑ, по умолчанию,<br>
две политики - local и global.<br>
<br>
~ # control system-policy help<br>
global: global session policy with mkhomedir<br>
local: local session policy<br>
~ # control system-policy summary<br>
system session policy type<br>
~ # control system-policy help<br>
global: global session policy with mkhomedir<br>
local: local session policy<br>
~ # control system-policy<br>
local<br>
<br>
По Ñути, Ð¿ÐµÑ€Ð²Ð°Ñ Ð¾Ñ‚ второй отличаетÑÑ Ñ‚Ð¾Ð»ÑŒÐºÐ¾ одним - наличием модулÑ<br>
pam_mkhomedir.so<br>
<br>
~ # cat /etc/pam.d/system-policy-local<br>
#%PAM-1.0<br>
session     required    pam_mktemp.so<br>
session     required    pam_limits.so<br>
~ # cat /etc/pam.d/system-policy-global<br>
#%PAM-1.0<br>
session     required    pam_mktemp.so<br>
session     required    pam_mkhomedir.so silent<br>
session     required    pam_limits.so<br>
<br>
Ещё одна оÑобенноÑть - при переключении system-auth Ñ local на любую<br>
другую - system-policy автоматичеÑки переключаетÑÑ Ð½Ð° global и<br>
обратно:<br>
~ # control system-auth local<br>
~ # control system-policy<br>
local<br>
~ # control system-auth sss<br>
~ # control system-policy<br>
global<br>
<br>
Ðто делает поведение по умолчанию аналогичным тому, которое было<br>
раньше. При Ñтом, еÑли system-policy задано, то system-auth возвращает<br>
system-policy в иÑходное только при переключении на local, но не<br>
наоборот:<br>
~ # control system-auth<br>
sss<br>
~ # control system-policy<br>
global<br>
~ # control system-auth local<br>
~ # control system-policy<br>
local<br>
<br>
~ # control system-policy test<br>
~ # control system-policy<br>
test<br>
~ # control system-auth krb5<br>
~ # control system-policy<br>
test<br>
~ # control system-auth sss<br>
~ # control system-policy<br>
test<br>
~ # control system-auth local<br>
~ # control system-policy<br>
local<br>
<br>
Ð”Ð»Ñ ÐºÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ð¹, где вмеÑто pam_mkhomedir.so нужно иÑпользовать<br>
pam_oddjob_mkhomedir (а Ñто SELinux конфигурации, в первую очередь), а<br>
также Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñ‚Ð°Ðº называемых групповых политик, модули<br>
system-policy планируетÑÑ ÑƒÑтанавливать дополнительно (аналогично<br>
тому, как Ñто делаетÑÑ Ð´Ð»Ñ system-auth):<br>
~ # rpm -qf /etc/pam.d/system-auth-local<br>
pam-config-1.8.0-alt1.noarch<br>
~ # rpm -qf /etc/pam.d/system-auth-sss<br>
sssd-client-2.2.2-alt2.x86_64<br>
<br>
<br>
-- <br>
Sin (Sinelnikov Evgeny)<br>
</blockquote></div><br clear="all"><br>-- <br><div dir="ltr" class="gmail_signature">Sin (Sinelnikov Evgeny)</div></div>