POSTFIX

Подробное руководство

Меню сайта
Опрос

Модные зубные протезы
Новая 3D игра
Софт для латания дыр
Почтовый сервер
Программа для рисования
Гель от растяжений


Популярные статьи
Демоны Postfix
master

Демон master – управляющая программа Postfix; он осуществляет контроль над всеми остальными демонами Postfix. Демон master ожидает поступления входящих заданий для передачи их подчиненным демонам. Если работы много, то master может вызвать несколько экземпляров демона. Вы можете задать количество одновременно работающих экземпляров демона, частоту их повторного использования и величину периода простоя, после которого произойдет остановка экземпляра.

Если вы работали с сервером inetd на компьютере с UNIX, то обнаружите много общего между ним и демоном master.

bounce и defer

Агент передачи сообщений должен уведомить отправителя о невозможности доставить сообщения. В Postfix эту задачу решают демоны bounce и defer, а инициируется она диспетчером очередей (qmgr).

Существует два вида событий, которые могут вызвать отправку уведомлений – неисправимые ошибки и адресат, которого невозможно достичь в течение долгого периода времени. В последнем случае отправляется предупреждение о задержке.

error
Демон error является агентом доставки сообщений, как local или smtp. Этот агент доставки сообщений всегда вызывает возврат сообщений. Обычно он используется, только если вы хотите настроить домен как недоступный для доставки, направляя почту агенту до
ставки error. Если сообщение отправляется демону error, то он информирует демон bounce о необходимости отметить, что адресату не
возможно доставить почту.

trivial rewrite
Демон trivial rewrite действует по запросу демона cleanup для преобразования нестандартных адресов в стандартную форму user@fqdn.
Этот демон также занимается разрешением имен адресатов по запросу от диспетчера очередей (qmgr). По умолчанию trivial rewrite различает только локальных и удаленных адресатов.

showq
Демон showq выводит содержимое очереди сообщений Postfix – именно эта программа работает, когда выполняется команда mailq(sendmail bp). Этот демон необходим, т. к. очередь Postfix доступна для чтения не всем; пользовательская программа без применения setuid не может вывести содержимое очереди (а программы Postfix не используют setuid).

flush
Демон flush пытается очистить очередь сообщений от зависших и отложенных сообщений. Используя список стоящей в очереди почты, разбитый по адресатам, он улучшает производительность SMTP запроса Extended Turn (ETRN) и его эквивалента в командной строке – sendmail qR destination. Список адресатов может содержаться в параметре fast_flush_domains в файле main.cf.

qmgr
Демон qmgr управляет очередями Postfix; это сердце почтовой системы Postfix. Он распределяет задачи доставки между демонами local, smtp, lmtp и pipe. После того как исполнитель задачи выбран, демон qmgr передает ему информацию об имени и пути файла из очереди, адрес отправителя сообщения, хост назначения (для сообщений удаленным пользователям) и один или несколько адресов получателей.

Алгоритм работы qmgr является хорошим примером того, как Postfix при обработке заданий избегает нехватки ресурсов и обеспечивает стабильность. Отметим две особенности:

• qmgr поддерживает маленькую очередь active, в которой ожидают отправки буквально несколько сообщений. Эта очередь фактически выполняет роль небольшого окна для потенциально бoльших очередей incoming и deferred, предотвращая нехватку памяти qmgr при большой загруженности.
• Если Postfix не может незамедлительно доставить сообщение, то qmgr помещает его в очередь deferred. Хранение временно недоставимых сообщений в отдельной очереди гарантирует, что нормальный доступ к очереди не будет тормозиться большим объемом почты, обработка которой не завершена.

qmgr использует демоны bounce и error для отказа в доставке сообщений тем получателям, сведения о которых содержатся в таблице relocated с данными о пользователях и доменах, более не существующих в системе.

proxymap

Клиентские процессы Postfix могут получать доступ (только на чтение) к картам посредством демона proxymap. За счет совместного использования одной открытой карты многими демонами Postfix proxymap обходит ограничения, налагаемые chroot, и уменьшает количество открытых поисковых таблиц.

spawn
Процесс spawn по запросу создает не Postfix процессы. Он занимается прослушиванием порта TCP, сокета домена UNIX1 или FIFO очереди стандартного потока ввода, вывода и ошибок. В этой книге будет описан только один пример использования spawn: для внешней системы фильтрации сообщений по содержанию тела сообщения.

local
Как понятно из названия, демон local отвечает за доставку в локальные почтовые ящики. Postfix демон local может записывать данные в почтовые ящики форматов mbox и Maildir.2 Кроме того, local может обращаться за данными в формате Sendmail к базам данных alias и пользовательским файлам .forward.

Примечание
Эти возможности делают local аналогом агента отправки сообщений Sendmail, их пользовательские интерфейсы также совпадают.


В качестве альтернативы демон local может передать доставку в почтовые ящики локальному агенту доставки (local delivery agent – LDA), который имеет более широкие возможности, например поддерживает фильтрацию. Общераспространенными являются такие LDA, как procmail и maildrop. Postfix может запускать несколько экземпляров local.

virtual
Демон virtual, который иногда называют виртуальным агентом доставки, – это упрощенный вариант local, осуществляющий доставку только в почтовые ящики. Это самый надежный агент доставки Postfix; он не выполняет подстановок по файлам alias и .forward.
Этот агент доставки может доставлять почту для нескольких доменов, что делает его особенно удобным для поддержки ряда небольших доменов на одной машине (это так называемый POP тостер) без настройки отдельной почтовой системы для каждого домена или интерактивного доступа пользователей к системе.

smtp
Демон smtp – это клиентская программа Postfix, которая передает исходящие сообщения удаленным адресатам. SMTP клиент ищет
почтовые серверы назначения, сортирует список по предпочтениям и проверяет каждый адрес до тех пор, пока не найдет сервер, который ответит. При большой нагрузке в системе Postfix обычно работает несколько демонов smtp одновременно.

lmtp
Демон lmtp взаимодействует с локальным и удаленным серверами почтовых ящиков по протоколу LMTP2 (Local Mail Delivery Protocol), который определен в RFC 2033. Часто используется совместно с сервером Cyrus IMAP
Преимущество использования клиента lmtp заключается в том, что управлением очередями занимается Postfix и одна Postfix машина может по протоколу LMTP обслуживать много серверов почтовых ящиков (на которых должны работать демоны LMTP). Обратное также верно: несколько Postfix машин могут обслуживать один сервер почтовых ящиков по LMTP. На таких серверах почтовых ящиков может, например, работать Cyrus IMAP.

pipe
Демон pipe обеспечивает клиентский интерфейс для исходящих соединений к другим почтовым транспортным механизмам. Он вызывает программы с параметрами и отправляет тело сообщения по каналу (pipe) на их стандартный ввод.

pickup

Демон pickup забирает сообщения, помещенные в очередь maildrop локальной клиентской программой отправки почты. После выполнения ряда проверок pickup передает сообщения демону cleanup.

smtpd
Демон smtpd обеспечивает взаимодействие с сетевыми почтовыми клиентами, отправляющими сообщения через Postfix по SMTP. Демон smtpd проводит ряд проверок для защиты остальной части системы Postfix. Его можно настроить так, чтобы он занимался проверкой входящей почты на спам (локальные или сетевые черные списки, поиск в DNS, другие клиентские запросы и т. д.). smtpd передает сообщение демону cleanup.

cleanup
Демон cleanup реализует последний этап обработки новых сообщений. Он добавляет недостающие заголовки, корректирует преобразование адреса и (если надо) извлекает адреса получателей из заголовков сообщений. Демон cleanup помещает результат в очередь incoming, затем уведомляет диспетчер очередей о прибытии нового сообщения.

sendmail
sendmail – это команда Postfix, которая подменяет собой MTA Sendmail Эрика Оллмана (Eric Allman). Ее задача заключается в предоставлении совместимого с Sendmail интерфейса для приложений, способных только вызывать /usr/sbin/sendmail. Она взаимодействует с программой postdrop для помещения сообщений в очередь maildrop, откуда их заберет pickup.

Примечание
Использование команды sendmail – это самый медленный способ помещения сообщений в систему очередей Postfix. Если вам нужно одновременно отправить большое количество сообщений, воспользуйтесь SMTP.


qmqpd
QMQP сервер Postfix реализует протокол QMQP (Quick Mail Queuing Protocol – быстрый протокол постановки почтовых сообщений в очередь с целью обеспечения совместимости Postfix с qmail и диспетчером списков ezmlm.

anvil
Демон anvil – это предварительная защита от атак типа «отказ в обслуживании», при которых клиенты засыпают SMTP сервер огромным количеством одновременных или последовательных попыток соединения. В нем предусмотрена возможность отмены ограничений для авторизованных клиентов. Демон anvil не включен в версию Postfix 2.1, но доступен в экспериментальной версии Postfix 2.2. anvil будет оставаться экспериментальным до тех пор, пока не будет накоплен достаточный опыт ограничения частоты запросов.



Другие новости по теме:

  • Очереди Postfix
  • Повторное помещение сообщения в очередь
  • Анатомия Postfix
  • Базы данных (MySQL, PostgreSQL, LDAP)
  • Утилиты командной строки
  • Категория: Анатомия Postfix | Добавил: admin (26 июля 2009)
    Просмотров: 4486 | Рейтинг:
    Метки
    Очень интересное
    Интересное
    » Друзья сайта