>Другими словами мне надо раскидать почту по ящикам вида /var/spool/vmail/domain.com/user
>как это сделать ? помогите !
Есть такой вариант:
в /etc/mail/access
to:virtdomain.com RELAY
в virtualusertable:
@virtdomain.com !
в mailertable:
@virtdomain.com procmail:/path/to/virtdomain.com.rc
в /path/to/virtdomain.com.rc
VIRTUSER=$1
DOMAIN=virtdomain.com
MAILDIR=/var/spool/vmail/$DOMAIN
:0
$VIRTUSER
-----------------------------------------------------
этот вариант не подходит по нескольким причинам:
1. невозможно отслеживать disc quota для владельца домена, т.к. procmail в данном случае создаёт mailbox под своими правами [ rw------- root.root ]
2. не совсем удобно мастерить web интерфейс для редактирования custom фильтров для каждого домена
тогда есть такой вариант:
в /etc/mail/virtusertable
@virtdomain.com owner+%1
в /etc/mail/local-host-names
virtdomain.com
в /home/owner/.procmailrc
VIRTUSER=$1
MAILDIR=/home/mail
:0
$VIRTUSER
-----------------------------------
недостатками этого метода является:
1. невозможность написания custom фильтров для каждого домена, т.к. у owner'a может быть несколько доменов. причину я вижу в том, что не возможно передать domain получателя или хотя бы весь адрес получателя, а не только user из sendmail в procmail в переменную $1, если это каким то образом возможно, тогда эта проблема сходу решается.
короче в идеале хотелось бы поиметь такую возможность
в /home/owner/.procmailrc
VIRTUSER=$1
DOMAIN=$2
INCLUDERC=.$DOMAIN.rc
или
VIRTUSER=`echo $1 | cut -d"@" -f1`
DOMAIN=`echo $1 | cut -d"@" -f1`
INCLUDERC=.$DOMAIN.rc