URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 60803
[ Назад ]

Исходное сообщение
"pam_krb5 иногда выдает ошибку"

Отправлено Vadq , 10-Окт-05 19:32 
запущен
saslauthd -a pam

в AD Win2K заведен пользователь myuser с паролем 1

в system-auth указан pam_krb5, krb5.conf настроен, с kinit все ОК, TGT получаем исправно

если спросить
#wbinfo -u | fgrep myuser
myuser
# id myluser
uid=16777338(myuser) gid=16777218 groups=16777218,16777230,16777261,16777264,16777306,16777336

проверяем
# testsaslauthd -s smtp -u myuser -p 1
0: OK "Success."

И вдруг непонятно почему (например, если ввести неправильный пароль)
# id myuser
id: myuser: No such user

# testsaslauthd -s smtp -u myuser -p 1
0: NO "authentication failed"

В логах идет ошибка
pam_krb5[24276]: error resolving user name 'myuser' to uid/gid pair

Самое интересное, что если спросить
#wbinfo -u

Все снова работает без ошибок.

Вопрос к всезнающему ALL: ПОЧЕМУ?
Для справки RHEL4ES, pam_krb5-2.1.2-1, cyrus-sasl-2.1.19-5.EL4, samba-3.0.10-1.4E


Содержание

Сообщения в этом обсуждении
"pam_krb5 иногда выдает ошибку"
Отправлено PavelR , 11-Окт-05 07:30 
У меня подозрение что настроить nsswitch.conf всетаки забыли ?

"pam_krb5 иногда выдает ошибку"
Отправлено Vadq , 11-Окт-05 09:38 
>У меня подозрение что настроить nsswitch.conf всетаки забыли ?

nsswitch.conf

passwd:     files winbind
group:      files winbind
shadow:     files winbind
protocols:  files winbind
services:   files winbind
netgroup:   files winbind


"pam_krb5 иногда выдает ошибку"
Отправлено PavelR , 11-Окт-05 11:10 
Ну по сути проблема то не в pam_krb5  а в nss_winbind ?

Странно то, что он то работает, то не работает... Может pam_krb5 конфликтует с samba/winbind ?

Может имеет смысл переделать все в одну сторону, тоесть использовать не смесь pam_krb5 + nss_winbindd а одно из двух:

pam_krb5 + nss_ldap

или

nss_winbind + pam_winbind ?

У меня крутится последнее, вроде успешно :) Выбор можно обосновать именно тем что тамже трудится файлсервер samba.


"pam_krb5 иногда выдает ошибку"
Отправлено Vadq , 11-Окт-05 12:10 
>Ну по сути проблема то не в pam_krb5  а в nss_winbind
>?

Судя по логам winbind.log после #wbinfo -u
он кеширует список пользователей
nsswitch/winbindd_cache.c:wcache_save_user(659)
  wcache_save_user: S-1-5-21-996812450-1012022007-1275988791-7891 (acct_name myuser)

и видимо в тот момент когда кэш умирает, почему-то не находит пользователя 8з(

[2005/10/11 12:03:03, 10] nsswitch/winbindd.c:winbind_client_read(470)
  client_read: read 1824 bytes. Need 0 more for a full request.
[2005/10/11 12:03:03, 10] nsswitch/winbindd.c:process_request(321)
  process_request: request fn GETPWNAM
[2005/10/11 12:03:03, 3] nsswitch/winbindd_user.c:winbindd_getpwnam(126)
  [ 3226]: getpwnam myuser
[2005/10/11 12:03:03, 10] nsswitch/winbindd_cache.c:refresh_sequence_number(355)
  refresh_sequence_number: DOMAIN time ok
[2005/10/11 12:03:03, 10] nsswitch/winbindd_cache.c:refresh_sequence_number(386)
  refresh_sequence_number: DOMAIN seq number is now 1919946
[2005/10/11 12:03:03, 10] nsswitch/winbindd_cache.c:centry_expired(410)
  centry_expired: Key NS/DOMAIN/MYUSER for domain DOMAIN is good.
[2005/10/11 12:03:03, 10] nsswitch/winbindd_cache.c:wcache_fetch(489)
  wcache_fetch: returning entry NS/DOMAIN/MYUSER for domain DOAMIN
[2005/10/11 12:03:03, 10] nsswitch/winbindd_cache.c:name_to_sid(962)
  name_to_sid: [Cached] - cached name for domain DOAMIN status NT code 0xc0020042
[2005/10/11 12:03:03, 1] nsswitch/winbindd_user.c:winbindd_getpwnam(161)
  user 'myuser' does not exist
[2005/10/11 12:03:03, 10] nsswitch/winbindd.c:client_write(524)
  client_write: wrote 1300 bytes.


Может у него настройка брать только из кэша, но в mc я вижу все группы и всех пользователей домена.


"pam_krb5 иногда выдает ошибку"
Отправлено PavelR , 11-Окт-05 12:22 
Cудя по этому:

>если спросить
>wbinfo -u | fgrep myuser
>myuser
># id myuser
>uid=16777338(myuser) gid=16777218 >groups=16777218,16777230,16777261,16777264,16777306,16777336

>>проверяем
># testsaslauthd -s smtp -u myuser -p 1
>0: OK "Success."

>И вдруг непонятно почему (например, если ввести неправильный пароль)
># id myuser
>id: myuser: No such user


Судя по вышеприведенному тексту и приложеному логу - всетаки дело в работе nsswitch/nss_winbind.  

В файле etc/nsswitch.conf

passwd:     files winbind
group:      files winbind


Должны существовать файлы библиотек
( у меня в FreeBSD 5.1 nss_winbind.so.1 симлинк к нему nss_winbind.so в каталогах /usr/local/lib и соотвествующие симлинки в /usr/lib )

В smb.conf должны быть настроены параметры(приведены мои значения):

    winbind use default domain = yes
    winbind uid = 50000-60000
    winbind gid = 1000-2000
    winbind enum users = yes
    winbind enum groups = yes


>Может у него настройка брать только из кэша, но в mc я
>вижу все группы и всех пользователей домена.

В mc - это где ?


"pam_krb5 иногда выдает ошибку"
Отправлено Vadq , 11-Окт-05 13:06 
>В mc - это где ?


В midnight commander по CTRL^X O (смена владельца), выдает список юзеров и групп как локальных так и домена.