The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Релиз SMTP-сервера Sendmail 8.14.5 и первая альфа-версия проекта MeTA1

17.05.2011 21:47

Спустя полтора года с момента прошлого выпуска увидел свет релиз SMTP-сервера Sendmail 8.14.5 (версия 8.14.4 вышла в декабре 2009 года, последний значительный релиз Sendmail 8.14.0 вышел в феврале 2007 года). Версия 8.14.5 носит корректирующий характер и содержит исправление 21 проблемы.

Из наиболее важных исправлений отмечено:

  • SMTP-расширения более не кэшируются между соединениями. В роли ключа в для выборки из кэша использовалось имя хоста, но зафиксированы случаи, когда одно имя хоста использовалось на разных машинах, поддерживающих разные SMTP-расширения;
  • Блокирован доступ за пределы границ выделенного блока памяти в ситуации когда DNS-резолвер возвращает значение больше 1 Кб (про уязвимость в анонсе не сообщается, но не исключено, что данная ошибка является проблемой безопасности);
  • В обработчике сигналов убран вызов функций, не безопасных для использования в роли обработчиков сигналов;
  • При соединении к серверу читается не более двух AUTH-строк, чтобы избежать DoS-атак на SMTP-клиента, которые могут привести к исчерпанию всей доступной памяти;
  • Решены проблемы с работой sendmail на некоторых платформах (например, OpenBSD) при сборке в GCC 4, возникающие из-за изменения выравнивания char-буферов в стеке;
  • Добавлена поддержка Darwin 10.x (Mac OS X 10.6);
  • Для платформы FreeBSD задействовано использование HAVE_NANOSLEEP;
  • Улучшение совместимости с Solaris 11: для сохранения pid-файла используется директория "/system/volatile", вместо SOCKADDR_LEN_T и SOCKOPT_LEN_T используется socklen_t;
  • Устранены проблемы сборки с использованием OpenSSL 1.0.

Дополнительно можно отметить прогресс в работе над проектом MeTA1 (старое название sendmail X) - две недели назад вышла первая альфа-версия MeTA1 1.0.Alpha1.0. В рамках проекта MeTA1 создается полностью переработанный преемник Sendmail, имеющий новую архитектуру (напоминает postfix), новый формат файлов конфигурации (напоминает dns-сервер bind), возможность подключения внешних модулей (напоминает apache) и новую лицензию (Sendmail open source license). Работу MeTA1 обеспечивает ряд не требующих повышенных привилегий подсистем: менеджер очередей (QMGR), SMTP-сервер (SMTPS), SMTP-клиент (SMTPC), DNS-резолвер (SMAR), процесс-супервизор (MCP) и агент доставки (DA). MeTA1 имеет встроенную поддержку работы в chroot.



  1. Главная ссылка к новости (http://www.sendmail.com/sm/ope...)
  2. OpenNews: Новый SMTP сервер OpenSMTPd включен в состав базовой сборки OpenBSD
  3. OpenNews: Разработчики OpenBSD представили новый SMTP-сервер
  4. OpenNews: beta-тестирование проекта sendmail X
  5. OpenNews: Проект Sendmail X переименован в MeTA1
Лицензия: CC-BY
Тип: Программы
Ключевые слова: sendmail, mail, smtp
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение (15) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Vitaly_loki (ok), 22:21, 17/05/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    >Работу MeTA1 обеспечивает ряд не требующих повышенных привилегий подсистем: менеджер очередей (QMGR), SMTP-сервер (SMTPS), SMTP-клиент (SMTPC), DNS-резолвер (SMAR), процесс-супервизор (MCP) и агент доставки (DA). MeTA1 имеет встроенную поддержку работы в chroot.

    Ну собственно только MCP требует root'овых привилегий для байндинга 25 порта для smtps, затем следит чтоб никто не упал и перезапускает демон, если тот упал. А так да - каждый демон под собственным юзером запускается, как в qmail

     
     
  • 2.5, тру йода (?), 11:00, 18/05/2011 [^] [^^] [^^^] [ответить]  
  • +/
    Рутовые привилегии только для того чтобы слушать 25-й порт это идиотизм по нынешним меркам и в принципе несекурно. Интересно какой смысл сейчас вообще требовать рутовые привилегии для портов ниже 1024? Ну раньше это имело смысл чтобы пользовательский процесс не мог занять порт требуемый важному софту. Сейчас то это можно обеспечить и другими гораздо менее опасными методами (читай - без делегирования рутовых прав).
     
     
  • 3.6, Vitaly_loki (ok), 11:55, 18/05/2011 [^] [^^] [^^^] [ответить]  
  • +/
    Ну напиши Клаусу об этом, а то он наверно не в курсе. На www.meta1.org внизу есть мыло его
     
  • 3.7, Владимир (??), 11:56, 18/05/2011 [^] [^^] [^^^] [ответить]  
  • +/
    Поделитесь как? И в каких ОС этот метод работает?
     
     
  • 4.13, тру йода (?), 13:52, 18/05/2011 [^] [^^] [^^^] [ответить]  
  • +/
    Как узнать имеет ли данный процесс право занять указанный порт? И чему только учат в школах. Да как угодно. Хоть по пути/имени. Вбить гвоздями в ядро что только /usr/bin/sendmail имеет право занять 25-й порт и никто другой. Очевидно чтобы поставить этот самый /usr/bin/sendmail потребуются рутовые права, но только чтобы поставить. Примерно то же самое делает inetd пару десятков лет, аот только ему тоже требуются для этого рутовые права, соответственно и проблема та же. Других возможностей тоже сколько угодно - делай хоть на основе lsm, хоть с selinux да apparmor. Только зачем себе усложнять жизнь - ведь можно выделить привелигированный  диапазон портов и  дать рутовые права каждому процессу который потребует для себя порт в этом диапазоне. А там пусть этот процесс сам решает. Захочет - порт себе возьмет свой, а захочет и чужой (что мешает апачу занять 25й порт? только совесть), захочет в чужие файлы нагадит (ну а что, права то есть на все), а захочет и руткит поставит. Это все равно что на все офисы иметь одинаковый ключ и выдавать ключ каждому работающему в здании - предполагается что честный человек будет пользоватся только для доступа к своему. А вот это уже далеко не факт.

    Что то там говорили что в последних федорах процесс разграничения рутовых прав уже пошел, надо бы поглядеть как там дела идут.

     
     
  • 5.16, Владимир (??), 15:10, 18/05/2011 [^] [^^] [^^^] [ответить]  
  • +/
    Вообще-то свет не сошёлся на linux. В каких ещё ОС такое возможно?
     
     
  • 6.17, тру йода (?), 15:27, 18/05/2011 [^] [^^] [^^^] [ответить]  
  • +/
    > Вообще-то свет не сошёлся на linux. В каких ещё ОС такое возможно?

    Вопрос стоит ставить так - а в каких это ОС ядро не может определить какой именно процесс запрашивает порт?

     
  • 3.9, Аноним (-), 12:47, 18/05/2011 [^] [^^] [^^^] [ответить]  
  • +/
    > Интересно какой смысл сейчас вообще требовать рутовые привилегии для портов ниже 1024?

    Если вам не нравится это требование - отключите, йолки.

    > раньше это имело смысл чтобы пользовательский процесс не мог занять порт требуемый
    > важному софту

    А сейчас, типа, перестало? А что с тех пор изменилось? :)

     

  • 1.4, Port22 (?), 10:32, 18/05/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    MeTA1 сырой ещё очень, темпы его разработки слабенькие.
     
  • 1.8, Аноним (-), 12:46, 18/05/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > менеджер очередей (QMGR), SMTP-сервер (SMTPS), SMTP-клиент (SMTPC),
    > DNS-резолвер (SMAR), процесс-супервизор (MCP) и агент доставки (DA).

    Они еще забыли сервис для работы с БД, тогда совсем Exchange какой-то получился бы. Да, конечно, для резольва днс просто необходим отдельный процесс. Наверное разработчики не в курсе что такое отдельный тред, поэтому заводят на все и вся сразу по процессу.  

     
     
  • 2.10, Vitaly_loki (ok), 13:09, 18/05/2011 [^] [^^] [^^^] [ответить]  
  • +/
    All of these modules run persistently. smtps and smtpc make use of the statethreads library which provides a threading API well suited for Internet applications, smar and qmgr use the POSIX threads API.
     

  • 1.11, umbr (ok), 13:17, 18/05/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >просто необходим отдельный процесс ... разработчики не в курсе что такое отдельный тред

    А есть разница?

     
     
  • 2.14, Аноним (-), 14:26, 18/05/2011 [^] [^^] [^^^] [ответить]  
  • +/
    >>просто необходим отдельный процесс ... разработчики не в курсе что такое отдельный тред
    > А есть разница?

    Да, есть: при нормальной реализации тредов, тред значительно легче процесса и экономнее по ресурсам. Времена Linux 2.4, где разницы действительно почти не было - к счастью закончились.

     
     
  • 3.15, Stax (ok), 14:51, 18/05/2011 [^] [^^] [^^^] [ответить]  
  • +/
    Ох вы и фантазер ;)
    С green тредов на нативные перешли как раз потому, что производительность при большом числе тредов была выше. И green-реализация просто загибалась там, где нативные отлично пахали. Погуглите отчеты и графики времен внедрения NPTL.
     

  • 1.12, Аноним (-), 13:30, 18/05/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Году к 2020 допилят, как раз к тому времени email отомрёт.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Спонсоры:
    Слёрм
    Inferno Solutions
    Hosting by Ihor
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2019 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру