Postfix (программное обеспечение) - Postfix (software)
Оригинальный автор (ы) | Витсе Венема на IBM Исследовательский центр Томаса Дж. Уотсона |
---|---|
Разработчики) | Google и многие другие |
изначальный выпуск | 14 декабря 1998 г. |
Стабильный выпуск | 3.5.8 / 7 ноября 2020 г. |
Предварительный выпуск | 3.6-20201104 / 4 ноября 2020 г. |
Репозиторий | |
Написано в | C[1] |
Операционная система | Кроссплатформенность |
Тип | Агент по пересылке почты |
Лицензия | Общественная лицензия IBM или Общественная лицензия Eclipse |
Интернет сайт | www |
Постфикс это свободный и Открытый исходный код агент по пересылке почты (MTA), который направляет и доставляет электронная почта.
Выпускается под Общественная лицензия IBM 1.0, который является лицензия на бесплатное программное обеспечение. В качестве альтернативы, начиная с версии 3.2.5, он доступен под Общественная лицензия Eclipse 2.0 по выбору пользователя.[2]
Первоначально написано в 1997 г. Витсе Венема на IBM Исследовательский центр Томаса Дж. Уотсона в Нью-Йорк, и впервые выпущен в декабре 1998 г.[3], Postfix действует с 2020 г.[Обновить] будет активно развиваться его создателем и другими участниками. Программное обеспечение также известно под его прежними названиями. VMailer и IBM Secure Mailer.
В августе 2019 года исследование, проведенное E-Soft, Inc.,[4] примерно 34% общедоступных почтовых серверов в Интернете используют Postfix, что делает его вторым по популярности почтовым сервером после Exim.
Типичное развертывание
Как SMTP сервера, Postfix реализует первый уровень защиты от спам-боты и вредоносное ПО. Администраторы могут комбинировать Postfix с другим программным обеспечением, которое обеспечивает фильтрацию спама / вирусов (например, Амависд-новый ), доступ к хранилищу сообщений (например, Dovecot ) или сложный SMTP -уровневые политики доступа (например, postfwd, политический вес или серый список ).
Как SMTP клиент, Postfix реализует высокопроизводительный механизм параллельной доставки почты. Postfix часто сочетается с список рассылки программное обеспечение (например, Почтальон ).
Операционные системы
Postfix работает (или уже работал) на AIX, BSD, HP-UX, Linux, macOS, Солярис и, вообще говоря, на каждом Unix-подобный операционная система, которая поставляется с C компилятор и обеспечивает стандартный POSIX среда разработки. Это по умолчанию MTA дляmacOS, NetBSD[5],Красная Шапка /CentOS[6] и Ubuntu операционные системы.[7]
Архитектура
Postfix состоит из комбинации серверных программ, которые работают в фоновом режиме, и клиентских программ, которые запускаются пользователь программ или системными администраторами.
Ядро Postfix состоит из нескольких десятков сервер программы, работающие в фоновом режиме, каждая из которых обрабатывает один конкретный аспект доставки электронной почты. Примерами являются SMTP сервер, планировщик, устройство перезаписи адресов и локальный сервер доставки. В целях контроля повреждений большинство серверных программ работают с фиксированной сокращенной привилегии и прекратить добровольно после обработки ограниченного количества запросов. Чтобы сохранить системные ресурсы, большинство серверных программ завершают свою работу, когда они бездействуют.
Клиент программы работают вне ядра Postfix. Они взаимодействуют с серверными программами Postfix через инструкции по доставке почты в пользовательском ~ / .forward файл, а также через небольшие программы-«ворота» для отправки почты или запроса информации о статусе очереди.
Другие программы предоставляют административную поддержку для запуска или остановки Postfix, запроса информации о статусе, управления очередью или проверки или обновления ее файлов конфигурации.
- Желтые эллипсы
- Один из многих демонов Postfix, служащих одной цели. Это разделение на множество более мелких программ считается одной из причин, почему Postfix безопасен и стабилен.
- Синие ящики
- Синие прямоугольники обозначают так называемые таблицы поиска. Таблица поиска состоит из двух столбцов (ключ и значение), содержащих информацию, используемую для управления доступом, маршрутизации электронной почты и т. Д.
- Желтые коробки
- Желтые поля - это почтовые очереди или файлы. В любом случае электронные письма хранятся на постоянном носителе (например, на жестком диске).
- белые облака
- Облака обозначают точки, в которые электронная почта входит или покидает Postfix. Например, smtpd получает почту от других почтовых серверов или пользователей, тогда как smtp ретранслирует почту другим MTA.
Реализация
Реализация Postfix использует безопасные подмножества C язык и POSIX система API. Эти подмножества скрыты под слоем абстракции, который содержит около 50% всего исходного кода Postfix и обеспечивает основу, на которой построены все программы Postfix. Например, примитив "vstring" делает код Postfix устойчивым к переполнение буфера[8]атаки, а примитив «безопасного открытия» делает код Postfix устойчивым к атакам в условиях гонки на системы, реализующие POSIX файловая система: API. Этот уровень абстракции не влияет на устойчивость к атакам кода, отличного от Postfix, такого как код в системных библиотеках или сторонних библиотеках.
Надежность
Концептуально Postfix управляет трубопроводы процессов, которые передают ответственность за доставку сообщений и уведомление об ошибках от одного процесса к другому. Вся информация о «состоянии» сообщений и уведомлений сохраняется в файловой системе. Процессы в конвейере работают в основном без централизованного управления; эта относительная автономия упрощает восстановление после ошибок. Когда процесс выходит из строя до завершения своей части транзакции файла или протокола, его предшественник в конвейере отключается и повторяет запрос позже, а его преемник в конвейере отбрасывает незавершенную работу. Многие демоны Postfix могут просто «умереть», столкнувшись с проблемой; они автоматически перезапускаются при поступлении следующего запроса на обслуживание. Такой подход делает Postfix очень устойчивым до тех пор, пока операционная система или оборудование не выходят из строя катастрофически.
Спектакль
Один единственный экземпляр Postfix работал со скоростью ~ 300 доставок сообщений в секунду.[9]через Интернет на обычном оборудовании (винтаж 2003 г. Dell Система 1850 с контроллером MegaRAID с батарейным питанием и двумя SCSI диски). Эта скорость доставки на порядок ниже «внутреннего» предела в 2500 доставок сообщений в секунду.[9]это было достигнуто с помощью очереди почты на RAM-диске при доставке в "отбросить «транспортный (с двухъядерным Opteron системе в 2007 году).
Почтовые системы, такие как Postfix и Qmail достичь высокой производительности за счет доставки почты в параллельных сеансах. С почтовыми системами, такими как Отправить почту и Exim которые устанавливают одно соединение за раз, высокая производительность может быть достигнута за счет параллельной отправки ограниченных пакетов почты, так что каждый пакет доставляется отдельным процессом. Постфикс и Qmail требуют параллельной отправки в разные экземпляры MTA, когда они достигают своего внутреннего предела производительности или пределов производительности оборудования или операционной системы.
Приведенные выше показатели доставки в основном теоретические. При массовой доставке почты истинная скорость доставки в первую очередь определяется политикой получения почты получателем и репутацией отправителя.
Базовая конфигурация
В main.cf файл хранит параметры конфигурации Postfix для конкретного сайта, а master.cf определяет процессы демона.[10] В Базовая конфигурация Postfix в руководстве рассматриваются основные параметры, которые необходимо учитывать каждому сайту, а также Примеры стандартной конфигурации Postfix В документе обсуждаются параметры конфигурации для нескольких распространенных сред. В Постфиксная перезапись адресов Документ касается перезаписи адресов и маршрутизации почты. Полная коллекция документации находится по адресу Документация по Postfix
Более сложные реализации Postfix могут включать: интеграцию с другими приложениями, такими как SpamAssassin; поддержка нескольких виртуальных доменные имена - и использовать базы данных, такие как MySQL для управления сложными конфигурациями.
История выпуска
Версия | Дата выхода [11] | Значительные изменения | |
---|---|---|---|
Главный | Незначительный | ||
2.0 | |||
2.1 | |||
2.2 | |||
2.3 | |||
2.4 | |||
2.5 | 2.5.0 | 24 января 2008 г. | |
2.5.8 | 28 августа 2009 г. | Снято выпуск. | |
2.5.17 | 6 февраля 2012 г. | EOL 2.5 | |
2.6 | 2.6.0 | 12 мая 2009 года | |
2.6.3 | 2 августа 2009 г. | Необъявленный выпуск. | |
2.6.4 | 26 августа 2009 г. | Снято выпуск. | |
2.6.19 | 4 февраля 2013 г. | EOL 2.6 | |
2.7 | 2.7.0 | 13 февраля 2010 г. | |
2.7.16 | 16 января 2014 г. | EOL 2.7[12] | |
2.8 | 2.8.0 | 20 января 2011 г. | Представлен демон postscreen, который находится перед основным постфиксом и действует как блокировщик зомби. Также: белый список DNS, поддержка SQLite[13] |
2.8.1 | 22 февраля 2011 г. | ||
2.8.2 | 21 марта 2011 г. | ||
2.8.3 | 9 мая 2011 | ||
2.8.4 | 7 июля 2011 г. | ||
2.8.5 | 3 сентября 2011 г. | ||
2.8.6 | 24 октября 2011 г. | ||
2.8.7 | 7 ноября 2011 г. | ||
2.8.8 | 1 февраля 2012 г. | ||
2.8.9 | 5 марта 2012 г. | ||
2.8.10 | 24 апреля 2012 г. | ||
2.8.11 | 20 мая 2012 года | ||
2.8.12 | 1 августа 2012 г. | ||
2.8.13 | 13 декабря 2012 г. | ||
2.8.14 | 4 февраля 2013 г. | ||
2.8.15 | 22 июня 2013 г. | ||
2.8.16 | 5 сентября 2013 г. | ||
2.8.17 | 16 января 2014 г. | ||
2.8.18 | 13 октября 2014 г. | ||
2.8.19 | 19 октября 2014 г. | ||
2.8.20 | 8 февраля 2015 г. | EOL 2.8[14] | |
2.9 | 2.9.0 | 1 февраля 2012 г. | Поддержка Memcache, постепенная деградация[15] |
2.9.1 | 18 февраля 2012 г. | ||
2.9.2 | 24 апреля 2012 г. | ||
2.9.3 | 20 мая 2012 года | ||
2.9.4 | 1 августа 2012 г. | ||
2.9.5 | 13 декабря 2012 г. | ||
2.9.6 | 4 февраля 2013 г. | ||
2.9.7 | 22 июня 2013 г. | ||
2.9.8 | 5 сентября 2013 г. | ||
2.9.9 | 16 января 2014 г. | ||
2.9.10 | 13 октября 2014 г. | ||
2.9.11 | 19 октября 2014 г. | ||
2.9.12 | 8 февраля 2015 г. | ||
2.9.13 | 12 апреля 2015 г. | ||
2.9.14 | 20 июля 2015 г. | ||
2.9.15 | 10 октября 2015 г. | EOL 2.9[16] | |
2.10 | 2.10.0 | 11 февраля 2013 г. | Поддержка для TLSv1.1 и TLSv1.2[17] |
2.10.1 | 22 июня 2013 г. | ||
2.10.2 | 5 сентября 2013 г. | ||
2.10.3 | 16 января 2014 г. | ||
2.10.4 | 13 октября 2014 г. | ||
2.10.5 | 19 октября 2014 г. | ||
2.10.6 | 8 февраля 2015 г. | ||
2.10.7 | 12 апреля 2015 г. | ||
2.10.8 | 20 июля 2015 г. | ||
2.10.9 | 10 октября 2015 г. | ||
2.10.10 | 15 мая 2016 | EOL 2.10[18] | |
2.11 | 2.11.0 | 15 января 2014 г. | Поддержка для ДЕЙН[19][20] |
2.11.1 | 7 мая 2014 | ||
2.11.2 | 13 октября 2014 г. | ||
2.11.3 | 19 октября 2014 г. | ||
2.11.4 | 8 февраля 2015 г. | ||
2.11.5 | 12 апреля 2015 г. | ||
2.11.6 | 20 июля 2015 г. | ||
2.11.7 | 10 октября 2015 г. | ||
2.11.8 | 15 мая 2016 | ||
2.11.9 | 1 января 2017 г. | ||
2.11.10 | 13 июня 2017 г. | ||
2.11.11 | 27 января 2018 г. | ||
3.0 | 3.0.0 | 8 февраля 2015 г. | Поддержка для интернационализированные доменные имена и адреса localparts как определено в RFC 6530 и связанные документы, динамически подключаемые библиотеки Postfix и плагины баз данных, операции с несколькими таблицами поиска, псевдотаблицы, упрощающие реализацию простых вещей, и многое другое.[21] |
3.0.1 | 12 апреля 2015 г. | ||
3.0.2 | 20 июля 2015 г. | ||
3.0.3 | 10 октября 2015 г. | ||
3.0.4 | 21 февраля 2016 г. | ||
3.0.5 | 15 мая 2016 | ||
3.0.6 | 28 августа 2016 г. | ||
3.0.7 | 1 октября 2016 г. | ||
3.0.8 | 1 января 2017 г. | ||
3.0.10 | 13 июня 2017 г. | ||
3.0.11 | 28 октября 2017 г. | ||
3.0.12 | 27 января 2018 г. | ||
3.0.13 | 20 мая 2018 | ||
3.0.14 | 24 ноября 2018 г. | ||
3.0.15 | 26 февраля 2019 г. | ||
3.1 | 3.1.0 | 24 февраля 2016 г. | Упрощенная настройка гибкого управления ключами / сертификатами сервера TLS и SMTP, поддержка TTL положительного и отрицательного ответа DNS на постэкране, ограничение скорости SASL AUTH на SMTP-сервере, ограничение безопасности на количество запросов проверки адреса, список очередей JSON, доставка независимо от пункта назначения задержка тарифа, в том числе.[22] |
3.1.1 | 15 мая 2016 | ||
3.1.2 | 28 августа 2016 г. | ||
3.1.3 | 1 октября 2016 г. | ||
3.1.4 | 1 января 2017 г. | ||
3.1.6 | 13 июня 2017 г. | ||
3.1.7 | 28 октября 2017 г. | ||
3.1.8 | 27 января 2018 г. | ||
3.1.9 | 20 мая 2018 | ||
3.1.10 | 24 ноября 2018 г. | ||
3.1.11 | 26 февраля 2019 г. | ||
3.1.12 | 30 марта 2019 г. | ||
3.1.13 | 29 июня 2019 г. | ||
3.1.14 | 22 сентября 2019 г. | ||
3.1.15 | 3 февраля 2020 г. | ||
3.2 | 3.2.0 | 28 февраля 2017 г. | Эллиптическая кривая переговоры с OpenSSL ≥ 1.0.2, хранимая процедура поддержка баз данных MySQL, cidr: поддержка таблиц для if / endif и отрицания, поддержка для каждого клиента Milter конфигурация, действия PASS и STRIP в header / body_checks и т. д.[23] |
3.2.2 | 13 июня 2017 г. | ||
3.2.3 | 24 сентября 2017 г. | ||
3.2.4 | 28 октября 2017 г. | ||
3.2.5 | 27 января 2018 г. | ||
3.2.6 | 20 мая 2018 | ||
3.2.7 | 24 ноября 2018 г. | ||
3.2.8 | 26 февраля 2019 г. | ||
3.2.9 | 30 марта 2019 г. | ||
3.2.10 | 29 июня 2019 г. | ||
3.2.11 | 22 сентября 2019 г. | ||
3.2.12 | 3 февраля 2020 г. | ||
3.2.13 | 12 марта 2020 г. | ||
3.2.14 | 18 апреля 2020 г. | ||
3.3 | 3.3.0 | 21 февраля 2018 г. | Прекращена поддержка устаревшего выпуска Postfix 2.11[24] |
3.3.1 | 20 мая 2018 | ||
3.3.2 | 24 ноября 2018 г. | ||
3.3.3 | 26 февраля 2019 г. | ||
3.3.4 | 30 марта 2019 г. | ||
3.3.5 | 29 июня 2019 г. | ||
3.3.6 | 22 сентября 2019 г. | ||
3.3.7 | 3 февраля 2020 г. | ||
3.3.8 | 12 марта 2020 г. | ||
3.3.9 | 18 апреля 2020 г. | ||
3.4 | 3.4.0 | 27 февраля 2019 г. | Прекращена поддержка устаревшего выпуска Postfix 3.0[25] |
3.4.1 | 7 марта 2019 г. | ||
3.4.2 | 10 марта 2019 г. | ||
3.4.3 | 10 марта 2019 г. | Одно из изменений Postfix 3.4.2 (LINUX5) отсутствовало. | |
3.4.4 | 14 марта 2019 г. | ||
3.4.5 | 30 марта 2019 г. | ||
3.4.6 | 29 июня 2019 г. | ||
3.4.7 | 22 сентября 2019 г. | ||
3.4.8 | 24 ноября 2019 г. | ||
3.4.9 | 3 февраля 2020 г. | ||
3.4.10 | 12 марта 2020 г. | ||
3.4.11 | 18 апреля 2020 г. | ||
3.5 | 3.5.0 | 16 марта 2020 г. | Прекращена поддержка устаревшего выпуска Postfix 3.1[26] |
3.5.1 | 18 апреля 2020 г. | ||
3.6 | 19 апреля 2020 г. | ||
Легенда: Старая версия Старая версия, все еще поддерживается Последняя версия Последняя предварительная версия Будущий выпуск |
Смотрите также
использованная литература
- ^ Лекстрейт, Винсент (июль 2010 г.). "Маяк языков программирования, v10.3". Архивировано из оригинал 30 мая 2012 г.. Получено 5 сентября 2010.
- ^ «Стабильный выпуск Postfix 3.2.5 и устаревшие выпуски 3.1.8, 3.0.12 и 2.11.11». Январь 2018. Получено 30 января 2018.
- ^ Марков, Джон (декабрь 1998). «Совместное использование программного обеспечения, IBM выпустит план почтовой программы». Получено 17 сентября 2017.
- ^ «Обзор E-Soft MX». securityspace.com. E-Soft Inc. 1 августа 2019 г.. Получено 21 августа 2019.
- ^ «Руководство по NetBSD. Глава 27. Почта и новости». Получено 2010-05-10.
- ^ «ГЛАВА 24. ПОСТФИКС».
- ^ "Постфикс". Документация сообщества, Ubuntu Wiki. Получено 2012-03-09.
- ^ Хонтаньон, Рамон Дж. (10 июля 2001 г.). Безопасность Linux. Сан-Франциско: Sybex. п. 166. ISBN 978-0-7821-2741-6. Получено 2011-09-21.
- ^ а б "Массовая рассылка". Получено 2012-09-09.
- ^ Postfix-Tutorial.com: Postfix, Courier / POP, SASL и Spamassassin - с администратором MySQL
- ^ Объявления Postfix
- ^ «Устаревшие выпуски Postfix 2.10.3, 2.9.9, 2.8.17 и 2.7.16». Postfix.org. Получено 2014-01-24.
- ^ "Стабильный выпуск Postfix 2.8.0". Postfix.org. Получено 2013-09-19.
- ^ «Устаревшие выпуски Postfix 2.11.4, 2.10.6, 2.9.12 и 2.8.20». Postfix.org. Получено 2015-04-29.
- ^ "Стабильный выпуск Postfix 2.9.0". Postfix.org. Получено 2013-09-19.
- ^ "Стабильный выпуск Postfix 3.1.0". Postfix.org. Получено 2017-11-21.
- ^ "Стабильный выпуск Postfix 2.10.0". Postfix.org. Получено 2013-09-19.
- ^ «Стабильный выпуск Postfix 3.1.4 и устаревшие выпуски 3.0.8, 2.11.9». Postfix.org. Получено 2017-11-20.
- ^ "Postfix 2.11.0-RC2 доступен с полной поддержкой DANE". IETF.org. Получено 2015-04-29.
- ^ "Стабильный выпуск Postfix 2.11.0". Postfix.org. Получено 2014-01-24.
- ^ "Стабильный выпуск Postfix 3.0.0". Postfix.org. Получено 2015-04-29.
- ^ "Стабильный выпуск Postfix 3.1.0". Postfix.org. Получено 2016-03-29.
- ^ "Стабильный выпуск Postfix 3.2.0". Postfix.org. Получено 2017-11-21.
- ^ "Стабильный выпуск Postfix 3.3.0". Postfix.org. Получено 2018-02-21.
- ^ "Стабильный выпуск Postfix 3.4.0". Postfix.org. Получено 2019-02-27.
- ^ "Стабильный выпуск Postfix 3.5.0". Postfix.org. Получено 2020-03-16.
дальнейшее чтение
- Кайл Д. Дент (2003). Постфикс: полное руководство. O'Reilly Media. ISBN 978-0-596-00212-1.
- Ральф Хильдебрандт и Патрик Кёттер (2005). Книга Postfix: современный транспорт сообщений. Пресс без крахмала. ISBN 978-1-59327-001-8.