The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"postfix spawn"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"postfix spawn"  
Сообщение от yoohoo15 (ok) on 19-Янв-06, 18:26 
Пытаюсь заставить AVP проверять почту. Использую postfix 2.2.5, Mandrivalinux 2006. Проблема такая - авп пишется фильтром в master.cf, его должен запустить spawn под нужным пользователем (если верить ману, это posfixёный аналог init.d). А spawn пишет unknown user, то есть он не может найти пользователя под которым должен стартануть авп. Пользователь существует. Может кто-нибудь натыкался на такую грабель?

PS. AVP 5.5

Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

  • postfix spawn, yoohoo15, 00:57 , 22-Янв-06, (1)   +
    • postfix spawn, Skif, 02:01 , 22-Янв-06, (2)  
    • postfix spawn, yoohoo15, 11:46 , 23-Янв-06, (3)   +
      • postfix spawn, Skif, 12:33 , 23-Янв-06, (4)   +
        • postfix spawn, yoohoo15, 13:38 , 23-Янв-06, (5)  
          • postfix spawn, Skif, 17:08 , 23-Янв-06, (6)  
            • postfix spawn, yoohoo15, 18:18 , 23-Янв-06, (7)  
              • postfix spawn, jonatan, 09:47 , 24-Янв-06, (8)  
                • postfix spawn, yoohoo15, 15:25 , 24-Янв-06, (9)  
  • postfix spawn, yoohoo15, 14:48 , 26-Янв-06, (10)  

Сообщения по теме [Сортировка по времени, UBB]


1. "postfix spawn"  
Сообщение от yoohoo15 (??) on 22-Янв-06, 00:57 
> Пытаюсь заставить AVP проверять почту. Использую postfix 2.2.5, Mandrivalinux 2006. Проблема
>такая - авп пишется фильтром в master.cf, его должен запустить spawn
>под нужным пользователем (если верить ману, это posfixёный аналог init.d). А
>spawn пишет unknown user, то есть он не может найти пользователя
>под которым должен стартануть авп. Пользователь существует. Может кто-нибудь натыкался на
>такую грабель?
>
>PS. AVP 5.5

А в мандриве 10.2 работает ...

Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "postfix spawn"  
Сообщение от Skif (ok) on 22-Янв-06, 02:01 
лог можно показать? Полностью, когда стартует вплоть до вылетания ошибки? Остановите сервер, очистите лог и запустите снова. Все что наругалось, выложите.


Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "postfix spawn"  
Сообщение от yoohoo15 (??) on 23-Янв-06, 11:46 
Jan 17 11:11:42 localhost postfix/master[25747]: daemon started -- version 2.2.5, configuration /etc/postfix
Jan 17 11:12:31 localhost postfix/smtpd[25755]: connect from f25.mail.ru[194.67.57.151]
Jan 17 11:12:31 localhost postfix/smtpd[25755]: warning: support for restriction "check_relay_domains" will be removed from Postfix; use "reject_unauth_destin
Jan 17 11:12:31 localhost postfix/smtpd[25755]: 9B70273DCF: client=f25.mail.ru[194.67.57.151]
Jan 17 11:12:31 localhost postfix/cleanup[25759]: 9B70273DCF: message-id=<E1EyljC-0008AF-00.yoohoo15-mail-ru@f25.mail.ru>
Jan 17 11:12:31 localhost postfix/qmgr[25753]: 9B70273DCF: from=<yoohoo15@mail.ru>, size=904, nrcpt=1 (queue active)
Jan 17 11:12:31 localhost postfix/smtpd[25755]: disconnect from f25.mail.ru[194.67.57.151]
Jan 17 11:12:31 localhost postfix/spawn[25762]: fatal: unknown user name: kluser  <-- вот это место, spawn должен запустить АВП под kluser, что бы он проверил письмо. Пользователь существует. Пробовал разных пользователей, не помогло.
Jan 17 11:12:32 localhost postfix/master[25747]: warning: process /usr/lib/postfix/spawn pid 25762 exit status 1
Jan 17 11:12:32 localhost postfix/master[25747]: warning: /usr/lib/postfix/spawn: bad command startup -- throttling
Jan 17 11:12:32 localhost postfix/lmtp[25761]: 9B70273DCF: to=<roman@makhmud.ru>, relay=none, delay=1, status=deferred (connect to 127.0.0.1[127.0.0.1]: server dropped connection without sending the initial greeting
Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "postfix spawn"  
Сообщение от Skif (ok) on 23-Янв-06, 12:33 
покажите
id kluser
а так же master.cf
Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

5. "postfix spawn"  
Сообщение от yoohoo15 (??) on 23-Янв-06, 13:38 
[root@mail ~]# id kluser
uid=506(kluser) gid=506(klusers) группы=506(klusers)

master.cf

==========================================================================
# service type  private unpriv  chroot  wakeup  maxproc command + args
#               (yes)   (yes)   (yes)   (never) (100)
# ==========================================================================
smtp    inet    n       -       y       -       -       smtpd
##<KIS55> ## Added by Kaspersky Anti-Virus Installer ##
                -o content_filter=lmtp:127.0.0.1:10030
## Added by Kaspersky Anti-Virus Installer ##<KIS55>
#submission inet n      -       n       -       -       smtpd
#       -o smtpd_etrn_restrictions=reject
#       -o smtpd_client_restrictions=permit_sasl_authenticated,reject
#smtps    inet  n       -       n       -       -       smtpd
#  -o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes
#submission   inet    n       -       n       -       -       smtpd
#  -o smtpd_etrn_restrictions=reject
#  -o smtpd_enforce_tls=yes -o smtpd_sasl_auth_enable=yes
#628      inet  n       -       n       -       -       qmqpd
pickup  fifo    n       -       y       60      1       pickup
##<KIS55> ## Added by Kaspersky Anti-Virus Installer ##
                -o content_filter=lmtp:127.0.0.1:10030
## Added by Kaspersky Anti-Virus Installer ##<KIS55>
  -o content_filter=
  -o receive_override_options=
cleanup unix    n       -       y       -       0       cleanup
qmgr    fifo    n       -       y       300     1       qmgr
#qmgr     fifo  n       -       n       300     1       oqmgr

// поскипано

##### END OF CONTENT FILTER CUSTOMIZATIONS #####
#<KIS55>
127.0.0.1:10030     inet  n      n      n      -      20     spawn
                user=kluser   argv=/opt/kav/5.5/kav4mailservers/bin/smtpscanner
127.0.0.1:10031    inet  n      -      n      -      21      smtpd
         -o content_filter=
         -o local_recipient_maps=
         -o relay_recipient_maps=
         -o smtpd_restriction_classes=
         -o smtpd_client_restrictions=
         -o smtpd_helo_restrictions=
         -o smtpd_sender_restrictions=
         -o mynetworks=127.0.0.0/8
         -o strict_rfc821_envelopes=yes
         -o smtpd_error_sleep_time=0
         -o smtpd_soft_error_limit=1001
         -o smtpd_hard_error_limit=1000
         -o myhostname=mail.makhmud.ru

#<KIS55>

Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

6. "postfix spawn"  
Сообщение от Skif (ok) on 23-Янв-06, 17:08 
>[root@mail ~]# id kluser
>uid=506(kluser) gid=506(klusers) группы=506(klusers)
>
>master.cf
>
>==========================================================================
># service type  private unpriv  chroot  wakeup  maxproc
>command + args
>#               (yes)   (yes)   (yes)   (never) (100)
># ==========================================================================
>smtp    inet    n       -       y       -       -       smtpd
>##<KIS55> ## Added by Kaspersky Anti-Virus Installer ##
>            
>    -o content_filter=lmtp:127.0.0.1:10030
>            
>    -o content_filter=lmtp:127.0.0.1:10030
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
зачем дважды пускать?

>## Added by Kaspersky Anti-Virus Installer ##<KIS55>
>  -o content_filter=
>  -o receive_override_options=
>cleanup unix    n      
>-       y    
>   -       0
>      cleanup
>qmgr    fifo    n    
>   -       y
>      300    
>1       qmgr
>#qmgr     fifo  n    
>  -       n  
>     300     1
>      oqmgr
>
>// поскипано
>
>##### END OF CONTENT FILTER CUSTOMIZATIONS #####
>#<KIS55>
>127.0.0.1:10030     inet  n    
> n      n    
>  -      20  
>  spawn
>            
>    user=kluser   argv=/opt/kav/5.5/kav4mailservers/bin/smtpscanner
>127.0.0.1:10031    inet  n      
>-      n    
> -      21    
>  smtpd
>         -o content_filter=
>         -o local_recipient_maps=
>         -o relay_recipient_maps=
>         -o smtpd_restriction_classes=
>         -o smtpd_client_restrictions=
>         -o smtpd_helo_restrictions=
>         -o smtpd_sender_restrictions=
>         -o mynetworks=127.0.0.0/8
>         -o strict_rfc821_envelopes=yes
>         -o smtpd_error_sleep_time=0
>         -o smtpd_soft_error_limit=1001
>         -o smtpd_hard_error_limit=1000
>         -o myhostname=mail.makhmud.ru
>
>#<KIS55>


Как по мне, вы смешали здесь два подхода в навешивании фильтров. почитайте FILTER_README, что идет в комплекте с postfix

Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

7. "postfix spawn"  
Сообщение от yoohoo15 (??) on 23-Янв-06, 18:18 
нет, фильтры навешены правильно
первый фильтр для входящей нелокальной почты
>smtp    inet    n       -       y       -       -       smtpd
                                                         ^^^^^
>##<KIS55> ## Added by Kaspersky Anti-Virus Installer ##
>                -o content_filter=lmtp:127.0.0.1:10030
>## Added by Kaspersky Anti-Virus Installer ##<KIS55>

а второй для локальной

>pickup  fifo    n       -       y       60      1       pickup
                                                         ^^^^^^
>##<KIS55> ## Added by Kaspersky Anti-Virus Installer ##
>                -o content_filter=lmtp:127.0.0.1:10030
>## Added by Kaspersky Anti-Virus Installer ##<KIS55>

spawn должен запустить smtpscanner под kluser. Сам spawn запускается,
он не может найти пользователя.

>127.0.0.1:10030     inet  n      n      n      -      20     spawn
>                user=kluser   argv=/opt/kav/5.5/kav4mailservers/bin/smtpscanner
                                                                       ^^^^^^

я сильно думаю что виноваты дистростроители, потому что в мандрайке 10.2 все работает прекрасно, возможно надо ядро обновить. Буду ждать пока починят, посижу на 10.2.

Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

8. "postfix spawn"  
Сообщение от jonatan (ok) on 24-Янв-06, 09:47 
Понимаю, что spawn работает не в chroot, но попробуйте /etc/passwd скопировать туда (в chroot).
Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

9. "postfix spawn"  
Сообщение от yoohoo15 (??) on 24-Янв-06, 15:25 
>Понимаю, что spawn работает не в chroot, но попробуйте /etc/passwd скопировать туда
>(в chroot).

   не помогло. Сам spawn запускается под рутом, как положено.


Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

10. "postfix spawn"  
Сообщение от yoohoo15 (??) on 26-Янв-06, 14:48 
Решил докопаться до конца...

Нашел в исходниках постфикса spawn.c;

    for ( /* void */ ; *argv != 0; argv++) {

        /*
         * user=username[:groupname]
         */
        if (strncasecmp("user=", *argv, sizeof("user=") - 1) == 0) {
            user = *argv + sizeof("user=") - 1;
            if ((group = split_at(user, ':')) != 0)     /* XXX clobbers argv */
                if (*group == 0)
                    group = 0;
            if ((pwd = getpwnam(user)) == 0)
                msg_fatal("unknown user name: %s", user);
                    ^^^^^^^^^^^^^^^^^ - выскакивает именно здесь  
            attr->uid = pwd->pw_uid;
            if (group != 0) {
                if ((grp = getgrnam(group)) == 0)
                    msg_fatal("unknown group name: %s", group);
                attr->gid = grp->gr_gid;
            } else {
                attr->gid = pwd->pw_gid;
            }
        }

делаю вывод, что getpwnam не может найти пользователя, хотя в user
лежит правильное значение. Пишу вот так -

#include <sys/types.h>
#include <pwd.h>

struct passwd *p;

int main(){
    p = 0;
    p = getpwnam("kluser");
    if (p == 0) {printf("p=NULL\n");}
    else {
        printf("p <> 0\n");
        printf("user name      : ");printf(p->pw_name); printf("\n");
        printf("password       : ");printf(p->pw_passwd); printf("\n");
        printf("real name      : ");printf(p->pw_gecos); printf("\n");
        printf("home directory : ");printf(p->pw_dir); printf("\n");
        printf("shell program  : ");printf(p->pw_shell); printf("\n");
    }
}

юзера находит на ура. В чем грабель - не знаю, фантазии не хватает :(

Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру