Exim
Exim | |||
---|---|---|---|
![]() | |||
Тип | почтовый сервер | ||
Разработчик | Philip Hazel[вд] | ||
Написана на | Си[2] | ||
Операционная система | Unix-подобная операционная система | ||
Первый выпуск | 1995 | ||
Последняя версия | |||
Репозиторий | git.exim.org/exim.git | ||
| |||
Лицензия | GNU GPL[3] | ||
Сайт | exim.org (англ.) |
Exim (от англ. EXperimental Internet Mailer[4]) — агент пересылки сообщений, используемый в операционных системах семейства Unix. Первая версия была написана в 1995 году Филиппом Гейзелом (Philip Hazel) для использования в качестве почтовой системы в Кембриджском Университете. Exim распространяется под лицензией GPL, и каждый может свободно скачать его, использовать и модифицировать. Следует отметить, что версия 4 существенно отличается от версии 3[4].
Exim придерживается дизайна sendmail, где один процесс контролирует всю работу MTA. Такой монолитный дизайн считается небезопасным, но у Exim прекрасная история безопасности и для версии 4.xx. крайне редки критические уязвимости[5].
Exim 4 спроектирован для систем, имеющих постоянное подключение к сети, поэтому в нём нет сложных механизмов работы с очередью, через которую должны проходить все сообщения. В настройке по умолчанию Exim пытается немедленно доставить сообщение. При большой нагрузке на сервере режим немедленной доставки может быть временно выключен[6].
Особенности
- Полностью свободный MTA.
- Поддержка виртуальных доменов.
- Очень гибкая система фильтрации почты, основанная на собственных списках контроля доступа (ACL). Позволяет применять множество правил на каждом этапе SMTP-сессии.
- Система отладки, позволяющая эмулировать входящее соединение с полным выводом всей логики обработки письма, кроме оконечной доставки сообщения.
- Поддержка SMTP-аутентификации с использованием множества различных бэкэндов, таких, как LDAP, Dovecot SASL, Cyrus и т. д.
- Поддержка большого списка антивирусного ПО, такого как ClamAV, KAV и т. д.
- Поддержка большого списка антиспамового ПО, такого как Spamassassin, DCC и т. д.
- Поддержка современных видов подписи и верификации почты, таких как SPF, DKIM и DMARC.
- Поддержка протоколов SOCKS, PROXY, LDAP, DNSSEC, DANE.
- Формат конфигурационного файла, позволяющий использовать макросы, переменные, выполнения по условию и сложные выражения с обращением к внешним источникам данных (файлы и БД), имеющий приемлемый уровень читаемости (в отличие, например, от конфигурационного файла Sendmail)
- Поддержка фильтров доставки как в стандартном формате Sieve, так и в более гибком собственном формате[7].
Недостатки
- Работа с почтовой очередью не оптимизирована[6].
- Монолитный дизайн — один процесс управляет всем.
Для некоторых версий, которые в настоящее время распространены на многих компьютерах, обнаружены уязвимости CVE-2019-10149 (подвержены версии начиная с версии 4.87 по 4.91 включительно)[8] и CVE-2018-6789 (Уязвимые версии: 4.90, 4.89.1, 4.89, 4.87.1, 4.82.1, 4.88, 4.83, 4.82, 4.80.1, 4.80, 4.85, 4.84, 4.85.2, 4.84.2, 4.86.2, 4.86, 4.87)[9]
Примечания
- ↑ [exim-announce Exim 4.98 released] — 2024.
- ↑ The exim Open Source Project on Open Hub: Languages Page — 2006.
- ↑ http://exim.org/exim-html-4.84/doc/html/spec_html/ch-introduction.html
- ↑ 1 2 Hazel, 2003, p. xiii.
- ↑ [https://web.archive.org/web/20120202030340/http://www.exim.org/lurker/message/20101210.164935.385e04d0.en.html Архивная копия от 2 февраля 2012 на Wayback Machine Re: [exim-dev] Remote root vulnerability in Exim]
- ↑ 1 2 Hazel, 2003, p. 27.
- ↑ Exim's interfaces to mail filtering (неопр.). Дата обращения: 16 сентября 2012. Архивировано 19 октября 2012 года.
- ↑ CVE-2019-10149 (неопр.). Дата обращения: 10 июня 2019. Архивировано 29 июня 2019 года.
- ↑ Выполнение кода в Exim (неопр.). Дата обращения: 10 июня 2019. Архивировано 6 августа 2020 года.
Ссылки
- Официальный сайт
- Specification of the Exim Mail Transfer Agent (перевод на русский для версии 4.70.)
Литература
- Philip Hazel. The Exim SMTP Mail Server: Official Guide for Release 4. — UIT Cambridge, 2003. — 595 с. — ISBN 9780954452902.