20160801 - реализация ручных маршрутов доставки в зависимости в том числе от адреса отправителя - реализована возможность использования альтернативного разделителя SMTP логинов и паролей для клиентской SMTP аунтентификации, указанных в файле smtpauthdb - реализована возможность указания SMTP логинов и паролей для клиентской SMTP аунтентификации, указанных в файле smtpauthdb, в зависимости не только от имени хоста отправителя, но и от адреса отправителя 20160330 - реализована проверка Content-Type прикрепленных файлов как расширение проверки имен приклепленных файлов - реализовано использование списков расширений файлов архивов для разных архиваторов при проверке имен прикрепленных файлов - реализовано использование Content-Type прикрепленных файлов при проверке содержимого приклепленных архивов 20160215 - использование $sender_host_name исключено при не совпадении $sender_host_address с confHOST_LOOKUP в acls/check_relay_os.m4 и acls/check_compat_relay.m4 20160202 - игнорирование временных ошибок SMTP при встречной проверке отправителя для писем, отосланных из PHP скриптов, адаптированы для работы по IPv6 - рилеинг входящей почты на основании принадлежности адреса сервера к набору MX записей домена получателя адаптирована для работы по IPv6 20160201 - проверка резолвинга HELO адаптирована для работы по IPv6 20160131 - реализованы новые типы транспортов smtp6 и smpt4 для mailertable, которые на системе с поддержкой IPv6 позволят при использовании в качестве значения транспорта домена получателя с суффиксом /MX отправлять почту с использованием только IPv6 и IPv4 соответственно 20151212 - реализовано опциональное исключения использования роутера virtusertable_skip_quarantined, исключающего из персональных карантинов письма, маршрутизируемые через virtusertable по умолчанию использование virtusertable_skip_quarantined отключено 20151003 - реализована проверка имен прикрепленных файлов, в том числе имен файлов внутри архивов 20150924 - реализована доставки почты локальных доменов по LMTP через UNIX domain socket 20150915 - реализован Single Sign-On на базе аутентификации GSSAPI в Active Directory 20150824 - реализована возможность применения "серых списков" не только к IP адресу хоста отправителя, но и к сети хоста отправителя с произвольной маской, а также возможность применения "серых списков" не только применительно к адресам отправителей, но и к любой модификации адреса (например, к домену отправителя), произведена соответствующая адаптация механизма внесения в исключения "серых списков" записей при отсылке писем из рилеемых сетей или от аутентифицированных отправителей - реализовано хранение данных "серых списков" в memcached и redis 20150823 - реализован интерфейс для работы с memcached в виде двух named acl: acl_memcached_set и acl_memcached_get - реализована возможность использования memcached и redis в качестве хранилища для данных автоматически пополняемых персональных белых списков (AWL) 20150424 - реализована проверка SMTP ауетнтификации пользовательским способом (нужно использование `CUSTOM' в качестве значения confSMTP_AUTH_SOURCE и описывать сам механизм проверки в confSMTP_AUTH_CUSTOM_SERVER_CONDITION) 20150212 - реализована тип маршрута для mailertable для доставки копий писем по SMTP 20150131 - реализован expand результатов запросов в access-helo 20141218 - реализованы ограничения отсылки исхдящей почты по IPv6 по доменам получетелей и сетям хостов получателей для доменов, MX записи которых имеют одновременно и A и AAAA записи 20141206 - обеспечена возможность использования confFALL_BACK_MX_DELAYED при работе fallback MX на одном хосте со штатным exim'ом 20141129 - реализовано резервной копирование почты путем маршрутизации копий локальных писем на удаленный SMTP сервер без перезаписи адреса получателя 20141123 - переработано использование ratelimit'ов 20141120 - реализована пассивная проверка операционной системы хостов отправителей 20141106 - реализованы исключения из проверки FQDN хоста отправителя в HELO по набору регулярных выражений из skip_helo_forged_check (файл исключений из проверки соответствия HELO и PTR записи хоста отправителя, acls/check_helo_forged.m4) 20140928 - исправлены перевод значений результатов проверки соответствия адреса хоста отправителя SPF записи домена отправителя "error (temporary)" и "unknown (permanent error)" в "temperror" и "permerror" соответственно при использовании spfd из состава Mail::SPF::Query 20140911 - реализована смена прав доступа при gmake install не только к каталогам доменов и пользователей, но и к каталогам фолдеров, если используется доставка в виртуальные мейлдиры - для настройки протоколирования работы введена перенменная confLOG_SELECTOR, в значении по умолчанию реализовано исключение acl_warn_skipped из значения log_selector 20140726 выпущен паровоз 4.83 (предназначен для работы с exim 4.83 и выше) список изменений: - при вызове вспомагательных acl используется механизм работы с аргументами, реализованный в exim 4.82 - acl normalize_action переименован в acl_normalize_action - упразднена переменная confDKIM_DISABLE_CHECK - упразднен механизм проверки домена отправителя в RFC Ignorant Lists: упразднена конструкция RFC_IGNORANT_LIST упразднена переменная confCHECK_RFC_IGNORANT упразднена переменная confCHECK_RFC_IGNORANT_ABUSE упразднена переменная confCHECK_RFC_IGNORANT_POSTMASTER упразднена переменная confCHECK_RFC_IGNORANT_DSN упразднен файл skip_rfc_ignorant упразднен файл skip_rfc_ignorant_mail упразднен файл samples/skip_rfc_ignorant упразднен файл samples/skip_rfc_ignorant_mail упразднен файл features/rfc_ignorant_list.m4 - упразднен макрос WITH_EXPERIMENTAL_REMOVE_HEADER, применявшийся в dlfunc для определения списка удаленных полей заголовков при использовании патча для удаления полей заголовков из ACL - features/dlfunc_spamd.m4 переименована в features/spamd.m4 - значение `DLFUNC_SPAMD' переменной confCONTENT_SCANNING заменено на `SPAMD' - упразднены переменные confSMTP_AUTH_SPA, confSMTP_AUTH_SPA_DC и confSMTP_AUTH_SPA_DC_DOMAIN - переименованы файл настроек в каталоге site: site/retry_rules в site/configure.retry_rules site/rewrite_rules в site/configure.rewrite_rules site/backup_smtp_mail.m4 в site/configure.backup_smtp_mail.m4 site/backup_smtp_rcpt.m4 в site/configure.backup_smtp_rcpt.m4 site/acl_smtp_data_before_accept.m4 в site/configure.acl_smtp_data_before_accept.m4 - переименованы каталоги с pkgsrc: packages/pkgsrc-solaris в packages/pkgsrc-sunos packages/pkgsrc-macosx в packages/pkgsrc-darwin packages/ports-macosx в packages/macports-darwin - исторически сложившееся название spamoborona2 исправлено на spamooborona2: каталог dlfunc/spamoborona2 переименован в dlfunc/spamooborona2 файл dlfunc spamoborona2.c переименован в spamooborona2.c файл features/spamoborona2.m4 переименован в features/spamooborona2.m4 - упразднен contrib/mysql3 - каталог contrib/mysql41 переименован в contrib/mysql - упразднен механизм проверки хоста отправителя на предмет наличия на нем open proxy: удален acls/check_open_proxy.m4 удален m4/periodic/proxycheck_del_expired.sh.m4 удален contrib/proxycheck удален samples/skip_proxy_check - при проверке адреса хоста отправителя в DNSBL заголовок X-Warn-DNSBL теперь добавлятся только при наличии действия warn в списке действий - оптимизированы механизмы проверок: проверка адреса рилея отправителя в DNSBL проверка наличия записи рилея в реверсной зоне DNS проверка рилея отправителя проверка FQDN хоста отправителя в HELO проверка резолвинга домена верхнего уровня аргумента команды HELO проверка HELO в виде адреса нашего интерфейса, нашего имени хоста, наших доменов - реализовано действие quarantine и использовании персональных карантинов при действии reject для следующих проверок: проверка адреса рилея отправителя в DNSBL проверка наличия записи рилея в реверсной зоне DNS проверка рилея отправителя проверка FQDN хоста отправителя в HELO проверка резолвинга домена верхнего уровня аргумента команды HELO проверка HELO в виде адреса нашего интерфейса, нашего имени хоста, наших доменов - оптимизирован шаблон добавляемого заголовка Received, исправлена ошибка указания операционной системы в добавляемом заголовке Received - переменная confCHECK_HELO_FQDN_NOT_RESOLVE переименована в confCHECK_HELO_FQDN_NOT_RESOLVABLE - по умолчанию игнорирование временных ошибок при встречной проверке отправителя при приеме писем, отправленных из PHP функции mail, производится только для локальных доменов. при использовании данной функции на транзитном рилее, принимающем всю входящую почту получателей и пересылающем ее далее, целесообразно дополнять значение переменной confVERIFY_SENDER_DEFER_OK_PHP_DOMAINS списком рилеемых доменов - log-файл системного фильтра создается при выполнении gmake install только если confSYSTEM_FILTER имеет непустое значение - отключить сохранение писем с предупреждениями или писем, предназначенных для помещения в карантин, можно путем присвоения пустых значений соответствующим переменным confSYSTEM_FILTER_WARNINGS_DIR и confSYSTEM_FILTER_QUARANTINE_DIR, либо указав нулевой срок жизни таких писем в переменных confSYSTEM_FILTER_WARNINGS_AGE и confSYSTEM_FILTER_QUARANTINE_AGE - каталог для сохранения в карантине инфицированных писем, путь к которому должен быть указан в переменной confQUARANTINE_DIR, создается только если значение этой переменной не пустое, а переменная confQUARANTINE_MAILDIR не объявлена особо стоит обратить внимание на следующие изменения, т. к. они могут повлечь за собой необходимость в переносе каталогов или переименовании переменных внутри пользовательских файлов: - значение по умолчанию переменной confSYSTEM_FILTER_WARNINGS_DIR изменено на /var/spool/quarantine/warnings - значение по умолчанию переменной confSYSTEM_FILTER_QUARANTINE_DIR изменено на /var/spool/quarantine/quarantine - значение по умолчанию переменной confQUARANTINE_DIR изменено на /var/spool/quarantine/infected - переменная acl_m7 переименована в acl_m_avir_notification в случае использования переменной acl_m7 в пользовательских файлах site/system_filter* следует в них также переименовать эту переменную - переменная acl_m15 переименована в acl_m_spam_action в случае использования переменной acl_m15 в пользовательских файлах site/system_filter* следует в них также переименовать эту переменную пример использования переменной acl_m_spam_action для отображения в письмах произведенных над ними действий можно найти в файле samples/site/system_filter_bottom - упразднена старая поддержка DSN: упразднена переменная confDSN упразднен features/dsn.m4 упразднен samples/template.DSN 20140726 - реализована подмена разделителя полей в результатах запросов к файлам access-mail-domain-txt и access-mail-domain-spf с ":" на "|" с целью дать возможность использовать в результатах запросов вставку переменных, в значениях которых может присутствовать символ ":" 20140716 - реализована возможность указания вычисляемого имени хоста в полях заголовков, добавляемых на основании результатов работы контент сканеров и антивирусов 20140622 - реализовано исключение из проверки FQDN хоста отправителя в HELO для HELO в виде IP адреса (не литерала) 20140615 - существенно расширен набор действий при проверке соответствия HELO и PTR записи хоста отправителя - реализована доставка в персональные карантины писем, решение об отказе доставки которых принято механизмом проверки соответствия HELO и PTR записи хоста отправителя - в письма от аутентифицированных отправителей или из рилеемых сетей не добавляется заголовок Authentication-Results, если он имеет значение none 20140614 - уточнены сообщения в лог файл и SMTP клиенту в случае, если при проверке соответствия HELO и PTR записи хоста рилея отпрвителя имя хоста не отрезолвлено из-за проблем резолвинга 20140612 - возможность указывать в файле skip_greylist_relays исключаемые из "серых списков" рилеи в виде IP адресов, номеров сетей и имен хостов добавлена возможность указывать имена хостов по маске или в виде регулярных выражений 20140610 - реализована доставка в персональные карантины писем, решение об отказе доставки которых принято механизмом проверки HELO в виде адреса нашего интерфейса, нашего имени хоста, наших доменов - существенно расширен набор действий при проверке HELO в виде адреса нашего интерфейса, нашего имени хоста, наших доменов 20140420 - реализована доставка в персональные карантины писем, решение об отказе доставки которых принято опциональным REJECT'ом 20140418 - реализовано исключение из проверки праметра SIZE команды MAIL FROM при использовании клиентом протокола ESMTP для пустых отправителей - решена проблема доставки по ручному маршруту SMTP писем, получивших высокую оценку контент сканера при использовании персональных карантинов - реализована доставка в общесистемный карантин отвергнутых писем, адресованных получателям из рилеемых доменов, при использовании персональных карантинов для получателей из локальных доменов 20140219 - реализованы исключения проверки SMTP синхронизации 20140115 - реализована проверка существования домена отправителя если письмо попадает под исключение встречной проверки отправителя 20131223 - проверки Auto White List не производится для хостов отправителей, указанных в hosts-whitelist 20131204 - исключения из проверки резолвинга путем указания значения ACCESS в переменной confCHECK_RELAY_RESOLVE_SKIP теперь распространяются и на вычисление PTR записи в acl_check_connect - реализована возможность указания значения для параметра host_lookup в переменной confHOST_LOOKUP 20131029 - реализована экспериментальная поддержка ADSP, RFC5617 20130923 - реализовано опциональное отображение результатов проверки DKIM подписи в заголовке Authentication-Results, описанном в RFC5451 20130909 - реализовано опциональное отображение результатов проверки резолвинга рилея отправителя и соответствия адреса рилея отправителя SPF записи домена отправителя в заголовке Authentication-Results, описанном в RFC5451 20130902 - количество запросов к БД MySQL при проверке комбинаций адресов отправителя и получателя увеличена с четырех до шести запросов 20130830 - количество запросов к БД MySQL при проверке комбинаций адресов отправителя и получателя увеличена с двух до четырех запросов 20130829 - реализовано создание символических ссылок на периодически выполняемые скрипты без расширения файлов .sh для Debian 20130826 - введена отдельная переменная для описания списка локальных доменов 20130819 - по умолчанию запрещена аутентификация без шифрования путем добавления DISABLE_AUTH_WITHOUT_TLS в значение по умолчанию переменной confSMTP_AUTH_RESTRICT - по умолчанию встречная проверка отправителя с применением callout считается неудачной только если 5xx получен на этапе RCPT To - проверка получателей с применением callout считается неудачной только 5xx получен на этапе RCPT To 20130813 - к возможным исключениям из проверки адресов хостов отправителя на принадлежность к relay_from_hosts, если в MAIL FROM и RCPT TO указаны одинаковые адреса из локальных доменов, добавлено исключение для хостов из trusted сетей 20130729 - введены два новых значения для переменной описания проверки квот confVIRT_MDIR_QUOTA - VERIFY_RCPT_CUSTOM_DEFER и VERIFY_RCPT_CUSTOM_REJECT. они могут использоваться при необходимости проверять квоты пользовательским способом, например запросами к БД. при использовании VERIFY_RCPT_CUSTOM_DEFER и VERIFY_RCPT_CUSTOM_REJECT условие проверки квот необходимо описать в переменной confVIRT_MDIR_QUOTA_CUSTOM_CONDITION 20130726 - реализован новый транспорт lmtplocal для mailertable для доставки по lmtp почты локальных доменов, доставка осуществляется после раскрытия алиасов 20130725 - длина переименовываемых полей с данными контент сканеров ограничена 32k. остальная часть значения поля будет усекаться 20130530 - упразднено исключение из проверки комбинации адресов отправителя и получателя для писем от аутентифицированых отправителей и для писем из рилеемых сетей 20130525 - исправлены ошибки в реализации поддержки RFC2231 20130331 - реализован метод аунтентификации CRAM-MD5 при использовании DOVECOT в значении confSMTP_AUTH_SOURCE 20130121 - решена проблема сборки динамически загружаемых библиотек на Mac OS X - место расположения файла динамически загружаемой библиотеки выбирается в зависимости от операционной системы и сборки exim из pkgsrc 20130120 - реализована поддержка QNX на примере QNX SDP 6.5.0 20121118 - реализована сборка exim из pkgsrc под OpenBSD 20121117 - реализована поддержка Mac OS X на примере Mac OS X Mountain Lion 10.8.2 20121111 - введены новые параметры сборки confSMTP_AUTH_NTLM, confSMTP_AUTH_NTLM_DC и confSMTP_AUTH_NTLM_DC_DOMAIN вместо соответственно парамтеров confSMTP_AUTH_SPA, confSMTP_AUTH_SPA_DC и confSMTP_AUTH_SPA_DC_DOMAIN 20121107 - добавлена возможность проверять данные аутентификации через Dovecot 20121002 - исправлены ошибки доставки почты с помощью procmail при интеграции с Active Directory в случае, когда NetBIOS имя пользователя не соответствует мейлбоксу 20120815 - реализована возможность указывать списки хостов и сетей, исключаемых из запрета использовать аутентификацию без шифрования 20120710 - исправлена ошибка в исключении из фильтров получателей из recipients_spam_haters 20120530 - исправлена ошибка попытки доставки почты несуществующим получателям из локальных доменов без проверки существования получтеля при принятии решения о доставке писем в персональные карантины при проверке комбинации адреса хоста отправителя, адресов отправителя и получателя и при проверке проверке комбинации адресов отправителя и получателя 20120529 - исправлены сообщения при проверке комбинации адреса хоста отправителя, адресов отправителя и получателя 20120504 - реализовано исключение по адресу хоста отправителя из проверки соответствия HELO и PTR записи рилея 20120310 - реализовано опциональное по умолчанию включенное дополнение действия deny (reject) действием quarantine в случае использования персональных карантинов для фильтров, использующих при обработке результатов запросов в access-* файлы acl normalize_action. доставка отвергнутых писем в персональные карантины управляется переменной confCONTENT_SCANNING_PERSONAL_QUARANTINE_REJECTED_MESSAGES - действие QUARANTINE добавлено для переменных confCHECK_ACCESS_HELO, confCHECK_ACCESS_RELAY, confCHECK_ACCESS_RELAY_COUNTRY, confCHECK_FAKE_LOCAL - для переменной confVERIFY_SENDER добавлено значение QUARANTINE, оно может использоваться одновременно с REJECT старые значения WARN_LOG и REJECT_LOG упразднены 20120308 - реализована доставка в персональные карантины пользователей писем, для которых в разных фильтрах было указано действие quarantine - в системном фильтре реализовано добавления поля заголовка X-Quarantined со значением YES для игнорирования писем с данным заголовком в автоответчиках при доставке писем в персональные карантины - действие доставки в карантин добавлено в проверку HELO 20120228 - в качестве нового значения для confIP2COUNTRY_BACKEND добавлен WINMANIA API: http://www.wipmania.com/ru/api/ 20120221 - переделана логика работы confRECIPIENTS_SPAM_HATERS применительно к анализу содержимого письма в acl_check_data, если в access-compat или access-compat-relay было указано действие whitelist 20120106 - реализована одновременная доставка в виртуальные maildir'ы с помощью пользовательских фильтров (FILTERS в confDELIVERY_TO) и с помощью внешнего LDA (PIPE или PIPE-LMTP в confDELIVERY_TO) - реализовано игнорирование доставки с помощью procmail и пользовательских фильтров писем, предназначенных для доставки в персональные каратнины 20120105 - создана переменная confLMTP_DEFAULT_PORT для указания номера порта LMTP по умолчанию 20111219 - реализация игнорирования более чем одной записи в результатах запроса существования пользователя к LDAP серверу 20111112 - добавлено действие FAKEREJECT для confCHECK_ACCESS_RCPT и access-rcpt при проверке адресов получателей 20111023 выпущен паровоз 4.76 (предназначен для работы с exim 4.70 и выше) список изменений: - проверка соответствия $sender_host_address набору A записей, в которые резолвится $sender_helo_name, в acls/check_helo_fqdn.m4 реализована без использования функции match_ip с вычисляемым вторым аргументом в связи с изменениями в механизме обработки параметров функции match_ip в exim 4.77 - проверка домена из поля Message-Id в acls/check_message_id.m4 реализвана без использования фукнции match_domain с вычисляемым вторым аргументом в связи с изменениями в механизме обработки параметров функции match_domain в exim 4.77 - проверка адреса получателя в списке recipients_antivirus_haters в features/antivirus.m4 реализована без использования функции match_local_part в связи с изменениями в механизме обработки параметров функции match_local_part в exim 4.77 - переименованы файлы шаблонов писем: antivir_notification.txt в template.antivir_notification antivir_notification_plain.txt в template.antivir_notification_plain bounce-message.template в template.bounce-message warning-message.template в template.warning-message DSN.txt в template.DSN 20111009 - приоритет confCHECK_ACCESS_COMPAT_RELAY повышен по отношению к confCHECK_ACCESS_COMPAT - приоритет confRECIPIENTS_SPAM_FRIENDS и confRECIPIENTS_SPAM_HATERS повышен по отношению к confCHECK_ACCESS_COMPAT и confCHECK_ACCESS_COMPAT_RELAY 20110913 - реализован expand результатов запросов в текстовый вариант mailertable 20110329 - исправлена обработка HELO в виде литералов при проверке FQDN 20110313 - определение основной MX записи домена при фильтрации по MX записям домена отправителя реализовано с помощью ${reduce - реализована фильтрация почты по NS записям домена отправителя - реализовано применение "серых списков" к хостам, не использующим ESMTP 20110216 - расширен набор обрабатываемых полей контент сканера rspamd 20110214 - значение по умолчанию для confDKIM_DISABLE_CHECK изменено на `YES' 20110211 - реализовано игнорирование регистра адресов отправителя и получателя в запросах по умолчанию к MySQL и SQLite БД в мехиманизме автоматических белых списков 20110210 - исправлено опциональное добавление полей Message-Id и Date 20110131 - в acl_check_data реализовано опциональное включение файла site/configure.acl_smtp_data.m4 для использования пользовательских acl. 20110130 - при проверке соответствия HELO и FQDN хоста отправителя реализованы разные действия при несоответствии HELO и FQDN хоста отправителя, при проблемах с резолвингом HELO и при нерезолвящихся HELO. переменная confCHECK_HELO_FQDN переименована в confCHECK_HELO_FQDN_FORGED. также добавлены переменные confCHECK_HELO_FQDN_DEFER и confCHECK_HELO_FQDN_NOT_RESOLVE. - при определении страны адреса хоста отправителя игнорируются адреса из +private_networks. 20110129 - реализована поддержка контент сканера rspamd средствами dlfunc. - при проверке соответствия HELO и FQDN хоста отправителя реализована проверка нескольких A записей, в которые резолвится HELO, и нескольких PTR записей, в которые резолвится адрес хоста отправителя. 20110124 выпущен паровоз 4.70 (предназначен для работы с exim 4.70 и выше) список изменений: - реализована конвертация текстовых файлов из покаталога m4 конфигуратора в набор символов UTF-8 для систем с соответствующей локалью. конвертация производится при выполнении gmake texts-utf8 в большинстве случае текстовые файлы уже будут сконвертированы в UTF-8. - переименованы следующие переменные: confCHECK_HELO_ACCESS в confCHECK_ACCESS_HELO confCHECK_RCPT_ACCESS в confCHECK_ACCESS_RCPT confCHECK_MAIL_ACCESS в confCHECK_ACCESS_MAIL confCHECK_MAIL_DOMAIN_A в confCHECK_ACCESS_MAIL_DOMAIN_A confCHECK_MAIL_DOMAIN_MX в confCHECK_ACCESS_MAIL_DOMAIN_MX confCHECK_MAIL_DOMAIN_TXT в confCHECK_ACCESS_MAIL_DOMAIN_TXT confCHECK_MAIL_DOMAIN_SPF в confCHECK_ACCESS_MAIL_DOMAIN_SPF confCHECK_RELAY_ACCESS в confCHECK_ACCESS_RELAY confCHECK_RELAY_DIALUP в confCHECK_ACCESS_RELAY_DYNAMIC confCHECK_RELAY_COUNTRY_ACCESS в confCHECK_ACCESS_RELAY_COUNTRY confCHECK_COMPAT в confCHECK_ACCESS_COMPAT confCHECK_COMPAT_BACKEND в confCHECK_ACCESS_COMPAT_BACKEND confCHECK_COMPAT_DBM_FILE в confCHECK_ACCESS_COMPAT_DBM_FILE confCHECK_COMPAT_SQLITE_FILE в confCHECK_ACCESS_COMPAT_SQLITE_FILE confCHECK_COMPAT_SQLITE_QUERY в confCHECK_ACCESS_COMPAT_SQLITE_QUERY confCHECK_COMPAT_SQLITE_QUERY2 в confCHECK_ACCESS_COMPAT_SQLITE_QUERY2 confCHECK_COMPAT_MYSQL_QUERY в confCHECK_ACCESS_COMPAT_MYSQL_QUERY confCHECK_COMPAT_MYSQL_QUERY2 в confCHECK_ACCESS_COMPAT_MYSQL_QUERY2 confCHECK_COMPAT_RELAY в confCHECK_ACCESS_COMPAT_RELAY confCHECK_COMPAT_RELAY_BACKEND в confCHECK_ACCESS_COMPAT_RELAY_BACKEND confCHECK_COMPAT_RELAY_DBM_FILE в confCHECK_ACCESS_COMPAT_RELAY_DBM_FILE confCHECK_COMPAT_RELAY_SQLITE_FILE в confCHECK_ACCESS_COMPAT_RELAY_SQLITE_FILE confCHECK_COMPAT_RELAY_SQLITE_QUERY в confCHECK_ACCESS_COMPAT_RELAY_SQLITE_QUERY confCHECK_COMPAT_RELAY_SQLITE_QUERY2 в confCHECK_ACCESS_COMPAT_RELAY_SQLITE_QUERY2 confCHECK_COMPAT_RELAY_SQLITE_QUERY3 в confCHECK_ACCESS_COMPAT_RELAY_SQLITE_QUERY3 confCHECK_COMPAT_RELAY_SQLITE_QUERY4 в confCHECK_ACCESS_COMPAT_RELAY_SQLITE_QUERY4 confCHECK_COMPAT_RELAY_MYSQL_QUERY в confCHECK_ACCESS_COMPAT_RELAY_MYSQL_QUERY confCHECK_COMPAT_RELAY_MYSQL_QUERY2 в confCHECK_ACCESS_COMPAT_RELAY_MYSQL_QUERY2 confCHECK_COMPAT_RELAY_MYSQL_QUERY3 в confCHECK_ACCESS_COMPAT_RELAY_MYSQL_QUERY3 confCHECK_COMPAT_RELAY_MYSQL_QUERY4 в confCHECK_ACCESS_COMPAT_RELAY_MYSQL_QUERY4 confCHECK_COMPAT_RELAY_COUNTRY в confCHECK_ACCESS_COMPAT_RELAY_COUNTRY confCHECK_COMPAT_RELAY_COUNTRY_SQLITE_QUERY в confCHECK_ACCESS_COMPAT_RELAY_COUNTRY_SQLITE_QUERY confCHECK_COMPAT_RELAY_COUNTRY_SQLITE_QUERY2 в confCHECK_ACCESS_COMPAT_RELAY_COUNTRY_SQLITE_QUERY2 confCHECK_COMPAT_RELAY_COUNTRY_MYSQL_QUERY в confCHECK_ACCESS_COMPAT_RELAY_COUNTRY_MYSQL_QUERY confCHECK_COMPAT_RELAY_COUNTRY_MYSQL_QUERY2 в confCHECK_ACCESS_COMPAT_RELAY_COUNTRY_MYSQL_QUERY2 переименование данных переменных в site/conf можно произвести с помощью выполнинения команды gmake fix в подкаталогах m4 или site. - упразднена переменная confCHECK_MAIL_DOMAIN (устаревший вариант переменной confCHECK_MAIL_DOMAIN_A). - в переменных confCONFIGURE_OWNER и confCONFIGURE_GROUP можно указать владельца и группу владельца конфигурационного файла. по умолчанию это root и wheel. - значение по умолчанию для confGREYLIST_BACKEND измено на `SQLITE'. - значение по умолчанию для confMAILERTABLE_LMTP изменить с `YES' на `NO'. - реализовано определение первичной MX записи доменов с помощью ${reduce без использования embedded perl при обработке конструкции /bestMX в mailertable. - реализовано определение первичной MX записи доменов с помощью ${reduce без использования рекурсивно вызываемого ACL acl_get_bestmx при рилеинге входящей почты доменов, для которых мы являемся backup MX, и best MX запись которых входит в наши trusted сети (переменная confRELAY_BASED_ON_MX). также упразднен ACL acl_check_mx. - фильтрация по стране рилея отправителя (переменная confCHECK_ACCESS_RELAY_COUNTRY) теперь является лишь расширением фильтрации по хосту отправителя, т. е. может использовать только совместно с confCHECK_ACCESS_RELAY). расширение confCHECK_ACCESS_RELAY_COUNTRY задействуется позже расширения confCHECK_ACCESS_RELAY_DYNAMIC. т. е. сначала производится запрос к access-relay по адресу хоста отправителя, потом производится запрос к access-relay по имени хоста отправителя, потом производится проверка на принадлежность адреса хоста отправителя к списку хостов и сетей из access-relay-blacklist, потом опционально производится проверка на принадлежность адреса хоста отправителя к списку хостов и сетей из access-relay-dynamic, и уже после этого производится запрос к access-relay по стране хоста отправителя. файл acls/check_relay_country.m4 упразднен, его код интегрирован в acls/check_relay.m4 - при фильтрации писем по стране рилея отправителя (переменная confCHECK_ACCESS_RELAY_COUNTRY) в аргументе поиска больше не нужно использовать "country_" в качестве префикса. - результат вычисления страны по $sender_host_address (IP адресу хоста рилея отправителя) кешируется для дальнейшего использования в переменной $acl_m_sender_host_address_country. название именно этой переменной нужно использовать в тексте запросов: confCHECK_ACCESS_COMPAT_RELAY_COUNTRY_SQLITE_QUERY confCHECK_ACCESS_COMPAT_RELAY_COUNTRY_SQLITE_QUERY2 confCHECK_ACCESS_COMPAT_RELAY_COUNTRY_MYSQL_QUERY confCHECK_ACCESS_COMPAT_RELAY_COUNTRY_MYSQL_QUERY2 - упразднена проверка HELO в виде IP адреса без квадратных скобок (переменная confCHECK_HELO_IP). фильтровать письма с HELO в виде IP адреса без квадратных скобок можно с помощью регулярного выражения в access-helo: \N^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$\N : deny : Invalid greeting used : HELO used IP address - упразднена синтаксическая проверка HELO/EHLO (переменная confCHECK_HELO_MISCONFIGURED). фильтровать письма с синтаксически некорректными HELO/EHLO можно с помощью регулярных выражений в access-helo. примеры: \N^[^\.]+\N : deny : Invalid greeting used : HELO without point \N^\.$\N : deny : Invalid greeting used : HELO with only point \N\.\.\N : deny : Invalid greeting used : HELO with double point \N^\.\N : deny : Invalid greeting used : HELO begins with point \N^[^\.]+\.$\N : deny : Invalid greeting used : HELO ends with point \N^<.*>$\N : deny : Invalid greeting used \N^<.+$\N : deny : Invalid greeting used \N^.+>$\N : deny : Invalid greeting used \N^.*\@.*$\N : deny : Invalid greeting used : @ found in HELO/EHLO - упразднена проверка существования получателей в доменах с фиксированным списком получателей (переменная confCHECK_RCPT_INVALID, файл recipients_invalid). ограничивать прием писем для доменов в ограниченным набором получателей следует в access-rcpt. - упразднена проверка наличия угловых скобок в командах MAIL FROM и RCPT TO (переменная confCHECK_ANGLE_BRACKETS). проверку наличия угловых скобок в командах MAIL FROM и RCPT TO следует производить с помощью confCHECK_SMTP_COMMANDS. для проверки наличия угловых скобок в команде MAIL FROM следует добавить следующую строку в файл access-smtp-command-mail: \N^mail\x20from\x3A\s*[^<\s]\N : warn delay=20 greylist=10 reject=2 для проверки наличия угловых скобок в команде RCPT TO следует добавить следующую строку в файл access-smtp-command-rcpt: \N^rcpt\x20to\x3A\s*[^<\s]\N : warn delay=20 greylist=10 reject=2 действия в обеих строках приведены для примера. - упразднена проверка наличия почтового ящика и домена получателя в почтовом ящике отправителя (переменная confCHECK_SENDER_MAILBOX). пример: MAIL FROM: RCPT TO: для проверки наличия почтового ящика и домена получателя в почтовом ящике отправителя следует использовать confCHECK_ACCESS_COMPAT с `TEXT' в качестве значения confCHECK_ACCESS_COMPAT_BACKEND: *: ${if and{{match{$sender_address_local_part}{\N(?i)^.*\N$local_part\N.*$\N}}{match{$sender_address_local_part}{\N(?i)^.*\N$domain\N.*$\N}}}{deny : Access denied. Suspicious sender address : Invalid sender mailbox. There are recipient mailbox and domain in sender mailbox}{ok}} *: ${if match{$sender_address_local_part}{\N(?i)^\N$domain\N.*\N$local_part\N$\N}{greylist=10 reject=5 : Access denied. Suspicious sender address : Invalid sender mailbox. There are recipient mailbox and domain in sender mailbox}{ok}} нужно использовать один из этих примеров. данная строка должна быть последней в access-compat. в случае хранения данных для compat проверки в sqlite/mysql придется использовать дополнительно и текстовый бекенд. - все механизмы сборки ports, pkgsrc, portage, rpms перенесены в подкаталог packages. подкаталоги pkgsrc-dragonfly, pkgsrc-netbsd, pkgsrc-solaris, ports-freebsd и ports-openbsd просто перенесены в подкаталог packages. подкаталоги redhat и suse переименованы с добавлением префикса "rpms". подкаталог gentoo переименован с добавление префикса "portage". обновление всех механизмов сборки бинарных пакетов производится одной команндой gmake sync_packages. при этом из обновлений исключаются файлы make.conf и Makefile.local. при первом выполнении команды gmake sync_packages при обновлении конфигуратора подкаталги сборки бинарных пакетов будут предварительно перенесены в созданный подкаталог packages, что позволит сохранить все ранее созданные файлы make.conf и Makefile.local. 20110121 - реализована поддержка portmaster в механизме сборки exim для FreeBSD 20110116 - реализована фильтрация по комбинациям стран хостов отправителей и адресов отправителей и получателей 20110115 - реализована возможность фильтровать рилеи отправителя по стране отправителя в файле access-relay без префикса "country_" 20101122 - реализована фильтрация по SPF записям домена отправителя 20101120 - исправлена ошибка сортировки MX записей с одинаковым приоритетом в функции perl/sortmx.pl - реализована поддержка вычисляемых выражений при проверке MX записей домена отправителя - реализована фильтрация по TXT записям домена отправителя 20100912 - реализован механизм проверки синтаксиса SMTP команд MAIL и RCPT 20100613 - использование транспортов lmtp и lmtpunix в mailertable сделано опциональным 20100609 - упразднена поддержка под ОС Linux перезагрузки демона путем посылки сигнала HUP процессу, PID которого указан в файле /var/run/exim.pid - конфигуратор адаптирован под операционную систему Gentoo Linux 20100608 - реализовано добавление поля заголовка письмо и сообщения в лог файл при срабатывании автоматического белого списка 20100602 - реализовано использование вычисляемых значений для access-rcpt 20100513 - реализовано использование вычисляемых значений для access-compat 20100222 - реализован патч для замены в SMTP ответе клиенту LDAP паролей, когда их количество более одного в вычисляемой строке - реализован патч для сокрытия сообщений об ошибках в SMTP сесии при выполнении LDAP запросов в роутерах 20100129 - реализован контроль соответствия SMTP логинов и адресов отправителя без учета регистра 20100118 - реализован фильтр по комбинации адреса (имени) хоста отправителя, адресов отправителя и получателя 20091219 - реализована поддержка Distributed Checksum Clearinghouses - реализована возможность запретить проверку подписей DKIM, включенную по умолчанию 20091129 - упразднена переменная confADD_X_ORIGINAL_RECIPIENTS, используемая при добавлении поля X-Original-Recipients - реализовано добавление поля X-Recipients со списком всех получателей письма при использовании роутеров для резервного копирования почты - значение ROUTER переменной confMAIL_BACKUP переименовано в ROUTER_REDIRECT - реализовано резервное копирование почты с помощью роутеров путем доставки в виртуальный maildir 20090329 - отключено влияние confFALL_BACK_MX_DELAYED на письма, смаршрутизированные по SMTP через mailertable 20081027 - реализована возможность указывать ручные маршруты для проверки существования получателей по LMTP - пересмотрена поддержка доставки в cyrus-imapd: - использование значения CYRUS в переменной confDELIVERY_TO упразднено (необходимо использовать значение MDIR_VIRT в переменной confDELIVERY_TO) - при необходимости проверки получателей с помощью mbpath необходимо в переменной confVIRT_MDIR_USERLIST указать CYRUS-IMAPD, а путь к mbpath указать в переменной confVIRT_MDIR_CYRUS_MBPATH_PATH, а не в переменной confCYRUS_MBPATH_PATH - переменная confCYRUS_LMTP_SOCKET упразднена путь к файлу сокета должен быть указан в mailertable - переменная confCYRUS_USER упразднена пользователь, от имени которого будет произведена запись в UNIX domain socket, должен быть указан в mailertable - переменная confCYRUS_BATCH_MAX упразднена 20081025 выпущен паровоз 4.69 список изменений: - реализовано использование дополнительных параметров при встречной проверке отправителя - механизмы встречной проверки отправителей и проверки получателей рилеемых доменов перенесены из acls в features - произведены изменения в поддержке доставки почты по ручным маршрутам. - переменная confMAILERTABLE_CALLOUTTABLE упразднена. теперь роутер callout_smtp всегда используется при использовании confMAILERTABLE - транспорт remote_smtp_callout упразднен - роутер callout_smtp_another_port упразднен - транспорт remote_lmtp_mailertable переименован в remote_lmtp - теперь нельзя использовать конструкцию mx(domain.tld) для указания в качестве ручного маршрута набора MX записей домена domain.tld, теперь нужно использовать штатную форму записи exim'а domain.tld/MX - по аналогии с суффиксом /MX теперь можно использовать /bestMX. для поддержки суффикса /bestMX нужна поддержка встроенного perl'а - номер порта SMTP/LMTP серверов нужно указывать не после типа маршрута smtp/lmtp через пробел (как было до недавнего времени), а после хоста через два ":" - транспорт remote_smtp_mailertable упразднен. отсылка на нестандартные порты производится штатным транспортом remote_smtp. при необходимости доставлять почту на другой порт этого же хоста необходимо указать параметр allow_localhost в файле site/configure.smtp_transport_options - при хранении mailertable в MySQL или SQLite для транспорта smtp не нужно поле port, значение порта указывается возле каждого хоста через два ":" - упразднен отдельный механизм доставки почты для dbmail. разработаны три схемы взаимодействия с dbmail (доставка по LMTP с проверкой пользователей по LMTP, доставка по LMTP с проверкой пользователей в БД, доставка с использованием внешнего LDA и проверкой пользователей в БД) 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 список изменений: - прекращена поддержка работы с 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 в качестве храналища данных "серых списков" в дополнении к хранению данных в Berkeley DB, все переменные 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 список изменений: - прекращена поддержка контент анализа средствами 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 20070214 выпущен паровоз 4.64 (предназначен для работы с exim 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 список изменений: - первая схема работы с 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 - реализация первой версии паровоза, позднее известная как exim-4.0-conf