ALT Linux Community general discussions
 help / color / mirror / Atom feed
From: "Прокопьев Евгений" <john@rmts.donpac.ru>
To: community@altlinux.ru
Subject: Re: [Comm] Maildrop filtering
Date: Fri, 16 May 2003 13:23:49 +0400
Message-ID: <3EC4AE25.6090209@rmts.donpac.ru> (raw)
In-Reply-To: <20030515233728.2541260f.dima@sakhalin.ru>

Dmitry Lebkov пишет:

>>А как вообще тогда правильно решить задачу? Необходимо дублировать 
>>определенные письма, выкладывая их в общую папку и в персональную для
>>alex.
> 
> 
> Все зависит от того, как организована доставка почты вообще. В каком
> формате хранится, что alex использует для получения почты - IMAP или
> POP3, alex и john - это учетные записи в системе или виртуальные
> почтовые ящики? После ответов на эти вопросы можно будет думать над
> задачей ...

Задача в целом такая. Есть группа разработчиков, для общения которых 
имеется shared folder, в который они пишут (это последовательно 
обрабатывают Postfix и Maildrop со своим /etc/courier-imap/maildroprc), 
и из которой читают посредством Courier IMAP. Есть некоторые (alex), 
которые сидят на диалапе, и просто не могут синхронизироваться с shared 
folder, даже при небольшом количестве писем, просто не удается дождаться 
окончания синхронизации. Ну а читать в онлайне им, понятное дело, 
неприкольно. Вот им и надо дать доступ через POP3, а копии писем 
складывать туда.


> Да, в процессе доставки почты локальным учетным записям maildrop
> выполняется с UID/GID пользователя, которому производится доставка.
> Т.е. если alex и john - локальные учетные записи и ты хочешь скопировать
> сообщение, которое идет к john, в ящик к alex - оба этих пользователя
> должны иметь одну и ту же _основную_ группу (Note: в ALM, при создании
> пользователя, создается и группа с таким же именем и по-умолчанию она
> является основной для этого пользователя).

# id john
uid=500(john) gid=10(wheel) 
groups=10(wheel),12(mail),52(cvs),104(webmaster),503(arbuz)
# id alex
uid=502(alex) gid=10(wheel) 
groups=10(wheel),52(cvs),104(webmaster),503(arbuz)
# ls -l /var/spool/mail/alex/
total 14
-rw-r--r--    1 alex     mail           12 Apr 27 13:13 
courierimapsubscribed
-rw-r--r--    1 alex     mail           15 Apr 27 13:13 courierimapuiddb
drwxrwx---    2 alex     mail           48 Apr 26 16:22 cur
drwxrwx---    2 alex     mail          104 May 15 08:40 new
drwx------    3 alex     mail           72 Apr 27 13:19 shared-folders
-rw-r--r--    1 alex     mail           58 Apr 26 19:54 shared-maildirs
drwxrwx---    2 alex     mail           48 May 15 08:40 tmp
# ls -l /var/spool/mail | grep alex
drwxrwx---    7 alex     mail          280 Apr 27 13:16 alex

  >>Я включил пользователя john, от которого доставляется почта, в группу
>>mail, и разрешил этой группе писать в /var/spool/mail/alex и все 
>>подпапки, но все равно:
>>
>>[john@myserver john]$ echo hello | maildrop-userdb alex@myserver.ru
>>maildrop-userdb: Unable to open filter file, errno=2.
>>
>>Видимо, необходим доступ еще и к /home/alex/.mailfilter или как там
>>его, но это уж слишком.
> 
> 
> Нет, этого не нужно.

А в чем же тогда дело?

>>Да и вообще манипуляции с группой mail тоже не очень хороши. Есть ли 
>>более изящные способы (кроме mailman - это как пушкой по мухе).
> 
> 
> Мне видится три варианта:
>  - общая основная группа у всех почтовых аккаунтов, для которых
>    требуется описанный тобой способ филтьрации;

+ права доступа для группы. Но это вроде есть. Кстати, почему именно 
_основная_ ?

>  - отдельная Maildir-папка с соответствующими правами;

Да, так все и работает по-нормальному, но тут исключительная ситуация

>  - виртуальные почтовые ящики

Ох... Не читал ты мое письмо чуть ниже?

# echo hello | maildrop-userdb -d marconi@ugtovar.ru
[root@ugtovar etc]# su - mail -s /bin/bash
-bash-2.05b$ echo hello | maildrop-userdb -d marconi@ugtovar.ru

Все прекрасно. А вот результаты echo hello | mail marconi@myserver.ru

May 16 13:16:23 ugtovar postfix/pickup[28624]: 5600D1C68: uid=0 from=<root>
May 16 13:16:23 ugtovar postfix/cleanup[29086]: 5600D1C68: 
message-id=<20030516091623.5600D1C68@ugtovar.ru>
May 16 13:16:23 ugtovar postfix/qmgr[18962]: 5600D1C68: 
from=<root@ugtovar.ru>, size=279, nrcpt=1 (queue active)
May 16 13:16:23 ugtovar postfix/local[29088]: 5600D1C68: 
to=<marconi@ugtovar.ru>, relay=local, delay=0, status=bounced (unknown 
user: "marconi")

Я знаю, что Postfix не по твоей части, но может идейку какую-нибудь, а ? ;-)

>>Нельзя ли из /etc/courier-imap/maildroprc отдать письмо MTA или
>>положить в  /var/spool/mail/alex от имени alex?
> 
> 
> В процессе фильтрации, сообщение можно отдать на STDIN внешней
> программы. man maildirfilter. Но имей ввиду, что в случае доставки
> того же сообщения через MTA ты получищь mail loop, т.к. информация
> о получателе останется без изменения и сообщение снова попадет
> под общесистемный фильтр.

Угу, думал уже об этом

> Вобщем, вариантов - море. Сообщай подробности конфигурации, а там
> что-нить придумаем ... ;)

С stdin все-таки наверняка я выкручусь (хотя может это просто только на 
первый взгляд).

А вот как быть с виртуальными почтовыми ящиками, для которых мне вообще 
не нужны записи в /etc/passwd, я не могу придумать. Может Postfix вообще 
так не умеет? Т.е. ищет $LOGNAME в /etc/passwd в обязательном порядке, а 
если не нашел, то в master.cf на maildrop не смотрит, а просто 
выплевавает, да и все?

-- 
С уважением, Прокопьев Евгений



  reply	other threads:[~2003-05-16  9:23 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-05-14  6:01 Прокопьев Евгений
2003-05-14 22:01 ` Dmitry Lebkov
2003-05-15  4:47   ` Прокопьев Евгений
2003-05-15  6:37     ` Dmitry Lebkov
2003-05-15  9:35       ` Прокопьев Евгений
2003-05-15 12:37         ` Dmitry Lebkov
2003-05-16  9:23           ` Прокопьев Евгений [this message]
2003-05-16 16:56             ` Dmitry Lebkov
2003-05-19 10:11               ` Mike Lykov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3EC4AE25.6090209@rmts.donpac.ru \
    --to=john@rmts.donpac.ru \
    --cc=community@altlinux.ru \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

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