Поддержка основанных на
DNS белых списков (ранее поддерживались только черные списки - DNSBL) и возможность выборочной блокировки через фильтрацию по маске ответов от DNSBL и DNSWL серверов. Управление белыми списками организовано через опцию permit_rhswl_client, а фильтрация организована через reject_rhsbl_client (например, можно указать "reject_rhsbl_client zen.spamhaus.org=127.0.0.[1..10]");
Возможность использования БД SQLite для хранения внутренних баз, таких как БД виртуальных пользователей, алиасы или списки доступа (в дополнение к таким типам хранилищ как btree, dbm и hash).
Поддержка опции "smtpd_reject_footer", позволяющей указать блок текста, который будет добавлен к отвергнутым сервером запросам (SMTP-ответ "reject").
Поддержка длинных, не повторяющихся, идентификаторов элементов очереди сообщений, используемых в качестве имён файлов для сохраняемых в очереди сообщений. Наиболее важным достоинством не повторяющихся идентификаторов является упрощение анализа лог-файлов. Например, вместо идентификатора вида "0FCEE9247A9" будет использоваться более изощрённый вариант "3Ps0FS1Zhtz1PFjb", включающий все буквы алфавита и разделяющий регистр символов. По умолчанию длинные идентификаторы отключены, для их активации следует использовать опцию "enable_long_queue_ids";
Поддержка системы кэширования в памяти Memcached для хранения кэшей систем
verify и
postscreen, получающих доступ к данным через сервер proxymap. При использовании Memcached возможно создание конфигураций, при которых несколько серверов совместно используют единый кэш при проверке валидности email-адресов или выборке из списков блокировки зомби-машин, рассылающих спам. Memcached также можно использовать для хранения баз для проверки по серым спискам. Настройка осуществляется через директиву
memcache_table;
Переработана команда
postconf: добавлен вывод предупреждений о неиспользуемых параметрах "name=value" в конфигурационных файлах main.cf и master.cf, что позволяет выявить опечатки в именах параметров; реализована поддержка динамических имён параметров, таких как имена, зависящие от элементов master.cf; в более дружественном для восприятия формате оформлен вывод настроек из main.cf и master.cf (postconf -nf, postconf -Mf); в "postconf -M" добавлена поддержка фильтрации вывода, например, "postconf -M inet";
Реализована поддержка установки предельного времени обработки операций записи и чтения для клиента и сервера, что позволяет защититься от DoS-атак, манипулирующих большим числом вялотекущих соединений, при которых данные передаются очень медленно или читаются по одному байту. Если раньше таймаут задавался для системного вызова, то теперь его можно задать в привязке ко времени чтения/передачи отдельной записи, такой как сообщение с ответом SMTP-сервера. Настройка новых таймаутов осуществляется через директивы smtpd_per_record_deadline, smtp_per_record_deadline и lmtp_per_record_deadline;
В дополнение к ранее присутствующим настройкам smtpd_{client, helo, sender,recipient}_restrictions добавлена директива smtpd_relay_restrictions, которая позволяет снизить вероятность появления открытого релея из-за ошибок при определении правил блокирования спама. По умолчанию задействованы настройки для полного сохранения обратной совместимости (smtpd_relay_restrictions = permit_mynetworks, reject_unauth_destination; для новых установок smtpd_relay_restrictions = permit_mynetworks, permit_sasl_authenticated, defer_unauth_destination);
Добавлена поддержка проверочных таблиц (lookup table) "
socketmap" в стиле Sendmail.
В директиве recipient_delimiter теперь возможно указание нескольких символов-разделителей, например, можно одновременно использовать как разделители "+" и "-".
Добавлена опция postscreen_dnsbl_whitelist_threshold, позволяющая клиентам пропустить тесты postscreen (выполняет роль легковесного межсетевого экрана, предназначенного для первичного блокирования соединений от рассылающих спам зомби-машин) в зависимости от результатов проверки по белому списку через DNSBL. Применение postscreen_dnsbl_whitelist_threshold позволяет избавиться от заметных задержек в доставке почты от заведомо валидных почтовых систем, в которых повторные запросы не отправляются с одного и того же IP (задержка возникает из-за теста с использованием повторного реконнекта), например, так поступает Google.