ALT Linux Community general discussions
 help / color / mirror / Atom feed
From: "Peter V. Saveliev" <peet@infosite.ru>
To: mandrake-russian@altlinux.ru
Subject: Re: [mdk-re] fetchmail повержен ;)
Date: Fri Dec  7 16:07:01 2001
Message-ID: <3C10BFA4.46B15ECB@infosite.ru> (raw)
In-Reply-To: <20011207131705.2ab05dd9.vyt@vzljot.ru>

Vyt wrote:

> On Fri, 7 Dec 2001 13:09:50 +0300 (MSK)
> "Peter V. Saveliev" <peet@infosite.ru> wrote:
>
> > УРА!
> >
> > Я победил fetchmail, и postfix впридачу! Теперь все контролирует
> > virtual postfix'a, и почта идет, куда надо. Всем спасибо.
>
> А поделиться? ;)
>
> <skipped>

ACHTUNG. Здесь не описаны:
    - настройка сети
    - регистрация домена
    - настройка ppp
    - настройка ipchains
    - настройка named
См. соотв. доки.

------------------------------------------------------------------
Задача: в офис фирмы установить сервер, осуществляющий... Ну, там, много
и чего и забирающий почту с сервера провайдера.

Условия: "мы" - nowhere.spb.ru, провайдер - provider.net, почтовый ящик
- корпоративный, пользователь looser с паролем balabala на
mail.provider.net,
доступ по модему.

Сервер: ALT Linux Mdk-RE, ядро 2.2.19; postfix, sendmail, procmail из
апдейтов.

Вот общая схема работы:

       To: userX@nowhere.spb.ru
SENDER ------------------------> PROVIDER
                                    |
               (fethmail)           |
        /---------------------------+
       /
      / fetchmail -> postfix
SERVER -----------------------------+
 |                                  |
 + -- root <------------------------+
 |                                  |
 + -- postmaster <------------------+
 |                                  |
 + -- user0 <-----------------------+
 |                                  |
 + -- user1 <-----------------------+
...                                ...
 + -- userk <-----------------------+

В принципе, можно, наверное и проще. Но я не заморачивался на тему
процмэйла, нет на это ни желания, ни времени - гораздо удобнее
показалось раскидывать по адресам с помощью постфикса.

POSTFIX ----------------------------------------

Сначала - настройка постфикса. Для более осмысленных действий надо
заглянуть в документацию, идущую с пакетом - там очень понятно все
расписано. Пока же - минимум, который позволит работать (должен
заметить, что ALT'овский пакет несет настройки по умолчанию, достаточные
для функционирования локального сервера).
/etc/postfix

    main.cf:
# Добавляем/изменяем строки на:
myorigin = nowhere.spb.ru
# ... иначе не поймет провайдер
virtual_maps = hash:/etc/postfix/virtual
# ... локальная почта должна быть локальной, см. ниже
relayhost = mail.provider.net
# ... все нелокальное засылать нелокально ;)
body_checks = regexp:/etc/postfix/body_checks
header_checks = regexp:/etc/postfix/header_checks
# спам нам не нужен, вирусы тоже. За содержимым этих
# файлов можно сползать хоть на opennet.ru

В принципе, можно устроить отложенную отсылку писем, но мне такой
вариант не понравился. Вместо этого письма отсылаются, как только встают
в очередь, а дозвон сделан по требованию - в итоге днем в офисе кипит
работа, а ночью все ложатся спать, и сервер кладет трубку.

    virtual:
root            root@localhost
postmaster      postmaster@localhost
user0           user0@localhost
@nowhere.spb.ru user1@localhost

... что объясняется спецификой компании. В этом пример раскартированы
как локальные пользователи, user0, так и корпоративные, user1. Вся
почта, идущая на user0@nowhere.spb.ru придет пользователю user0, вся
остальная - user1. Этот пример легко расширить либо модифицировать по
своему вкусу. Можно иметь несколько корпоративных ящиков, разгребая их,
например, серверами отделов ;) Как это происходит в моем случае, ибо
главный сисадмин - фанат NT - считает, что линух не в состоянии
разгребать корпоративные ящики и держит свору NTей ;)

    aliases:
# Обязательно проставьте, кому перенаправлять почту root, postmaster,
etc.!
postmaster:  user0
root:        user0

Например, так. Можно считать, что от нас почта пойдет. Если настроен DNS
;)

FETCHMAIL --------------------------------------

Теперь надо забрать почту от провайдера. IP у нас меняется, мы не всегда
доступны, потому в DNS наш сервер никогда не пропишут. Значит, надо
приложить усилия и забрать почту самим. Для этого есть fetchmail.

Конфигурацию легко провести через fetchmailconf, но он тянет за собой
много других пакетов, и - что хуже всего - иксы, в общем, это не
вариант. Читать man fetchmail не то чтобы полезно, но необходимо, но в
основном как пособие по медитации ;)

Потому приведу пример конфига.

set postmaster "user1"
set bouncemail
set no spambounce
set properties ""
set daemon 300
poll mail.provider.net with proto POP3 localdomains nowhere.spb.ru
       user 'looser' there with password 'balabala' is user0 user1 here

Этот конфиг дает возможность забирать почту от провайдера, выцепляя
оттуда почту user0 (наш локальный фаворит), все остальное отдавая
корпоративному user1. Можно вместо 'user0 user1' поставить '*', тогда
fetchmail будет искать соответствие среди всех системных пользователей.
Можно устраивать какие угодно сочетания, учитывая, что все это пойдет
потом через виртуал постфикса. В моем случае этого достаточно.

Нетрудно заметить, что раскидывание по пользователям осуществляет как
постфикс, так и фетчмэйл, и нужное сочетание паттернов выбирается в
зависимости от задачи. Благо выбор получается очень широкий - тем полнее
контроль за потоком ;)

Немного про опции/команды:

set postmaster - кому отсылать почту, которая не подходит под паттерн,
указанный в параметре 'is'.

set daemon - через сколько секунд проверять почту на сервере.

localdomains - очень важно!!! если ее не указать, можно получить
ситуацию, когда почта, пришедшая, по идее, на корпоративный ящик, вместо
того, чтобы мирно осесть уйдет снова к провайдеру - вроде, форвард на
самого себя ;((

Ну, все. Остается пожелать удачи.
Петр.






  reply	other threads:[~2001-12-07 16:07 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-12-07 13:10 [mdk-re] fetchmail ÐÏ×ÅÒÖÅÎ ;) Peter V. Saveliev
2001-12-07 13:17 ` [mdk-re] fetchmail повержен ;) Vyt
2001-12-07 16:07   ` Peter V. Saveliev [this message]
2001-12-07 16:22     ` [mdk-re] Re: fetchmail повержен ;) - вдогонку Peter V. Saveliev

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=3C10BFA4.46B15ECB@infosite.ru \
    --to=peet@infosite.ru \
    --cc=mandrake-russian@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