Postfix включает в себя три набора функций, управляющих поступлением сообщений в почтовую систему и отправкой их из системы.
При помощи этих функций вы можете самостоятельно управлять потоком сообщений на основе SMTP диалога и содержимого сообщения или доверить управление содержимым внешним приложениям. Этим функциям соответствуют три отдельных группы параметров конфигурации: ограничения, проверки и фильтры.
Пособие для начинающих администраторов почтовой системы Для того чтобы контролировать содержимое, необходимы знания об этом содержимом. Для того чтобы эффективно применять ограничения, проверки и фильтры, вы должны знать, что должно, могло бы и может входить в сообщение. Прочтите главу 6, чтобы проникнуть вглубь содержимого электронного письма.
Как работают ограничения на передачу сообщений SMTP взаимодействие регулируется ограничениями. LДалее будет объяснено, как работают ограничения. Не жалейте времени на ее изучение, это значительно упростит для вас дальнейшую реализацию ограничений.
Использование ограничений на передачу сообщений Мы покажем, как использовать ограничения на практике. Все они могут быть применены практически сразу же. Как работают встроенные фильтры содержимого К содержимому сообщений можно применять проверки. Как они работают? Следующая глава знакомит вас с проверками и представляет всю их теорию.
Использование встроенных фильтров содержимого Далее приведены разнообразные примеры, которые помогут вам быстро приступить к работе.
Как работают внешние фильтры содержимого Внешние фильтры содержимого передают управление SMTP взаимодействием и управление содержимым внешним приложениям. Для того чтобы понять, каким образом Postfix обрабатывает сообщения, проходящие через внешние фильтры содержимого.
Использование внешних фильтров содержимого Хотите увидеть несколько примеров реализации внешних фильтров содержимого? На сайте вы найдете примеры, которые помогут вам в вашей практике.
Термины «конверт» (envelope), «заголовок» (header), «тело» (body) и «вложение» (attachment) относятся к различным частям данных, которыми обмениваются агенты передачи сообщений (MTA). Если вы знаете, что они означают, то вам будет понятно, на какие части сообщений действуют параметры управления содержимым Postfix. Так же удобно, что имена и синтаксис параметров берут начало в документах RFC.
Эта глава представляет собой «букварь» по управлению содержимым сообщений. Прочтите ее внимательно и уделите достаточно времени знакомству с концепциями. После освоения основ вы без проблем добьетесь эффективного управления содержимым.
В SMTP соединении участвуют клиент (компьютер, который обращается к SMTP серверу) и передаваемый клиентом конверт. Давайте рассмотрим ситуацию на примере, используя для подключения к серверу программу telnet на вашем компьютере. Начнем с подключения в командной строке к порту 25 вашего почтового сервера:
$ telnet mail.example.com 25 220 mail.example.com
Возвращаемый сервером код 220 подтверждает имя хоста сервера. Теперь наша очередь представиться серверу:
HELO client.example.com 250 mail.example.com
«Рукопожатие» можно осуществить при помощи команды HELO (для SMTP) или EHLO (для ESMTP), указав имя хоста клиента в качестве параметра. В случае успешного выполнения команды вы получите код возврата 250, за которым будет следовать имя хоста сервера.
Давайте теперь отправим почту. Команда MAIL создает конверт, начиная с указания отправителя. Если сервер признал отправителя, вы снова получите код возврата 250:
MAIL FROM: 250 Ok
Следующий этап создания конверта – указание получателя конверта с помощью команды RCPT. Вы можете указать одного или нескольких получателей:
Сообщение электронной почты состоит из заголовка и тела. Тело так же может включать в себя одно или несколько вложений в виде файла или другого сообщения, инкапсулированного в главное сообщение.
Эти части сообщения можно найти, просматривая его в редакторе, работающем с обычным текстом. Вот, например, сообщение с файловым вложением:
Заголовок несет в себе метаданные о теле сообщения, такие как кодировка символов и дата отправки.
Примечание Поля заголовка не обязаны появляться в определенном порядке. Однако рекомендуется отправлять заголовки в следующем порядке: Return Path, Received, Date, From, Subject, Sender, To, Cc и т. д. Подробную информацию о заголовках можно найти в документе «Reading Email Headers» (http://www.stopspam.org/email/headers.html).
Обязательные заголовки. Два элемента заголовка являются обязательными: Date Поле даты обычно содержит дату и время, в которое сообщение было составлено и отправлено. Если клиент отправителя пропустил этот заголовок, то Postfix добавит его.
From Это поле идентифицирует личность человека, отправившего сообщение. Если клиент отправителя пропустил этот заголовок, то Postfix добавит его.