From: Michael Shigorin <mike@osdn.org.ua>
To: ALT Linux sysadmin discuss <sysadmins@lists.altlinux.org>
Subject: [Sysadmins] fetchmail+multidrop или см. аттачи
Date: Thu, 30 Nov 2006 19:50:21 +0200
Message-ID: <20061130175021.GR4051@osdn.org.ua> (raw)
In-Reply-To: <200611301919.45957.ave4600@mail.ru>
[-- Attachment #1: Type: text/plain, Size: 1796 bytes --]
On Thu, Nov 30, 2006 at 07:19:45PM +0200, Alexander Yereschenko wrote:
> Попробовал вытягивать fethmail и скармливать постфиксу... Но
> что-то он все скидывает пользователю, от которого запускался
> fetchmail (напр. admin).
Лучше для такого применять совсем непривилегированного
пользователя, у которого шелл -- максимум /bin/rbash.
> ( В письмах присутствуют поля To: user1@mydomen.gov.ua )
> Содержимое .fetchmailrc :
> poll domen.gov.ua protocol pop3 username "org" password "pass"
> Пробовал вариант:
> poll domen.gov.ua protocol pop3 username "org" password "pass" to * here
> Не помогло - скидывается локальному юзеру org
> Чтение man fetchmail и пробование вариантов должного результата не дает...
> Видимо не там или не так читаю... :)
Насколько помню, Вам от fetchmail нужен multidrop, хотя последний
раз, как с таким сталкивался -- был нарисован позорный
.procmailrc на десяток пользователей, которые были (точнее,
два скрипта для заведения и удаления почтовых пользователей,
которые делали нужные изменения и в нём).
Ух ты, даже нашлись в загашнике :)
> Как все-таки это сделать правильно? Как раскидать по локальным
> ящикам в зависимости от содержимого поля "To: "
> Кстати, при этом игнорировать в этом поле адреса не из своего
> домена, дабы не плодить дупы.
А они тоже валятся? Тогда модифицируйте болвань .procmailrc
из этих скриптов или /etc/procmailrc (или конфигурацию postfix
в р-не access или header_checks), чтобы их дискардить.
> ЗЫ. Конечно, правильнее всего - это vpn внутри всей организации
> и нормальное хождение почты между почтовыми серверами... Но
> пока увы по различным причинам нереализуемо.
Бывает. Если что -- пишите, звоните (234-7560), поможем.
--
---- WBR, Michael Shigorin <mike@altlinux.ru>
------ Linux.Kiev http://www.linux.kiev.ua/
[-- Attachment #2: adduser.pop3 --]
[-- Type: text/plain, Size: 714 bytes --]
#!/bin/bash
USER="$1"
DOMAIN=XXXXXXX.kiev.ua
GROUP=popusers
DIR=/dev/null
SHELL=/dev/null
PREFIX=/usr/local
POP3LIST=$PREFIX/lib/users.pop3
POP3USER=pop3
POP3DIR=/home/$POP3USER
PROCMAILRC=$POP3DIR/.procmailrc
[ $# = 0 ] && {
echo "Usage: $0 pop3-login-name" >&2
exit 1
}
[ ! -d $POP3DIR ] && {
echo -n "Creating '$POP3USER' account... "
useradd -m -k /dev/null -s /dev/null $POP3USER && echo "done."
touch $POP3DIR/.fetchmailrc
}
grep -q "^$USER$" $POP3LIST && {
echo "User '$USER' already exists in $POP3LIST." >&2
exit 2
}
grep -q "^$GROUP" /etc/group || addgroup -g $GROUP
. $PREFIX/lib/procmailrc.sh
echo "$USER" >> $POP3LIST
useradd -d $DIR -M -s $SHELL -g GROUP $USER
rebuild_promailrc ()
[-- Attachment #3: deluser.pop3 --]
[-- Type: text/plain, Size: 355 bytes --]
#!/bin/bash2
USER="$1"
PREFIX=/usr/local
POP3LIST=$PREFIX/lib/users.pop3
TMP=`mktemp $PREFIX/tmpXXXXXX.pop3`
POP3USER=pop3
POP3DIR=/home/$POP3USER
PROCMAILRC=$POP3DIR/.procmailrc
[ $# = 0 ] && exit 1
. $PREFIX/lib/procmailrc.sh
userdel $USER && grep -v "^$USER$" $POP3LIST > $TMP || exit 2
cat $TMP > $POP3LIST && rm -f $TMP
rebuild_promailrc ()
[-- Attachment #4: procmailrc.sh --]
[-- Type: text/plain, Size: 345 bytes --]
#/bin/bash2
rebuild_procmailrc () {
[ -z "$PROCMAILRC" ] && exit 3
cat $1 | while read i; do
echo ":0: # POP3 user \'$USER\'" >> $PROCMAILRC.main
echo "* ^TO.*$USER@$DOMAIN" >> $PROCMAILRC.main
echo "! $USER" >> $PROCMAILRC.main
echo >> $PROCMAILRC.main
done
cat $PROCMAILRC.{head,main,tail} > $PROCMAILRC
rm -f $PROCMAILRC.main
}
next prev parent reply other threads:[~2006-11-30 17:50 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-11-30 17:19 [Sysadmins] Почта. Хочется странного Alexander Yereschenko
2006-11-30 17:50 ` Michael Shigorin [this message]
2006-12-01 12:07 ` [Sysadmins] fetchmail+multidrop или см. аттачи Alexander Yereschenko
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=20061130175021.GR4051@osdn.org.ua \
--to=mike@osdn.org.ua \
--cc=shigorin@gmail.com \
--cc=sysadmins@lists.altlinux.org \
/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 sysadmins discussion
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/sysadmins/0 sysadmins/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 sysadmins sysadmins/ http://lore.altlinux.org/sysadmins \
sysadmins@lists.altlinux.org sysadmins@lists.altlinux.ru sysadmins@lists.altlinux.com
public-inbox-index sysadmins
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.sysadmins
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git