Эта глава представляет теоретические сведения об ограничениях. Ограничения позволяют вашему почтовому серверу принять или отвергнуть сообщения на основе данных SMTP соединения между клиентом и сервером. Информация, полученная из этого диалога, позволяет Postfix наложить или отменить ограничения на клиент, отправителя и получателя.Слово «ограничить» (restrict) обычно означает, что вы устанавливаете какие то пределы, но в Postfix термин «ограничение» (ограничение) может также означать и обратное – при помощи ограничений вы можете явно разрешить нечто.
Триггеры ограничений Ограничения – это мощный инструмент. Чтобы эффективно им пользоваться, необходимо понимать, каким образом происходит SMTP взаимодействие и какими средствами Postfix это взаимодействие анализирует. Теперь нас будут интересовать этапы SMTP диалога, обозначенные командами, выдаваемыми клиентом.
В Postfix существуют несколько видов ограничений, которые можно разбить на четыре группы: • Общие ограничения • Переключаемые ограничения • Настраиваемые ограничения • Дополнительные параметры контроля спама
Общие ограничения Ограничения первой группы ничего в SMTP диалоге не проверяют, они просто выполняют команды:
Ограничения второго типа работают как переключатели. Их можно включить или выключить и при активации они проверяют выполнение некоторого условия. Приведем их неполный список:
smtpd_helo_required Это ограничение требует от клиентов отправки команды HELO (или EHLO) в начале сеанса SMTP. Наличия команды HELO/EHLO требуют RFC 821 и RFC 2821.
strict_rfc821_envelopes Это ограничение регулирует степень терпимости Postfix к ошибкам в адресах, указанных в команде MAIL FROM или RCPT TO. К сожалению, широко используемая программа Sendmail1 допускает нестандартное поведение, и в результате существует множество программ, которые ожидают, что им это сойдет с рук. Применение строгих мер может остановить нежелательную почту, но может также и заблокировать легальные сообщения от плохо написанных клиентов.
Настраиваемые ограничения – это карты, которые работают как фильтры. В каждой записи карты ключ является фильтром, а значение – тем действием, которое необходимо выполнить при совпадении (список возможных действий приведен в разделе «Общие ограничения»). Рассмотрим несколько видов настраиваемых ограничений: HELO (EHLO) имя хоста Эти ограничения относятся к именам хостов, которые клиенты могут отправлять с командой HELO или EHLO.
Имя хоста/адрес клиента Этими ограничениями определяются клиенты, которые могут устанавливать SMTP соединения с почтовым сервером.
Адрес отправителя Эти ограничения определяют адреса отправителей (конвертов), которые Postfix разрешает для использования в командах MAIL FROM.
Адрес получателя Эти ограничения определяют адреса получателей (конвертов), которые Postfix разрешает для использования в командах RCPT TO.
ETRN команды Ограничение накладывается на клиенты, которые могут выдавать команды ETRN. Проверка заголовка Ограничение регулирует заголовки сообщений. Шаблоны применяются ко всему логическому заголовку целиком, даже в том случае, когда логический заголовок занимает несколько физических строк текста.
Проверка тела Ограничения накладываются на текст, который может появляться в строках тела сообщения.
Черные списки DNSBL Эти черные списки ограничивают соединения от IP адресов (клиентов), которые включены в черные списки DNSBL.
Черные списки RHSBL Эти черные списки запрещают те домены отправителей (конверта), которые присутствуют в черных списках RHSBL.
Дополнительные параметры контроля спама поддерживают другие ограничения или возможности, не входящие в функциональность Postfix по умолчанию. Приведем лишь несколько таких ограничений:
default_rbl_reply Создает шаблон ответа по умолчанию, который будет использоваться при блокировании запроса SMTP клиента ограничением reject_rbl_client или reject_rhsbl_sender.
permit_mx_backup_networks Ограничивает использование функции контроля за пересылкой permit_mx_backup теми адресатами, у которых основные хосты MX входят в указанный список сетей.