* [Comm] "pam_mount password:" - неаккуратненько как-то
@ 2009-06-19 6:46 Денис Черносов
2009-06-19 23:38 ` Dmitry V. Levin
2009-06-22 10:06 ` Andrew V. Stepanov
0 siblings, 2 replies; 16+ messages in thread
From: Денис Черносов @ 2009-06-19 6:46 UTC (permalink / raw)
To: ALT Linux Community general discussions
День добрый всем!
auth optional pam_mount.so
auth sufficient pam_tcb.so shadow fork prefix=$2a$ count=8
nullok use_first_pass
auth requisite pam_succeed_if.so uid >= 500 quiet
auth required pam_ldap.so use_first_pass
В пятом бранче pam_mount, будучи поставленный первым в auth (а
по-другому его заставить работать у меня не получилось), меняет строку
запроса пароля и вместо просто "password:" пишет "pam_mount
password:".
$ su -
pam_mount password:
На 4.1 такого не наблюдалось. Зачем понадобилось "кишки светить" перед
юзерами и можно ли это поведение отключить по-простому?
Пока сделал как в мануале написано, но смысл написанного для меня
непрозрачен, а значит велик риск, что через пару месяцев буду смотреть
на эти строчки в глубокой задумчивости:
auth [success=2 default=ignore] pam_tcb.so shadow fork
prefix=$2a$ count=8 nullok
auth requisite
pam_succeed_if.so uid >= 500 quiet
auth [success=1 default=ignore] pam_ldap.so use_first_pass
auth optional pam_mount.so
--
С уважением,
Черносов Денис
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [Comm] "pam_mount password:" - неаккуратненько как-то
2009-06-19 6:46 [Comm] "pam_mount password:" - неаккуратненько как-то Денис Черносов
@ 2009-06-19 23:38 ` Dmitry V. Levin
2009-06-22 6:41 ` Денис Черносов
2009-06-22 10:06 ` Andrew V. Stepanov
1 sibling, 1 reply; 16+ messages in thread
From: Dmitry V. Levin @ 2009-06-19 23:38 UTC (permalink / raw)
To: ALT Linux Community general discussions
[-- Attachment #1: Type: text/plain, Size: 1765 bytes --]
On Fri, Jun 19, 2009 at 11:46:36AM +0500, Денис Черносов wrote:
> День добрый всем!
>
> auth optional pam_mount.so
> auth sufficient pam_tcb.so shadow fork prefix=$2a$ count=8
> nullok use_first_pass
> auth requisite pam_succeed_if.so uid >= 500 quiet
> auth required pam_ldap.so use_first_pass
>
> В пятом бранче pam_mount, будучи поставленный первым в auth (а
> по-другому его заставить работать у меня не получилось), меняет строку
> запроса пароля и вместо просто "password:" пишет "pam_mount
> password:".
Не надо помещать pam_mount.so в стеке аутентификации до pam_tcb.so,
это не правильно по сути.
> $ su -
> pam_mount password:
>
> На 4.1 такого не наблюдалось. Зачем понадобилось "кишки светить" перед
> юзерами и можно ли это поведение отключить по-простому?
Попробуйте спросить у автора pam_mount. Хотя я бы не стал его винить,
ведь благодаря ему сразу видна ошибка в стеке аутентификации.
> Пока сделал как в мануале написано, но смысл написанного для меня
> непрозрачен, а значит велик риск, что через пару месяцев буду смотреть
> на эти строчки в глубокой задумчивости:
>
> auth [success=2 default=ignore] pam_tcb.so shadow fork prefix=$2a$ count=8 nullok
> auth requisite pam_succeed_if.so uid >= 500 quiet
> auth [success=1 default=ignore] pam_ldap.so use_first_pass
> auth optional pam_mount.so
Вы неправильно списали с pam_mount(8). Чтобы понять, в чём ошибка,
придётся прочитать и понять pam.conf(5).
P.S. Извините, что отвечаю не на те вопросы, которые вы задаёте,
а на те, которые напрашиваются. Просто я сейчас готовил сборку
пакета pam-1.1.0-alt1, и вы попали под горячую руку. :)
--
ldv
[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [Comm] "pam_mount password:" - неаккуратненько как-то
2009-06-19 23:38 ` Dmitry V. Levin
@ 2009-06-22 6:41 ` Денис Черносов
2009-06-22 16:48 ` Dmitry V. Levin
0 siblings, 1 reply; 16+ messages in thread
From: Денис Черносов @ 2009-06-22 6:41 UTC (permalink / raw)
To: ALT Linux Community general discussions
20 июня 2009 г. 4:38 пользователь Dmitry V. Levin (ldv@altlinux.org) написал:
> On Fri, Jun 19, 2009 at 11:46:36AM +0500, Денис Черносов wrote:
>> День добрый всем!
>>
>> auth optional pam_mount.so
>> auth sufficient pam_tcb.so shadow fork prefix=$2a$ count=8
>> nullok use_first_pass
>> auth requisite pam_succeed_if.so uid >= 500 quiet
>> auth required pam_ldap.so use_first_pass
>>
>> В пятом бранче pam_mount, будучи поставленный первым в auth (а
>> по-другому его заставить работать у меня не получилось), меняет строку
>> запроса пароля и вместо просто "password:" пишет "pam_mount
>> password:".
>
> Не надо помещать pam_mount.so в стеке аутентификации до pam_tcb.so,
> это не правильно по сути.
Согласен, мне это тоже кажется "неправильным по сути". Но в примере
явно указано, что при аутентификации через ldap или winbind нужно
модуль pam_mount ставить впереди...
----------------------
#man pam_mount
....
When "sufficient" is used in the second column, you must make
sure that pam_mount is added
before this entry. Otherwise pam_mount will not get executed
should a previous PAM module suc‐
ceed. Also be aware of the "include" statements. These make PAM
look into the specified file.
If there is a "sufficient" statement, then the pam_mount
entry must either be in the included
file before the "sufficient" statement or before the "include" statement.
If you use pam_ldap, pam_winbind, or any other authentication
services that make use of PAM's
sufficient keyword, model your configuration on the following order:
・・・
account sufficient pam_ldap.so
auth required pam_mount.so
auth sufficient pam_ldap.so use_first_pass
auth required pam_unix.so use_first_pass
session optional pam_mount.so
・・・
This allows for:
1. pam_mount, as the first "auth" module, will prompt for a
password and export it to the PAM
system.
2. pam_ldap will use the password from the PAM system to try
and authenticate the user. If
this succedes, the user will be authenticated. If it
fails, pam_unix will try to authenti‐
cate.
....
------------------------------
А второй вариант (см. ниже) указывается именно для таких как мы с вами :)
-----------------------------
...
Alternatively, the following is possible (thanks to Andrew
Morgan for the hint!):
auth [success=2 default=ignore] pam_unix2.so
auth [success=1 default=ignore] pam_ldap.so use_first_pass
auth requisite pam_deny.so
auth optional pam_mount.so
It may seem odd, but the first three lines will make it so
that at least one of pam_unix2 or
pam_ldap has to succeed. As you can see, pam_mount will be run
after successful authentifica‐
tion with these subsystems.
...
-----------------------------
Причем, оба этих варианта - рабочие. А вот если попытаться без затей
поставить pam_mount после остальных модулей, то пароль запрашивается
два раза. Причем даже при перезапуске демонов (веселуха service
network restart - введи пароль...). И это не решается использованием
опции use_first_pass.
Единственное, что я не пробовал - это ставить строчку с account
впереди строчек с auth. Потому что, насколько я понимаю, от этого
ничего не изменится...
>> $ su -
>> pam_mount password:
>>
>> На 4.1 такого не наблюдалось. Зачем понадобилось "кишки светить" перед
>> юзерами и можно ли это поведение отключить по-простому?
>
> Попробуйте спросить у автора pam_mount. Хотя я бы не стал его винить,
> ведь благодаря ему сразу видна ошибка в стеке аутентификации.
Никто его не винит. Просто см. сабж - "неаккуратненько как-то". И
хотелось бы узнать, есть ли возможность сэмулировать старое поведение.
>> auth [success=2 default=ignore] pam_tcb.so shadow fork prefix=$2a$ count=8 nullok
>> auth requisite pam_succeed_if.so uid >= 500 quiet
>> auth [success=1 default=ignore] pam_ldap.so use_first_pass
>> auth optional pam_mount.so
>
> Вы неправильно списали с pam_mount(8). Чтобы понять, в чём ошибка,
> придётся прочитать и понять pam.conf(5).
Ошибки нет. Этот вариант работает. Мой вопрос касается скорее
эстетики, чем функциональности...
> P.S. Извините, что отвечаю не на те вопросы, которые вы задаёте,
> а на те, которые напрашиваются. Просто я сейчас готовил сборку
> пакета pam-1.1.0-alt1, и вы попали под горячую руку. :)
Не всегда получается задать удачный вопрос, чтобы получить полезный ответ ;)
--
С уважением,
Черносов Денис
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [Comm] "pam_mount password:" - неаккуратненько как-то
2009-06-19 6:46 [Comm] "pam_mount password:" - неаккуратненько как-то Денис Черносов
2009-06-19 23:38 ` Dmitry V. Levin
@ 2009-06-22 10:06 ` Andrew V. Stepanov
2009-06-24 9:02 ` Денис Черносов
1 sibling, 1 reply; 16+ messages in thread
From: Andrew V. Stepanov @ 2009-06-22 10:06 UTC (permalink / raw)
To: ALT Linux Community general discussions
Добрый день.
Логика инсталлера задана в пакете: installer-feature-network-shares-client
в котором сказано:
pmconf="$destdir/etc/security/pam_mount.conf.xml"
pamconf="$destdir/etc/pam.d/system-auth"
msg "Insert settings to $pamconf to use pam_mount."
append_after="$(sed -n '/^auth[[:space:]]\+required/=' "$pamconf" | tail -n 1)"
test -n "$append_after" && sed -i -e "$append_after a auth optional pam_mount.so" "$pamconf"
append_after="$(sed -n '/^session[[:space:]]\+required/=' "$pamconf" | tail -n 1)"
test -n "$append_after" && sed -i -e "$append_after a session optional pam_mount.so" "$pamconf"
т.е. вставить после required.
Может кто-то другой из разработчиков знает почему у вас такой конфиг для PAM.
Денис Черносов:
> День добрый всем!
>
> auth optional pam_mount.so
> auth sufficient pam_tcb.so shadow fork prefix=$2a$ count=8
> nullok use_first_pass
> auth requisite pam_succeed_if.so uid >= 500 quiet
> auth required pam_ldap.so use_first_pass
>
>
> В пятом бранче pam_mount, будучи поставленный первым в auth (а
> по-другому его заставить работать у меня не получилось), меняет строку
> запроса пароля и вместо просто "password:" пишет "pam_mount
> password:".
>
> $ su -
> pam_mount password:
>
>
> На 4.1 такого не наблюдалось. Зачем понадобилось "кишки светить" перед
> юзерами и можно ли это поведение отключить по-простому?
> Пока сделал как в мануале написано, но смысл написанного для меня
> непрозрачен, а значит велик риск, что через пару месяцев буду смотреть
> на эти строчки в глубокой задумчивости:
>
>
> auth [success=2 default=ignore] pam_tcb.so shadow fork
> prefix=$2a$ count=8 nullok
> auth requisite
> pam_succeed_if.so uid >= 500 quiet
> auth [success=1 default=ignore] pam_ldap.so use_first_pass
> auth optional pam_mount.so
>
>
> --
> С уважением,
> Черносов Денис
> _______________________________________________
> community mailing list
> community@lists.altlinux.org
> https://lists.altlinux.org/mailman/listinfo/community
--
stanv -- http://andrusha.googlepages.com
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [Comm] "pam_mount password:" - неаккуратненько как-то
2009-06-22 6:41 ` Денис Черносов
@ 2009-06-22 16:48 ` Dmitry V. Levin
2009-06-24 8:31 ` Денис Черносов
0 siblings, 1 reply; 16+ messages in thread
From: Dmitry V. Levin @ 2009-06-22 16:48 UTC (permalink / raw)
To: ALT Linux Community general discussions
[-- Attachment #1: Type: text/plain, Size: 6239 bytes --]
On Mon, Jun 22, 2009 at 11:41:36AM +0500, Денис Черносов wrote:
> 20 июня 2009 г. 4:38 пользователь Dmitry V. Levin (ldv@altlinux.org) написал:
> > On Fri, Jun 19, 2009 at 11:46:36AM +0500, Денис Черносов wrote:
> >> День добрый всем!
> >>
> >> auth optional pam_mount.so
> >> auth sufficient pam_tcb.so shadow fork prefix=$2a$ count=8
> >> nullok use_first_pass
> >> auth requisite pam_succeed_if.so uid >= 500 quiet
> >> auth required pam_ldap.so use_first_pass
> >>
> >> В пятом бранче pam_mount, будучи поставленный первым в auth (а
> >> по-другому его заставить работать у меня не получилось), меняет строку
> >> запроса пароля и вместо просто "password:" пишет "pam_mount
> >> password:".
> >
> > Не надо помещать pam_mount.so в стеке аутентификации до pam_tcb.so,
> > это не правильно по сути.
>
> Согласен, мне это тоже кажется "неправильным по сути". Но в примере
> явно указано, что при аутентификации через ldap или winbind нужно
> модуль pam_mount ставить впереди...
> ----------------------
> #man pam_mount
> ....
> When "sufficient" is used in the second column, you must make
> sure that pam_mount is added
> before this entry. Otherwise pam_mount will not get executed
> should a previous PAM module suc‐
> ceed. Also be aware of the "include" statements. These make PAM
> look into the specified file.
> If there is a "sufficient" statement, then the pam_mount
> entry must either be in the included
> file before the "sufficient" statement or before the "include" statement.
>
> If you use pam_ldap, pam_winbind, or any other authentication
> services that make use of PAM's
> sufficient keyword, model your configuration on the following order:
>
> ・・・
> account sufficient pam_ldap.so
> auth required pam_mount.so
> auth sufficient pam_ldap.so use_first_pass
> auth required pam_unix.so use_first_pass
> session optional pam_mount.so
> ・・・
>
> This allows for:
>
> 1. pam_mount, as the first "auth" module, will prompt for a
> password and export it to the PAM
> system.
>
> 2. pam_ldap will use the password from the PAM system to try
> and authenticate the user. If
> this succedes, the user will be authenticated. If it
> fails, pam_unix will try to authenti‐
> cate.
> ....
> ------------------------------
Тут написано, что если вы добавляете что-то в стек после sufficient, то
есть ненулевая вероятность того, что это что-то не будет выполнено. Это
утерждение верно, однако из него не следует, что необходимо что-то
добавлять перед sufficient.
> А второй вариант (см. ниже) указывается именно для таких как мы с вами :)
> -----------------------------
> ...
> Alternatively, the following is possible (thanks to Andrew
> Morgan for the hint!):
>
> auth [success=2 default=ignore] pam_unix2.so
> auth [success=1 default=ignore] pam_ldap.so use_first_pass
> auth requisite pam_deny.so
> auth optional pam_mount.so
>
> It may seem odd, but the first three lines will make it so
> that at least one of pam_unix2 or
> pam_ldap has to succeed. As you can see, pam_mount will be run
> after successful authentifica‐
> tion with these subsystems.
> ...
> -----------------------------
>
> Причем, оба этих варианта - рабочие.
Да, конечно.
> А вот если попытаться без затей
> поставить pam_mount после остальных модулей, то пароль запрашивается
> два раза. Причем даже при перезапуске демонов (веселуха service
> network restart - введи пароль...). И это не решается использованием
> опции use_first_pass.
Вы хотите сказать, что pam_mount не поддерживает use_first_pass?
> Единственное, что я не пробовал - это ставить строчку с account
> впереди строчек с auth. Потому что, насколько я понимаю, от этого
> ничего не изменится...
Конечно.
> >> auth [success=2 default=ignore] pam_tcb.so shadow fork prefix=$2a$ count=8 nullok
> >> auth requisite pam_succeed_if.so uid >= 500 quiet
> >> auth [success=1 default=ignore] pam_ldap.so use_first_pass
> >> auth optional pam_mount.so
> >
> > Вы неправильно списали с pam_mount(8). Чтобы понять, в чём ошибка,
> > придётся прочитать и понять pam.conf(5).
>
> Ошибки нет. Этот вариант работает. Мой вопрос касается скорее
> эстетики, чем функциональности...
В этом варианте есть семантическая ошибка. Попробуйте
- залогиниться ldap-пользователем;
- залогиниться несуществующим пользователем.
Дело в том, что формат pam.conf(5) желательно изучить для того, чтобы
понимать, как работает та или иная конструкция.
--
ldv
[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [Comm] "pam_mount password:" - неаккуратненько как-то
2009-06-22 16:48 ` Dmitry V. Levin
@ 2009-06-24 8:31 ` Денис Черносов
2009-06-24 11:12 ` Dmitry V. Levin
0 siblings, 1 reply; 16+ messages in thread
From: Денис Черносов @ 2009-06-24 8:31 UTC (permalink / raw)
To: ALT Linux Community general discussions
22 июня 2009 г. 21:48 пользователь Dmitry V. Levin (ldv@altlinux.org) написал:
> Тут написано, что если вы добавляете что-то в стек после sufficient, то
> есть ненулевая вероятность того, что это что-то не будет выполнено. Это
> утерждение верно, однако из него не следует, что необходимо что-то
> добавлять перед sufficient.
Именно это и следует, если верить мануалу:
>> If you use pam_ldap, pam_winbind, or any other authentication
>> services that make use of PAM's
>> sufficient keyword, model your configuration on the following order:
Перевод:
Если вы используете pam_ldap, pam_winbind или любой другой сервис
аутентификации, который использует опцию sufficient, ваш конфиг будет
выглядеть следующим образом:
>> ・・・
>> auth required pam_mount.so <-- Поставили в самом начале!!! До sufficient.
>> auth sufficient pam_ldap.so use_first_pass
>> auth required pam_unix.so use_first_pass
>> ・・・
Т.е., получается, что pam_mount.so стоит первым, sufficient
pam_ldap.so - вторым и уже после них pam_unix.so (а в нашем случае
будет pam_tcb).
>> А вот если попытаться без затей
>> поставить pam_mount после остальных модулей, то пароль запрашивается
>> два раза. Причем даже при перезапуске демонов (веселуха service
>> network restart - введи пароль...). И это не решается использованием
>> опции use_first_pass.
>
> Вы хотите сказать, что pam_mount не поддерживает use_first_pass?
Именно это я и хочу сказать. Вряд ли была бы необходимость
использовать "[success=2 default=ignore]", если бы это было не так.
>> >> auth [success=2 default=ignore] pam_tcb.so shadow fork prefix=$2a$ count=8 nullok
>> >> auth requisite pam_succeed_if.so uid >= 500 quiet
>> >> auth [success=1 default=ignore] pam_ldap.so use_first_pass
>> >> auth optional pam_mount.so
>> >
>> > Вы неправильно списали с pam_mount(8). Чтобы понять, в чём ошибка,
>> > придётся прочитать и понять pam.conf(5).
>>
>> Ошибки нет. Этот вариант работает. Мой вопрос касается скорее
>> эстетики, чем функциональности...
>
> В этом варианте есть семантическая ошибка. Попробуйте
> - залогиниться ldap-пользователем;
> - залогиниться несуществующим пользователем.
Попробовал. Никаких сюрпризов. Все работает. Может конкретно пояснить,
в каком месте "семантическая ошибка"?
> Дело в том, что формат pam.conf(5) желательно изучить для того, чтобы
> понимать, как работает та или иная конструкция.
Давайте не будем пальцы гнуть на ровном месте ;)
Повторяю, оба варианта рабочие. Настройки сделаны по аналогии с
мануалом (который я и процитировал). И если вы что-то заметили, не
соотв. другому ману, то поделитесь пожалуйста конкретикой, а не
посылайте искать черную кошку в темной комнате...
--
С уважением,
Черносов Денис
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [Comm] "pam_mount password:" - неаккуратненько как-то
2009-06-22 10:06 ` Andrew V. Stepanov
@ 2009-06-24 9:02 ` Денис Черносов
0 siblings, 0 replies; 16+ messages in thread
From: Денис Черносов @ 2009-06-24 9:02 UTC (permalink / raw)
To: ALT Linux Community general discussions
22 июня 2009 г. 15:06 пользователь Andrew V. Stepanov
(stanv@altlinux.ru) написал:
> Добрый день.
>
> Логика инсталлера задана в пакете: installer-feature-network-shares-client
> в котором сказано:
>
> pmconf="$destdir/etc/security/pam_mount.conf.xml"
> pamconf="$destdir/etc/pam.d/system-auth"
>
> msg "Insert settings to $pamconf to use pam_mount."
>
> append_after="$(sed -n '/^auth[[:space:]]\+required/=' "$pamconf" | tail -n 1)"
> test -n "$append_after" && sed -i -e "$append_after a auth optional pam_mount.so" "$pamconf"
>
> append_after="$(sed -n '/^session[[:space:]]\+required/=' "$pamconf" | tail -n 1)"
> test -n "$append_after" && sed -i -e "$append_after a session optional pam_mount.so" "$pamconf"
>
> т.е. вставить после required.
>
> Может кто-то другой из разработчиков знает почему у вас такой конфиг для PAM.
Я знаю. Сам отлаживал. И получил два рабочих варианта. Которые
совпадают с тем, что написано в мануале.
Если у меня еще не окончательно всё смешалось, то из коробки должен
получаться такой вариант:
auth sufficient pam_tcb.so shadow fork prefix=$2a$ count=8 nullok
auth requisite pam_succeed_if.so uid >= 500 quiet
auth required pam_ldap.so use_first_pass
auth optional pam_mount.so
Но он не работает при доменных логинах. Точнее работает, но пароль
запрашивается два раза. Второй раз модулем pam_mount (он так и пишет
"reenter password for pam_mount:").
А опция use_first_pass этим модулем не принимается:
Jun 24 13:39:15 srv login[19369]: pam_mount(pam_mount.c:100): unknown
pam_mount option "use_first_pass"
И если я ничего не путаю, то это появилось именно после обновления до
5-го бранча (или даже во время одного из последних обновлений в пятом
бранче).
--
С уважением,
Черносов Денис
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [Comm] "pam_mount password:" - неаккуратненько как-то
2009-06-24 8:31 ` Денис Черносов
@ 2009-06-24 11:12 ` Dmitry V. Levin
2009-06-25 6:27 ` Денис Черносов
0 siblings, 1 reply; 16+ messages in thread
From: Dmitry V. Levin @ 2009-06-24 11:12 UTC (permalink / raw)
To: ALT Linux Community general discussions
[-- Attachment #1: Type: text/plain, Size: 3312 bytes --]
On Wed, Jun 24, 2009 at 01:31:29PM +0500, Денис Черносов wrote:
> 22 июня 2009 г. 21:48 пользователь Dmitry V. Levin (ldv@altlinux.org) написал:
> > Тут написано, что если вы добавляете что-то в стек после sufficient, то
> > есть ненулевая вероятность того, что это что-то не будет выполнено. Это
> > утерждение верно, однако из него не следует, что необходимо что-то
> > добавлять перед sufficient.
>
> Именно это и следует, если верить мануалу:
>
> >> If you use pam_ldap, pam_winbind, or any other authentication
> >> services that make use of PAM's
> >> sufficient keyword, model your configuration on the following order:
>
> Перевод:
> Если вы используете pam_ldap, pam_winbind или любой другой сервис
> аутентификации, который использует опцию sufficient, ваш конфиг будет
> выглядеть следующим образом:
>
> >> ・・・
> >> auth required pam_mount.so <-- Поставили в самом начале!!! До sufficient.
> >> auth sufficient pam_ldap.so use_first_pass
> >> auth required pam_unix.so use_first_pass
> >> ・・・
>
> Т.е., получается, что pam_mount.so стоит первым, sufficient
> pam_ldap.so - вторым и уже после них pam_unix.so (а в нашем случае
> будет pam_tcb).
Какой смысл выполнять pam_mount.so до аутентификации (pam_tcb.so/pam_ldap.so)?
Зачем вообще pam_mount.so помещать в стек аутентификации?
> >> >> auth [success=2 default=ignore] pam_tcb.so shadow fork prefix=$2a$ count=8 nullok
> >> >> auth requisite pam_succeed_if.so uid >= 500 quiet
> >> >> auth [success=1 default=ignore] pam_ldap.so use_first_pass
> >> >> auth optional pam_mount.so
> >> >
> >> > Вы неправильно списали с pam_mount(8). Чтобы понять, в чём ошибка,
> >> > придётся прочитать и понять pam.conf(5).
> >>
> >> Ошибки нет. Этот вариант работает. Мой вопрос касается скорее
> >> эстетики, чем функциональности...
> >
> > В этом варианте есть семантическая ошибка. Попробуйте
> > - залогиниться ldap-пользователем;
> > - залогиниться несуществующим пользователем.
>
> Попробовал. Никаких сюрпризов. Все работает. Может конкретно пояснить,
> в каком месте "семантическая ошибка"?
Например, если pam_ldap.so в стеке auth вернул success, то
какой модуль в стеке auth будет выполнен следующим?
--
ldv
[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [Comm] "pam_mount password:" - неаккуратненько как-то
2009-06-24 11:12 ` Dmitry V. Levin
@ 2009-06-25 6:27 ` Денис Черносов
2009-06-25 21:19 ` Dmitry V. Levin
0 siblings, 1 reply; 16+ messages in thread
From: Денис Черносов @ 2009-06-25 6:27 UTC (permalink / raw)
To: ALT Linux Community general discussions
24 июня 2009 г. 16:12 пользователь Dmitry V. Levin (ldv@altlinux.org) написал:
> On Wed, Jun 24, 2009 at 01:31:29PM +0500, Денис Черносов wrote:
> Какой смысл выполнять pam_mount.so до аутентификации (pam_tcb.so/pam_ldap.so)?
> Зачем вообще pam_mount.so помещать в стек аутентификации?
Если я монтирую ресурс, требующий аутентификации, то модулю pam_mount
нужен логин-пароль. Реальная аутентификация так и продолжает
происходить либо в pam_ldap либо в pam_tcb, а pam_mount выступает в
роли прокси: запросил данные от своего имени, сохранил себе копию и
отправил далее по этапу.
Так я представляю себе эту ситуацию.
>> auth [success=2 default=ignore] pam_tcb.so shadow fork prefix=$2a$ count=8 nullok
>> auth requisite pam_succeed_if.so uid >= 500 quiet
>> auth [success=1 default=ignore] pam_ldap.so use_first_pass
>> auth optional pam_mount.so
> Например, если pam_ldap.so в стеке auth вернул success, то
> какой модуль в стеке auth будет выполнен следующим?
Если я правильно расшифровываю, то [success=2 default=ignore]
означает, что при успешной авторизации pam_tcb отвечает success и
перескакивает через один модуль. Строчка requisite очевидно, не
считается (возможно она в таком случае вообще не сработает, но
поскольку не экспериментировал, утверждать не могу), а иначе ignore и
идем по порядку...
По порядку у нас [success=1 default=ignore] - если авторизация в ldap
(по полученным реквизитам из use_first_pass) успешна, то с результатом
success идем к следующему модулю. Если ignore, то на этом всё
прекращается, поскольку pam_mount помечен, как optional, т.е.
вспомогательный.
Поправьте меня пожалуйста, где я неправ...
--
С уважением,
Черносов Денис
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [Comm] "pam_mount password:" - неаккуратненько как-то
2009-06-25 6:27 ` Денис Черносов
@ 2009-06-25 21:19 ` Dmitry V. Levin
2009-06-25 23:23 ` Dmitry V. Levin
2009-06-26 7:21 ` [Comm] "pam_mount password:" - неаккуратненько как-то Денис Черносов
0 siblings, 2 replies; 16+ messages in thread
From: Dmitry V. Levin @ 2009-06-25 21:19 UTC (permalink / raw)
To: ALT Linux Community general discussions
[-- Attachment #1: Type: text/plain, Size: 2117 bytes --]
On Thu, Jun 25, 2009 at 11:27:46AM +0500, Денис Черносов wrote:
> 24 июня 2009 г. 16:12 пользователь Dmitry V. Levin (ldv@altlinux.org) написал:
> > On Wed, Jun 24, 2009 at 01:31:29PM +0500, Денис Черносов wrote:
> > Какой смысл выполнять pam_mount.so до аутентификации (pam_tcb.so/pam_ldap.so)?
> > Зачем вообще pam_mount.so помещать в стек аутентификации?
>
> Если я монтирую ресурс, требующий аутентификации, то модулю pam_mount
> нужен логин-пароль. Реальная аутентификация так и продолжает
> происходить либо в pam_ldap либо в pam_tcb, а pam_mount выступает в
> роли прокси: запросил данные от своего имени, сохранил себе копию и
> отправил далее по этапу.
>
> Так я представляю себе эту ситуацию.
Если модулю pam_mount нужен пароль, то ему нужно присутствовать в стеке
аутентификации. Но пока основные модули аутентификации не дали своё
добро, pam_mount не должен вмешиваться.
Вы, конечно, правы в том, что использование sufficient вынуждает помещать
pam_mount.so в стек перед sufficient. Это значит, что вместо sufficient
лучше использовать переходы, как предложил Andrew Morgan, только тогда надо
указывать правильные значения для переходов.
Пожалуй, я попробую заменить в system-auth* все sufficient на переходы.
> >> auth [success=2 default=ignore] pam_tcb.so shadow fork prefix=$2a$ count=8 nullok
> >> auth requisite pam_succeed_if.so uid >= 500 quiet
> >> auth [success=1 default=ignore] pam_ldap.so use_first_pass
> >> auth optional pam_mount.so
>
> > Например, если pam_ldap.so в стеке auth вернул success, то
> > какой модуль в стеке auth будет выполнен следующим?
>
> Если я правильно расшифровываю, то [success=2 default=ignore]
> означает, что при успешной авторизации pam_tcb отвечает success и
> перескакивает через один модуль.
Нет. Давайте почитаем pam.conf(5) вместе. Там написано, что
"The actionN can be: an unsigned integer, n, signifying an action of ’jump
over the next n modules in the stack’".
Как правильно перевести фразу "jump over the next n modules in the stack"
при n == 2?
--
ldv
[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [Comm] "pam_mount password:" - неаккуратненько как-то
2009-06-25 21:19 ` Dmitry V. Levin
@ 2009-06-25 23:23 ` Dmitry V. Levin
2009-06-26 7:41 ` Денис Черносов
2009-06-26 7:21 ` [Comm] "pam_mount password:" - неаккуратненько как-то Денис Черносов
1 sibling, 1 reply; 16+ messages in thread
From: Dmitry V. Levin @ 2009-06-25 23:23 UTC (permalink / raw)
To: ALT Linux Community general discussions
[-- Attachment #1: Type: text/plain, Size: 1642 bytes --]
On Fri, Jun 26, 2009 at 01:19:16AM +0400, Dmitry V. Levin wrote:
> On Thu, Jun 25, 2009 at 11:27:46AM +0500, Денис Черносов wrote:
> > 24 июня 2009 г. 16:12 пользователь Dmitry V. Levin (ldv@altlinux.org) написал:
> > > On Wed, Jun 24, 2009 at 01:31:29PM +0500, Денис Черносов wrote:
> > > Какой смысл выполнять pam_mount.so до аутентификации (pam_tcb.so/pam_ldap.so)?
> > > Зачем вообще pam_mount.so помещать в стек аутентификации?
> >
> > Если я монтирую ресурс, требующий аутентификации, то модулю pam_mount
> > нужен логин-пароль. Реальная аутентификация так и продолжает
> > происходить либо в pam_ldap либо в pam_tcb, а pam_mount выступает в
> > роли прокси: запросил данные от своего имени, сохранил себе копию и
> > отправил далее по этапу.
> >
> > Так я представляю себе эту ситуацию.
>
> Если модулю pam_mount нужен пароль, то ему нужно присутствовать в стеке
> аутентификации. Но пока основные модули аутентификации не дали своё
> добро, pam_mount не должен вмешиваться.
>
> Вы, конечно, правы в том, что использование sufficient вынуждает помещать
> pam_mount.so в стек перед sufficient. Это значит, что вместо sufficient
> лучше использовать переходы, как предложил Andrew Morgan, только тогда надо
> указывать правильные значения для переходов.
>
> Пожалуй, я попробую заменить в system-auth-* все sufficient на переходы.
Можете попробовать взять новые system-auth-* прямо из репозитория
http://git.altlinux.org/people/ldv/packages/?p=pam-config.git;a=tree;f=pam-config
добавить optional pam_mount.so в конец стеков auth и session,
потестировать и рассказать о впечатлениях.
--
ldv
[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [Comm] "pam_mount password:" - неаккуратненько как-то
2009-06-25 21:19 ` Dmitry V. Levin
2009-06-25 23:23 ` Dmitry V. Levin
@ 2009-06-26 7:21 ` Денис Черносов
2009-06-26 19:05 ` Dmitry V. Levin
1 sibling, 1 reply; 16+ messages in thread
From: Денис Черносов @ 2009-06-26 7:21 UTC (permalink / raw)
To: ALT Linux Community general discussions
26 июня 2009 г. 2:19 пользователь Dmitry V. Levin (ldv@altlinux.org) написал:
>> >> auth [success=2 default=ignore] pam_tcb.so shadow fork prefix=$2a$ count=8 nullok
>> >> auth requisite pam_succeed_if.so uid >= 500 quiet
>> >> auth [success=1 default=ignore] pam_ldap.so use_first_pass
>> >> auth optional pam_mount.so
>>
> Нет. Давайте почитаем pam.conf(5) вместе. Там написано, что
> "The actionN can be: an unsigned integer, n, signifying an action of 'jump
> over the next n modules in the stack'".
>
> Как правильно перевести фразу "jump over the next n modules in the stack"
> при n == 2?
Да, вы правы. Получается, что в моем случае нужно указывать так:
auth [success=2 default=ignore] pam_tcb.so shadow fork
prefix=$2a$ count=8 nullok
auth requisite pam_succeed_if.so uid >= 500 quiet
auth [success=0 default=ignore] pam_ldap.so use_first_pass
auth optional pam_mount.so
--
С уважением,
Черносов Денис
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [Comm] "pam_mount password:" - неаккуратненько как-то
2009-06-25 23:23 ` Dmitry V. Levin
@ 2009-06-26 7:41 ` Денис Черносов
2009-06-26 19:10 ` Dmitry V. Levin
2009-06-26 21:48 ` [Comm] pam-config-1.5.0-alt1 Dmitry V. Levin
0 siblings, 2 replies; 16+ messages in thread
From: Денис Черносов @ 2009-06-26 7:41 UTC (permalink / raw)
To: ALT Linux Community general discussions
26 июня 2009 г. 4:23 пользователь Dmitry V. Levin (ldv@altlinux.org) написал:
> Можете попробовать взять новые system-auth-* прямо из репозитория
> http://git.altlinux.org/people/ldv/packages/?p=pam-config.git;a=tree;f=pam-config
> добавить optional pam_mount.so в конец стеков auth и session,
> потестировать и рассказать о впечатлениях.
Скопировал себе system-auth-ldap (с полной заменой возиться не стал,
уж простите), поправил как вы сказали. Пока полет нормальный. И
выглядит гораздо симпатичнее :)
Только я один момент до конца не уловил: будет ли в такой постановке
для локального пользователя проверяться условие: "pam_succeed_if.so
uid >= 500 quiet" ?
И еще один вопрос еще меня волнует (для повышения образованности).
Если я захочу модулем pam_mount прикручивать сетевые домашние
каталоги, то в каком порядке должны стоять pam_mount, pam_mktemp,
pam_limits и mk_homedir? Ведь по идее нужно сначала попытаться
прикрутить каталог, а уже потом проверять его наличие и создавать в
нем временную папку...
--
С уважением,
Черносов Денис
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [Comm] "pam_mount password:" - неаккуратненько как-то
2009-06-26 7:21 ` [Comm] "pam_mount password:" - неаккуратненько как-то Денис Черносов
@ 2009-06-26 19:05 ` Dmitry V. Levin
0 siblings, 0 replies; 16+ messages in thread
From: Dmitry V. Levin @ 2009-06-26 19:05 UTC (permalink / raw)
To: ALT Linux Community general discussions
[-- Attachment #1: Type: text/plain, Size: 1229 bytes --]
On Fri, Jun 26, 2009 at 12:21:47PM +0500, Денис Черносов wrote:
> 26 июня 2009 г. 2:19 пользователь Dmitry V. Levin (ldv@altlinux.org) написал:
> >> >> auth [success=2 default=ignore] pam_tcb.so shadow fork prefix=$2a$ count=8 nullok
> >> >> auth requisite pam_succeed_if.so uid >= 500 quiet
> >> >> auth [success=1 default=ignore] pam_ldap.so use_first_pass
> >> >> auth optional pam_mount.so
> >>
> > Нет. Давайте почитаем pam.conf(5) вместе. Там написано, что
> > "The actionN can be: an unsigned integer, n, signifying an action of 'jump
> > over the next n modules in the stack'".
> >
> > Как правильно перевести фразу "jump over the next n modules in the stack"
> > при n == 2?
>
> Да, вы правы. Получается, что в моем случае нужно указывать так:
>
> auth [success=2 default=ignore] pam_tcb.so shadow fork
> prefix=$2a$ count=8 nullok
> auth requisite pam_succeed_if.so uid >= 500 quiet
> auth [success=0 default=ignore] pam_ldap.so use_first_pass
> auth optional pam_mount.so
Не совсем так. Хотя бы один модуль аутентификации (последний в стеке)
не должен быть проигнорирован. В данном случае это pam_ldap.so
--
ldv
[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [Comm] "pam_mount password:" - неаккуратненько как-то
2009-06-26 7:41 ` Денис Черносов
@ 2009-06-26 19:10 ` Dmitry V. Levin
2009-06-26 21:48 ` [Comm] pam-config-1.5.0-alt1 Dmitry V. Levin
1 sibling, 0 replies; 16+ messages in thread
From: Dmitry V. Levin @ 2009-06-26 19:10 UTC (permalink / raw)
To: ALT Linux Community general discussions
[-- Attachment #1: Type: text/plain, Size: 1501 bytes --]
On Fri, Jun 26, 2009 at 12:41:46PM +0500, Денис Черносов wrote:
> 26 июня 2009 г. 4:23 пользователь Dmitry V. Levin (ldv@altlinux.org) написал:
>
> > Можете попробовать взять новые system-auth-* прямо из репозитория
> > http://git.altlinux.org/people/ldv/packages/?p=pam-config.git;a=tree;f=pam-config
> > добавить optional pam_mount.so в конец стеков auth и session,
> > потестировать и рассказать о впечатлениях.
>
> Скопировал себе system-auth-ldap (с полной заменой возиться не стал,
system-auth-use_first_pass-ldap за компанию тоже надо было взять,
некоторые службы его используют.
> уж простите), поправил как вы сказали. Пока полет нормальный. И
> выглядит гораздо симпатичнее :)
>
> Только я один момент до конца не уловил: будет ли в такой постановке
> для локального пользователя проверяться условие: "pam_succeed_if.so
> uid >= 500 quiet" ?
Для локального (обслуживаемого pam_tcb.so) не должно и не будет,
для остальных будет.
> И еще один вопрос еще меня волнует (для повышения образованности).
> Если я захочу модулем pam_mount прикручивать сетевые домашние
> каталоги, то в каком порядке должны стоять pam_mount, pam_mktemp,
> pam_limits и mk_homedir? Ведь по идее нужно сначала попытаться
> прикрутить каталог, а уже потом проверять его наличие и создавать в
> нем временную папку...
pam_mktemp и pam_limits ортогональны домашним каталогам.
Что касается взаимного порядка pam_mkhomedir и pam_mount, то
это зависит от ваших целей.
--
ldv
[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [Comm] pam-config-1.5.0-alt1
2009-06-26 7:41 ` Денис Черносов
2009-06-26 19:10 ` Dmitry V. Levin
@ 2009-06-26 21:48 ` Dmitry V. Levin
1 sibling, 0 replies; 16+ messages in thread
From: Dmitry V. Levin @ 2009-06-26 21:48 UTC (permalink / raw)
To: ALT Linux Community general discussions
[-- Attachment #1: Type: text/plain, Size: 701 bytes --]
On Fri, Jun 26, 2009 at 12:41:46PM +0500, Денис Черносов wrote:
> 26 июня 2009 г. 4:23 пользователь Dmitry V. Levin (ldv@altlinux.org) написал:
>
> > Можете попробовать взять новые system-auth-* прямо из репозитория
> > http://git.altlinux.org/people/ldv/packages/?p=pam-config.git;a=tree;f=pam-config
> > добавить optional pam_mount.so в конец стеков auth и session,
> > потестировать и рассказать о впечатлениях.
>
> Скопировал себе system-auth-ldap (с полной заменой возиться не стал,
> уж простите), поправил как вы сказали. Пока полет нормальный. И
> выглядит гораздо симпатичнее :)
Я так и думал.
Спасибо за тестирование, pam-config-1.5.0-alt1 отправлен в Сизиф.
--
ldv
[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 16+ messages in thread
end of thread, other threads:[~2009-06-26 21:48 UTC | newest]
Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-06-19 6:46 [Comm] "pam_mount password:" - неаккуратненько как-то Денис Черносов
2009-06-19 23:38 ` Dmitry V. Levin
2009-06-22 6:41 ` Денис Черносов
2009-06-22 16:48 ` Dmitry V. Levin
2009-06-24 8:31 ` Денис Черносов
2009-06-24 11:12 ` Dmitry V. Levin
2009-06-25 6:27 ` Денис Черносов
2009-06-25 21:19 ` Dmitry V. Levin
2009-06-25 23:23 ` Dmitry V. Levin
2009-06-26 7:41 ` Денис Черносов
2009-06-26 19:10 ` Dmitry V. Levin
2009-06-26 21:48 ` [Comm] pam-config-1.5.0-alt1 Dmitry V. Levin
2009-06-26 7:21 ` [Comm] "pam_mount password:" - неаккуратненько как-то Денис Черносов
2009-06-26 19:05 ` Dmitry V. Levin
2009-06-22 10:06 ` Andrew V. Stepanov
2009-06-24 9:02 ` Денис Черносов
ALT Linux Community general discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 community community/ http://lore.altlinux.org/community \
mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com
public-inbox-index community
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.community
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git