20081015 - реализация использования лукапов при использовании виртуальных алиасов в текстовых файлах и в Berkeley DB - при проверке FQDN хоста отправителя в HELO введены дополнительные действия - задержка, применение опционального грейлистинга и опционального отказа в приеме письма, отказ в приеме письма с обрывом соединения - реализована возможность использования внешнего LDA для доставки почты виртуальным пользователям (при указании значения MDIR_VIRT и PIPE в confDELIVERY_TO) 20080919 - реализация использования лукапов в virtusertable (пока только для confVIRTUSERTABLE, равного SINGLE_FILE или SINGLE_DBM) 20080918 - исправление работы exim'а с файлом maildirsize при проверке квоты на этапе RCPT TO 20080709 - реализована поддержка spamd dlfunc в виде features/dlfunc_spamd.m4 переход со штатной интеграции exim и spamd на features/dlfunc_spamd.m4 позволить оценивать с помощью spamd поля заголовков, добавляемые в acl_smtp_mime и acl_smtp_data 20080706 - реализована проверка существования получателей из рилеемых доменов и являющихся spam friend'ами 20080705 - устранена зависимость от ошибки интерпретации gmake'ом версии 3.81 многострочных командострочных скриптов внутри Makefile 20080704 - реализовано опциональное игноирование временных ошибок при встречной проверке отправителя для писем, отправленных с сайтов php функцией mail. исключение распространяется на письма, для доменной части адреса отправителя которых не прописаны MX записи, A запись домена соответствует IP адресу отправителя, а мейлбокс из адреса отправителя равен www, apache или nobody 20080630 - реализованы действия quarantine, quarantine_other и reject_all при проверке комбинаций адресов отправителя и получателя (confCHECK_COMPAT_ACCESS) - реализовано действие quarantine при проверке адресов отправителей (confCHECK_MAIL_ACCESS), при проверке A записей доменов отправителей (confCHECK_MAIL_DOMAIN_A), при проверке MX записей доменов отправителей (confCHECK_MAIL_DOMAIN_MX), при проверке SPF записи (confSPF2) - переделана проверка ошибок MIME. теперь для каждого из трех возможных уровней ошибок указывается отдельный набор действий с опциональными исключениями для писем из списков рассылок 20080629 - реализовано действие discard при проверке адресов получателей (confCHECK_RCPT_ACCESS), при проверке адресов отправителей (confCHECK_MAIL_ACCESS), при проверке комбинаций адресов отправителя и получателя (confCHECK_COMPAT_ACCESS), при проверке A записей доменов отправителей (confCHECK_MAIL_DOMAIN_A), при проверке MX записей доменов отправителей (confCHECK_MAIL_DOMAIN_MX), при проверке SPF записи (confSPF2) - реализовано действие drop при проверке письма контент сканерами (confSPAMASSASSIN_ACTION, confDSPAM_ACTION, confKAS3_ACTION, confSO2_ACTION) 20080628 - расширен набор проверок корректности настроек конфигуратора при использовании добавления данных в RBL - исправлено использование переменной confSQLITE_DANGEROUS при пополнении списка подозрительных хостов в SQLite (только в enterprise версии) - добавлено использование переменной confMYSQL_DANGEROUS при пополнении списка подозрительных хостов в MySQL (только в enterprise версии) - использование расширенного списка неделегируемых сетей, полученного из http://www.cymru.com/Documents/secure-bind-template.html, сделано опциональным и по умолчанию отключенным (см. переменную confPRIVATE_NETWORKS_EXTENDED) - создана переменная confAWL_SENDER_DOMAINS, в которой можно указывать список доменов, на основании которых будет формироваться белый список для ответных писем. по умолчанию в переменной confAWL_SENDER_DOMAINS указано формировать белый список только на основании писем от локальных доменов. но в ряде случаев (например, для транзитных рилеев, которые одновременно являются смартхостами) можно указывать необходимость формирования белых списков и на основании писем от рилеемых доменов 20080622 выпущен паровоз 4.68. изменения в 4.68: - прекращена поддержка работы с DSPAM через patch-src::dspam-4.67.patch, работа с DSPAM реализована через dlfunc. немного поменялись параметры настройки: * ident из значения параметра confDSPAM_ADDRESS выделен в отдельную переменную confDSPAM_IDENT * параметр confDSPAM_ACTION_SCORE упразднен * действие из confDSPAM_ACTION применяются если значение заголовка X-Daemon-Classification равно SPAM - прекращена поддержка патчей patch-src::kas3_local_scan.patch, patch-src::so_local_scan.patch и patch-src::kas-3-3.0.242_local_scan.patch - реализована возможность учета в последующих контент сканерах результатов работы предыдущих контент сканеров благодаря переделке dlfunc с учетом патча patch-src::remove_header.patch т. к. Kaspersky Anti-Spam не имеет встроенного статистического фильтра, теперь можно использовать оценки DSPAM для того, чтобы корректировать баллы, начисленные письму Kaspersky Anti-Spam'ом - в dlfunc spamoborona2 реализована опциональная поддержка zlib, что позволяет использовать данный механизм интеграции exim и spamoborona для использования SO1024 - прекращена поддержка работы spamoborona dlfunc, вместо нее необходимо использовать spamoborona2 dlsunc, которая может работать как с версиями Yandex Spamooborona 2.x, так и Yandex Spamooborona 1.x - реализована работа с Kaspersky Anti-Virus 5.6.x с использованием механизма dlfunc - для confSMTP_AUTH_RESTRICT введено новое значение ENFORCE_ON_SUBMIT, включающее требование использования SMTP аутентификации при использовании порта 587. значение ENFORCE_ON_SUBMIT включено по умолчанию - введена переменная confTLS_ENFORCE_SUBMIT, в которой описывается, требовать ли от нелокальных или всех отправителей использования STARTTLS при работе через порт 587 - в применением control = submission/sender_retain при выполнении accept для писем из рилеемых сетей и от аутентифицированных отправителей. поля Date и Message-ID добавляются при необходимости автоматически, таким образом значения переменных confDATE_HEADER_ADD и confMESSAGE_ID_HEADER_ADD сведены к YES и NO - упразднены features/exchange.m4 и features/domino.m4. теперь работа с MS Exchange и Lotus Domino будет проводится как с любым другим MTA, обслуживающим рилеемый домен, а проверка получателя будет производится не с использованием протокола LDAP, а с использованием verify = recipient/callout соответственно переменные confEXCHANGE_ROUTERS, confEXCHANGE_AD_HOSTS, confEXCHANGE_LDAP_USER, confEXCHANGE_LDAP_PASSWORD, confEXCHANGE_LDAP_BASE, confDOMINO_ROUTERS, confDOMINO_HOSTS, confDOMINO_LDAP_BASE упразднены - реализованы автоматически пополняемые персональные белые списки на основании пар отправитель/получатель исходящей почты. данные автовайтлиста могут храниться в dbm, mysql, sqlite в зависимости от значения переменной confAWL - упразднена проверка 8-битных символов в envelope from и envelope to отдельными фильтрами (acls/check_mail_8bit.m4 и acls/check_rcpt_8bit.m4) и упразднены соответствующие переменные (confCHECK_MAIL_8BIT и confCHECK_RCPT_8BIT). вместо устаревших фильтров можно использовать соответствующие регулярные выражения: access-mail: \N^.*[\x80-\xff].*$\N : deny : 8-bit characters not allowed in envelope sender access-rcpt: \N^.*[\x80-\xff].*$\N : deny : 8-bit characters not allowed in envelope recipient - реализованы SQLite и MySQL backend'ы для подсистемы серых списков в дополнении к Berkeley DB backend, все переменные confGREYLIST_DBM* переименованы в confGREYLIST*, за исключением confGREYLIST_DBM_CACHE и confGREYLIST_DBM_RELAYS - необходимость использования динамических серых списков рилеев теперь нужно указывать явным образом в переменной confGREYLIST_RELAYS - файл access-relay-dialup переименован в access-relay-dynamic - значение по умолчанию для времени блокировки записи в "сером списке" изменено с 55 мин на 25 мин - в значение переменой по умолчанию для исключения из "серых списков" включено исключение для SMTP клиентов, использующих TLS - в dlfunc ip2country отключено определение страны по TLD PTR записи - определение страны по IP адресу вынесено в отельную feature - features/ip2country.m4 включается использование данной feature переменной confIP2COUNTRY механизмы определения страны по IP адресу можно указать в переменной confIP2COUNTRY_BACKEND по умолчанию используется определение страны по IP адресу с помощью DNSBL zz.countries.nerd.dk и с помощью TLD из PTR записи, дополнительно можно указать необходимость определения страны по IP адресу с помощью dlfunc ip2country. для использования dlfunc ip2country необходимо установить библиотеку GeoIP и собрать exim с поддержкой EXPAND_DLFUNC - при использовании фильтрации писем по стране отправителя (confCHECK_RELAY_COUNTRY_ACCESS) и при указании в заголовках письма информации о странах, через которые прошло письмо (confRELAY_COUNTRIES) теперь используется единый механизм определения страны по IP адресу - упразднен механизм применения серых списков в зависимости от страны отправителя confGREYLIST_COUNTRIES и весь соответствующий механизм получения списка сетей по странам, т. к. теперь применять серые списки с зависимости от страны отправителя можно с помощью confCHECK_RELAY_COUNTRY_ACCESS - исправлена работа виртуальных фильтров при хранении учетных данных почтовых пользователей в LDAP каталоге (в т. ч. Active Directory) - реализовано хранение виртуальных алиасов в LDAP. в случае интеграции exim с Active Directory группы из определенного OU могут интерпретироваться как групповые алиасы, а атрибуты mail объектов organizationalPerson могут интерпретироваться как адреса пересылки - реализован смешанный тип LDAP аутентификации, когда при confSMTP_AUTH_SOURCE, равном `LDAP', в качестве логина и пароля LDAP сервера указываются SMTP логин и SMTP пароль (как при confSMTP_AUTH_SOURCE, равном `LDAPAUTH', но при этом еще выполняет запрос к LDAP серверу. при этом confSMTP_AUTH_LDAP_PASSWD_ATTR должен быть пустым. такая схема может использоваться в случае, когда LDAP сервер не возвращает значение атрибута пароля пользователя, а лишь дает возможность проверить его, при этом еще не всякий пользователь, прошедший аутентификацию на LDAP сервере, является валидным SMTP пользователем. 20080419 - оптимизированы антивирусные проверки - оптимизирована работа с Kaspersky Anti-Virus 5.5.x с использованием механизма dlfunc aveserver 20080208 - реализованы индивидуальные ограничения размера письма по адресам получателей 20080207 - реализована возможность проверять при помощи протокола radius данные SMTP аутентификации при использовании методов PLAIN и LOGIN 20070816 выпущен паровоз 4.67. изменения в 4.67: - прекращена поддержка контент анализа средствами MTA (confCHECK_8BIT_HEADERS, confCHECK_BODY_REGEXP, confCHECK_CHARSET_DEFAULT, confCHECK_MAILER, confCHECK_ORG, confCHECK_SUBJECT, confCHECK_TRANSFER_ENCODING, confCHECK_TRANSFER_ENCODING_MULTIPART). все эти проверки должны быть перенесены в используемые системы контентного анализа - переименование полей заголовков при использовании контент сканеров реализовано с помощью патча patch-src::remove_header.patch, ныне обязательного при сборке exim (параметр --with experimental_remove_header для сборки RPM и параметр WITH_EXPERIMENTAL_REMOVE_HEADER для сборки порта) - исключен несовместимый с patch-src::remove_header.patch патч patch-src::add_header.patch (параметр --with experimental_add_header для сборки RPM и параметр WITH_EXPERIMENTAL_ADD_HEADER для сборки порта) - реализовано хранение данных для проверки комбинаций адресов отправителя и получателя (confCHECK_COMPAT) в Berkeley DB и SQLite в подолнении к TEXT и MySQL. при этом одновременно может использовать несколько мест хранения данных - реализована работа с автоматически формируемыми персональными белыми списками для ответов на письма пользователей локальных доменов. данные белых списков могут храниться в MySQL и/или Berkeley DB. в самом ближайшем будущем будет реализовано хранение данных белых списков в SQLite - dlfunc для контент сканеров (SpamAssassin, DSPAM, Kasperskry Anti-Spam, Yandex Spamoborona) переписаны без поддержки exiscan - добавлена dlfunc для работы с Yandex Spamoborona 2.x, добавлена поддержка данного контент сканера в confCONTENT_SCANNING - произведены изменения в наборах обязательно используемых пачтей для сборки портов FreeBSD и пакетов RedHat/Fedora 20070710 - реализовано хранение персональных черных и белых списков в БД MySQL 20070617 - реализована поддержка ratelimit'ов по адресу хоста отправителя 20070611 - реализованы индивидуальные ограничения размера письма по адресам отправителей, адресам рилеев отправителей, SMTP логинам 20070526 - реализована поддержка персональных карантинов 20070524 - создан spec файл для сборки Exim 4.67 на Fedora/RedHat 20070429 - реализована доставка по lmtp по маршруту, указанному в mailertable 20070423 - многочисленные изменения для обеспечения работоспособности конфигуратора под управлением Solaris и OpenBSD 20070331 - реализована работа с квотами для виртуальных maildir'ов на этапе RCPT при хранении списка пользователей в MySQL и passwd-like файлах 20070329 - реализована работа с KAS3 наравне с SpamAssassin и DSPAM 20070328 - произведены модификации конфигуратора, связанные с работой под управлением SunOS 20070310 - значение по умолчанию для confFAKE_REJECT изменено на YES 2007.... выпущен паровоз 4.64. изменения в 4.64: - оптимизирована проверка соответствия адреса хоста отправителя SPF записи домена отправителя - добавлена поддержка spfd из состава Mail::SPF::Query - упразднен параметр confDISABLE_AUTH_WITHOUT_TLS. все ограничения, связанные с аутентификацией, перенесены в confSMTP_AUTH_RESTRICT - реализовано исключение из greylisting'а для шифрованных сообщений - реализована проверка праметра SIZE команды MAIL FROM при использовании SMTP клиентом протокола ESMTP - реализована работа с квотами для виртуальных maildir'ов на этапе доставки 20061220 - расширен набор действий при проверке адресов хостов отправителя на принадлежность к relay_from_hosts, если в MAIL FROM и RCPT TO указаны одинаковые адреса из локальных доменов - реализовано исключение из проверке адресов хостов отправителя на принадлежность к relay_from_hosts, если в MAIL FROM и RCPT TO указаны одинаковые адреса из локальных доменов, для хостов, успешно прошедших поверку SPF записи 20061218 - реализованы исключения из антивирусных проверок 20061215 - реализована проверка соответствия envelope from и SMTP логинов для аутентифицированных отправителей 20061128 в противовес понятию spamfriend'ов введено понятие spamhater'ов 20061111 выпущен паровоз 4.63. изменения в 4.63: - первая схема работы с SPF больше не поддерживается - переименованы переменные: confSPAMASSASSIN_SKIP в confCONTENT_SCANNING_SKIP confSPAMASSASSIN_MAX_MSG_SIZE в confCONTENT_SCANNING_MAX_MSG_SIZE - переменная confMAIL_BACKUP_SYSTEM_FILTER упразднена, вместо нее используется значение confCONFDIR`/site/system_filter_backup' - переменные confSPAMASSASSIN и confDSPAM объединены в confCONTENT_SCANNING - в поле X-Spam-Action кроме собственно действия указывается дополнительная информация. таким образом, если в фильтрах использовались выражения вида if $h_X-Spam-Action: is "quarantined" then необходимо заменить на if $h_X-Spam-Action: contains "quarantined" then - для добавления полей заголовков использутся add_header вместо message в warn - упразднена отдельная проверка почтовых ящиков отправителей и получателей, содержащих только цифры. она может быть заменена на проверку по регуляным выражениям. пример помещен в samples/access-mail. при этом skip_numeric_mailbox_check нужно удалить самостоятельно после реализации исключений в виде регулярных выражений в access файлах - упразднена проверка наличия символа подчеркивания в HELO/EHLO. для проведения проверки наличия символа подчеркивания в HELO/EHLO необходимо внести этот символа в список разрешенных с последующей проверкой HELO с помощью регулярных выражений. - системный фильтр разбит на большее количество составляющих, они переименованы часть перенесена из каталога system_filters в каталог site - дефолтовые значения переменных confCONFDIR, confPERIODIC, confEXIM_USER и confEXIM_GROUP устанавливаются в зависимости от вывода uname пока обрабатываются значения "FreeBSD", "OpenBSD", "NetBSD" и "Linux" - упразднена переменная confGREYLIST_EXCLUDE_POSTMASTER вместо значения YES этой переменной используется значение FROM_POSTMASTER переменной confGREYLIST_SKIP - в переменной confGREYLIST_SKIP теперь можно указывать опциональные исключения из greylisting'а, которые раньше были безусловными - реализовано исключение из greylisting'а для писем, успешно прошедших проверку соответствия хоста отправителя SPF записи домена отправителя - упразднена переменная confCHECK_HELO_UNDERSCORE и фильтр acls/check_helo_underscore.m4 вместо них можно использовать регулярные варажения в access-helo - введен список private_networks, содержащий список приватных сетей 20060917 - реализована опциональная проверка существования адресов получателей в исходящих письмах на этапе получения письма от отправителя 20060915 - реализовано ограничение на максимальный размер проверямого антивирусом письма 20060914 - реализована пересылка писем по mailertable на другой порт localhost'а 20060913 - реализован список исключений для хостов, письма которым пересылаются с использованием STARTTLS 20060907 - реализован роутинг почты по полному адресу получателя при использовании mailertable в виде текстовых или db файлов 20060902 - реализовано внесение хоста отправителя в базы MySQL и SQlite на основании проверки DSPAM - реализован грейлистинг хостов отправителя на основании проверки DSPAM 20060829 - реализована поддержка демонизированного варианта DSPAM 20060825 - реализовано выполнение запросов к spamd от имени разных пользователей, выбранных на основании адресов получателей 20060819 - реализована доствка в dbmail через pipe и lmtp 20060813 - в enterprise части паровоза добавлена возможность в течении указанного периода времени грейлистить хосты на основании оценок SpamAssassin 20060813 - реализованы новые действия при использовании антивирусов: QUARANTINE_MAILLIST и DISCARD_MAILLIST, которые могут использоваться одновременно с REJECT и при использовании которых инфицированные сообщения из списков рассылки не отвергаются, а сохраняются в карантине или игноируются - реализованы новые действия при проверке писем с помощью SpamAssassin: QUARANTINE_MAILLIST и DISCARD_MAILLIST, которые могут использоваться одновременно с REJECT и при использовании которых инфицированные сообщения из списков рассылки не отвергаются, а сохраняются в карантине или игноируются 20060811 - реализован NTLM (SPA) аутентификатор с проверкой паролей в AD 20060809 - реализована проверка SMTP логина и пароля с использованием альтернативного SMTP сервера с поддержкой STARTTLS 20060808 - реализованы действия reject_all и quarantine при проверке адресов получателей 20060807 - реализована проверка SMTP логина и пароля с использованием альтернативного SMTP сервера 20060802 - реализовано исключение из проверки записи в реверсной зоне хостов/сетей, указанных в access-relay со значением ok 20060727 - реализованы исключения из запрета SMTP аутентификации без шифрования 20060714 - реализована проверка MX записей домена отправителя - реализована проверка A записей домена отправителя в списке сетей, а не только в списке хостов - реализована проверка A записей домена отправителя из нескольких IP адресов - расширен набор действий при проверке A записи домена отправителя - реализована альтернативная схема проверки SPF записи домена отправителя, расширен набор действий при проверке SPF записи 20060710 - реализовано хранение SMTP логинов и паролей на LDAP сервере в plain text для NTLM (SPA) и CRAM-MD5 аутентификации и в шифрованном виде и в plain text для PLAIN и LOGIN аутентификации 20060612 - реализована работа с DSN при локальной доставке 20060522 - реализовано исключение для встречной проверки адреса отправителя, если проверка SPF записи закончилась успешно 20060325 - реализована маршрутизация почты по smtp на нестандартные порты 20060320 - добавлена проверка существования домена получателя при приеме писем от локальных и аутентифицированных отправителей 20060301 - расширен набор действий при проверке соответствия значений полей Content-Type и Content-Transfer-Encoding в multipart messages 20060228 - расширен набор действий при проверке соответствия значений полей Content-Type и Content-Transfer-Encoding в text messages 20060225 - реализован greylisting хостов, с которых приходят письма без поля Message-ID - проверка получателей в рилеемых доменах выполняется от имени отправителя оригинального письма, а не от пустого отправителя 20060223 - автоматизирован переход от паровоза 4.60 к паровозу 4.61 20060217 - расширен набор действий при проверке наличия записи хоста рилея отправителя в реверсной зоне DNS и соответствия записей в прямой и реверсной зонах 20060216 - реализован опциональный reject при попадании хоста рилея отправителя в один или несколько DNSBL'ей - реализованы новые действия при попадании хоста рилея отправителя в DNSBL (defer, drop, задержка) - реализованы комбинации действий при попадании домена отправителя в DNSBL - реализована пауза как новое действие при попадании домена отправителя в RFC Ignorant List'ы - реализованы комбинации действий при попадании домена отправителя в RFC Ignorant List'ы 20060214 - расширен набор критериев опционального greylisting'а: проверка хоста рилея отправителя в DNSBL'ях 20060205 - расширен набор критериев опционального greylisting'а: HELO принадлежит к dial-up/dsl/cable сетям - реализован глобальный white list по envelope sender 20060204 - раcширен набор регулярных выражений, по которым проверяется корректность HELO/EHLO 20060124 - реализована вставка поля X-Spam-Status при проверке письма демоном spamd 20060102 - переделана система per-domain настроек для списков пользователей, алиасов и таблиц виртуальных пользователей - изменена схема указания исключений из проверки SPF записей 20060101 - создана новая ветка паровоза exim-4.60-conf 20051228 - реализовано действие FAKEREJECT при проверке двойных расширений имен прикрепленных файлов - реализовано исключение из проверки двойных расширений прикрепленных файлов имен, перечисленных в файле исключений 20051218 - реализовано получение PTR записи рилея отправителя при несоответствии записей в прямой и реверсной зонах с возможностью дальнейшего использования - реализован список хостов и сетей, для которых применяется опциональный greylisting даже если по другим критериям не набрана необходимая сумма баллов - реализовано формирование списка хостов и сетей, для которых применяется опциональный greylisting, на основании списка стран 20051216 - реализована задержка перед ответом на RCPT TO для хостов, не имеющих записи в реверсной зоне DNS, и для хостов, у которых не совпадают записи в прямой и реверсной зонах - реализован запрет анонса AUTH для указанного списка хостов/сетей - реализован опциональный запрет анонса AUTH без использования STARTTLS для нелокальных хостов 20051209 - реализован запрет анонса STARTTLS для указанного списка хостов/сетей 20051206 - реализована поддержка суффиксов в мейлбоксах (плюсованных адресов) 20051205 - реализована поддержка сериализации для указанного списка сетей/хостов 20051202 - реализовано опциональное использование в качестве SMTP логинов только mailbox'ов пользователей при использовании passwd-like файлов для хранения паролей - изменен пользователь по умолчанию для работы со spamd с nospam на spamd 20051127 - реализована отдельная работа с plain text'овыи и шифрованными паролями, хранящимися в MySQL и passwd-like файлах 20051121 - реализована проверка disabled пользователей MS Exchange 20051120 - реализована возможность обработки виртуальных алиасов, полученных в результате выполнения SQL запроса, содержащего несколько строк 20051113 - реализована проверка SMTP логина и пароля с использованием IMAP сервера - реализована обработка виртуальных алиасов, хранящихся в отдельных файлах для каждого домена, и ссылающихся на адреса в том же домене без указания самого домена 20051112 - реализован опциональный greylisting по дням недели и времени суток 20051109 - переработан механизм фильтрации blacklisted рилеев - расширен набор критериев опционального greylisting'а: A запись рилея отправителя сеть рилея отправителя PTR записи рилея отправителя доменная зона рилея отправителя 20051031 - реализовано опциональное указание версии spamassassin'а в заголовках проверямого письма - реализовано опциональное указание версии антивирусов в заголовках проверямого письма 20051028 - реализовано опциональное удаление или переименование старых заголовков spamassassin'а 20051023 - реализован опциональный greylisting по критериям: отсутствие записи рилея в реверсной зоне DNS несовпадение записей в прямой и реверсной зонах DNS принадлежность к dial-up/dsl/cable сетям (A запись) принадлежность к dial-up/dsl/cable сетям (PTR запись или доменная зона) наличие домена отправителя в RFC Ignorant Lists ограничение на количество цифр в HELO, имени хоста отправителя и домене отправителя 20050918 - реализовано хранение вирусного карантина в unix maildir 20050522 - реализовано сохранение в отдельном разделе карантина спама, не добравшего до максимальной оценки bayes фильтра - реализована проверка комбинаций адресов отправителя и получателя 20050504 - в features/relay_based_on_MX.m4 реализована проверка получателей 20050425 - реализована проверка нескольких A записей best MX записи домена получателя в features/relay_based_on_MX.m4 20050424 - реализована проверка существования получателей в рилеемых доменах при приеме письма от рилеемых хостов или хостов из белого списка - реализован features/relay_based_on_MX.m4 как на основании best MX записи домена получателя, так и на основании любой более младшей MX записи 20050423 - реализован features/relay_based_on_MX.m4 без использования perl'овых хуков - реализован acls/check_helo_forged.m4 без использования perl'овых хуков 20050419 - встроенная проверка HELO сделана опциональной 20050413 - реализовано действие quarantine при проверке поля Content-Transfer-Encoding как в text/plain и text/html, так и в multipart messages 20050406 - реализовано использование procmail в качестве MDA при доставке в виртуальные maildir'ы 20050331 - реализована поддержка ETRN для хостов из relay_from_hosts и trusted_hosts 20050327 - реализовано сохранение в карантине писем, которым spamd выставил определенное количество баллов одновременно с сохранением в карантине можно или отвергать или удалять письма 20050314 - создан spec файл для сборки Exim 4.50 на Fedora/RedHat 20050313 - реализован перехват DEFER'а от spamd и указание в лог файле и полях заголовка причин исключения из проверки SpamAssassin'ом 20050312 - создана новая ветвь паровоза, оринтированная на exim 4.50 без поддержки совместимости с устаревшими параметрами - изменена работа с fakereject при проверке 8-битных символов в header Subject и header From, а также в антивирусной проверке (при REJECT и QUARANTINE одновременно), в соответствии с изменениями в синтаксисе fakereject сообщения в 4.50 по сравнению со старым патчем patch-src::reject_message - удалена поддержка устаревших способов использования антивирусов: features/drweb.m4 system_filters/drweb-quarantine features/clamav.m4 system_filters/clamav-quarantine features/antivirus.m4 system_filters/antivirus-quarantine - удалена поддержка greylist'а Roman'а Festchook'а (http://noc.polesye.net/greylist/): features/greylist.m4 perl/greylist.pl 20050305 - портированы патчи для exim 4.50: patch-src::x-envelope-SA.patch patch-src::malware-aveserver.patch - реализован патч для корректной сборки порта exim 4.50 с поддержкой SPF (patch-OS::Makefile-FreeBSD-SPF.patch) 20050215 - подготовлен spec файл для сборки Exim 4.44 на Fedora/RedHat 20050105 - в 4.50 приняты патчи: patch-src::malware-clamd.patch patch-src::malware-drwebd-read-error.patch patch-src::malware-drwebd.patch 20041209 - исправлена обработка include файлов в списке системных алиасов при доставке почты в mailbox'ы и работе exim'а от имени пользователя, отличного от mailnull 20041120 - реализован patch patch-exim-4.43-LDAP_RES_SEARCH_REFERENCE.patch для обработка результата LDAP запросов LDAP_RES_SEARCH_REFERENCE таким же образом, как и LDAP_RES_SEARCH_RESULT. LDAP_RES_SEARCH_REFERENCE возвращается в ответ на запрос к Active Directory, когда используется несколько OU, а basedn не ограничивает зону поиска одним OU. не смотря на работоспособность и ожидаемое поведение патч пока имеет статус грязного хака... 20041118 - исключение из greylisting'а для почты от postmaster'ов сделано опциональным - в hacks/antivirus.m4 подправлена обработка результатов работы запасных антивирусов 20041117 - реализовано исключение из проверки SPF записей по IP адресам и номерам сетей рилеев 20041115 - исправлена ошибка в check_digits.m4, при которой под проверку количества цифр в EHLO/HELO попадали хосты, использующие в HELO IP адрес интерфейса в квадратных скобках - переделан механизм вставки полей заголовков при различных результатах антивирусных проверок - набор возможных значений необязательных параметров антивирусных демонов дополнен значением defer_freeze. при его указании при получении defer'а от антивирусного демона письмо будет заморожено для последующих разборок. 20041114 - реализован мезанизм удаления полей при доставке сообщений с использованием роутеров: exchange_router (confHEADERS_REMOVE_EXCHANGE_ROUTER) virtual_domains (confHEADERS_REMOVE_VIRTUAL_DOMAINS) localuser (confHEADERS_REMOVE_LOCALUSER) 20041112 - исправлена ошибка установки периодически запускаемого скрипта для очистки карантина 20041110 - реализована возможность хранить TLS ключ и сертификат не в каталоге с конфигурационными файлами exim'а - реализовано принудительное изменение прав на файлы TLS ключа и сертификата 20041109 - реализован патч для exiscan-acl-4.43-28-malware-aveserver для исправления обработки ошибок при сканировании писем с помощью aveserver, произведены соответствующие изменения в spec файлах спек для RedHat/Fedora поправлен 20041108 - реализован механизм сборки для RedHat/Fedora exim'а, набора конфигов и libspf2 с использованием разных вариантов spec файлов, наборов патчей и ранее описанных опций компиляции 20041106 - изменен spec для сборки exim'а в связи с переходом от использования libspf2, собранного из исходных текстов, на использование libspf2-1.0.4-8.src.rpm - в набор конфигов внесены spec файлы для сборки exim и самого набора конфигов 20041104 - реализовано опциональное скрытие в полях Received информации о хостах локальной сети и информации о MTA и операционной системе. - реализовано опциональное скрытие в SMTP баннере информации о MTA 20041103 - исправлено копирование шаблона антивирусного оповещения из samples при выполнении gmake install 20041031 - создан spec файл для сборки набора конфигов в виде src.rpm 20041029 - переработана логика системного фильтра по обработке повторных попыток доставки зараженных сообщений. теперь если за первую попытку доставки нотификация не доставлена (и сообщение не дискарднуто), то при повторной попытке доставки зараженного сообщения оно будет просто дискардится. 20041008 - дополнены условия, необходимые для создания карантина при выполнении gmake install обязательно нужно обновится тем, кто ранее не использовал карантин, а после переезда на 4.41 и выше (и следовательно после описания настроек антивирусов с помощью конструкции ANTIVIRUS) настроил использование карантина. 20040929 - в дерево конфигурационных файлов включены patch'и 20040928 - создан скрипт для периодического удаления устаревших файлов, не прошедших проверку антивирусом 20040927 - реализованы исключения при отсылке оповещений получателям зараженных писем 20040926 - реализована опциональная отмена удаления проверяемых файлов при получении DEFER'а от антивирусного демона - реализована обработка DEFER'а от антивируса, если не был указан defer_ok. возвращается соответствующее сообщение SMTP клиенту. 20040924 - реализовано опциональное оповещение postmaster'а и получателей зараженных сообщений при использовании карантина 20040922 - реализовано использование страхующих антивирусов. подразумевается ипользование дополнительных антивирусных демонов, если при проверке письма предыдущим демоном был получен DEFER 20040921 - исправлена ошибка в patch-src::malware-clamd.patch, связанная с выводом в лог сообщения о невозможности записать тело письма в сокет - расширен набор действий при обнаружении зараженного сообщения: QUARANTINE - вывод в лог файл предупреждения и помещение зараженного письма в карантин DISCARD - удаление зараженного письма DROP - синоним DISCARD REJECT - отказ в приеме зараженного письма (возврат клиенту кода 5xx) WARN - устаревшее значение, эквивалентно `QUARANTINE DISCARD' значение QUARANTINE можно указывать вместе с DISCARD, DROP или REJECT, разделяя их пробелом. для обеспечения работоспособности комбинации значений `QUARANTINE REJECT' используется конструкция fakereject, то необходимо использовать патч patch-src::reject_message 20040913 - для переменной confCHECK_RELAY_RESOLVE добавлены еще два значения: MAIL - проверка резолвинга в acl_smtp_mail RCPT - проверка резолвинга в acl_smtp_rcpt необходимо, чтобы confCHECK_RELAY_RESOLVE наряду с WARN, DEFER или REJECT содержал одно из пары значений MAIL или RCPT, указанное через пробел. если confCHECK_RELAY_RESOLVE не будет содержать ни значения RCPT ни значения MAIL, то проверка резолвинга будет проиходить в acl_smtp_rcpt. 20040907 - реализован патч patch-src::malware-clamd.patch для работы с clamd через TCP сокет с записью в сокет тела письма, что позволит работать с clamd, запущенными на других хостах - исправлены ошибки при обработке ошибок при работе с drwebd из exiscan-acl через TCP сокеты 20040906 - исправлена ошибка при парсинге mailertable в текстовом виде, если для smtp транспорта используется более одного маршрута с пробелами между ними и разделительным двоеточием 20040904 - в acls/check_relay_dialup.m4 реализованы исключения по PTR записям рилеев и номерам сетей 20040902 - реализованы разные действия при разных проверках поля Message-Id - реализованы исключения для собственных писем из списков рассылок для проверки наличия локального домена в доменной части поля Message-Id 20040901 - реализована проверка наличия локального домена в доменной части поля Message-Id 20040826 - реализован patch для поддержки readline в expansion testing mode 20040823 - реализован NTLM (SPA) аутентификатор 20040820 - реализован новый механизм работы с более чем одним антивирусом в hacks/antivirus.m4. для работы нужен exisca-acl-4.41-25 и выше. exim нужно пересобирать без патча patch-src::malware.c 20040816 - реализован механизм исключений для acls/check_digits.m4 ptr записи исключаемых рилеев указываются в access-relay-dialup со значением ok или accept - acls/check_digits.m4 перенесен из acl_smtp_mail в acl_smtp_rcpt с целью проводить проверку количества цифр после проверки helo и ptr записи рилея на принадлежность к dial-up/dsl/cable сетям 20040815 - в acls/check_ext.m4 обработка confCHECK_FILE_EXT при значении FAKEREJECT перенесена из acl_smtp_data в acl_smtp_mime с целью избежания исключений из проверки имен файлов приложений, закодированных с помощью base64/quoted-printable, т. к. при таких расширениях файлов в acl_smtp_data не срабатывает условие demime. таким образом, решение о применении fakereject принимается в acl_smtp_mime, а срабатывает fakereject в acl_smtp_data - патч patch-src::dns_enable_underscore.patch более не используется, т. к. эквивалентной функциональности можно добиться средствами конфигурационного файла 20040812 - в acls/check_digits.m4 добавлена проверка количества цифр в аргументе команды HELO ($sender_helo_name) 20040806 - исправлена ошибка в acls/check_helo_own.m4, связанная с попыткой проверки совпадения $sender_helo_name с одним из доменов из +relay_to_domains, когда самого списка +relay_to_domains не существует, т. е. переменная confSECONDARY_RELAY имеет значение NO. неработоспособность check_helo_own.m4 отразилась лишь на MTA, которые не рилеят почту других доменов. 20040804 - в acls/check_relay_resolve.m4 реализованы разные действия при отсутствии записи рилея в реверсной зоне DNS и при несовпадении записей в прямой и реверсной зонах DNS. exim должен быть скомпилирован с поддержкой dnsdb. 20040803 - в conf.default создан новый раздел "GENERAL CONFIGURATION CONTROLS" в нем описаны два параметра - confIGNORE_BOUNCE_ERRORS_AFTER и confTIMEOUT_FROZEN_AFTER, значения которых будут использованы в configure в качестве значений параметров ignore_bounce_errors_after и timeout_frozen_after соответственно. - исправлена ошибка в Makefile при синхронизации конфигурационных файлов. - в acls/check_helo_own.m4 оптимизирована проверка совпадения аргумента команды EHLO/HELO в именем нашего хоста, одним из локальных или рилеемых доменов. 20040731 - для публикации анонсов, сообщений об ошибках и недоработках, обсуждения предложений по улучшению функциональности набора конфигурационных файлов создан список рассылки exim-conf@mta.org.ua: http://www.mta.org.ua/mailman/listinfo/exim-conf 20040730 - исправлена ошибка при разборе результата запроса к mailertable, когда для домена с транспортом smtp указано более одного маршрута с пробелами между именами хостов рилеев (или их IP адресами) и разделителем двоеточием. 20040727 - в deliveries/maildir_virtual.m4 добавлена проверка наличия файла .forward в домашнем каталоге виртуального пользователя при хранении списка пользователей в базе данных MySQL. - в deliveries/maildir_virtual.m4 при хранении виртуальных алиасов в одном текстовом или dbm файле реализована возможность указать алиас сразу для всех локальных доменов. в основном такая схема предназначена для указания ролевых адресов из всех локальных доменов в качестве алиасов на одного почтового пользователя на небольших серверах. 20030923 - 20040726