Личный блог Suvan`a.

Работая и играя с Linux... И что из этого иногда получается.

Немного о Sendmail.

Рубрика: Безопасность -> Защита сервисов
Метки: |
Пятница, 2 октября 2009 г.
Просмотров: 5567
Подписаться на комментарии по RSS

Sendmail представляется наиболее часто применяемым МТА в Интернете - он установлен на 40% почтовых серверов, он входит в состав всех дистрибутивов Linux и в большинстве случаев ставится по умолчанию. Однако у Sendmail не самая хорошая репутация в плане безопасности. Частично виной тому возраст Sendmail - Sendmail разрабатывался еще в те времена, когда о безопасности никто не задумывался. Не надо считать, что Sendmail «древнее» приложение - оно регулярно обновляется, просто трудно нарастить мясо, когда кости плохие - это я о безопасности, фундамент которой очень слаб.

     К тому же Sendmail достаточно сложно конфигурируется - разобраться в файле конфигурации изрядно сложно, а программы-конфигураторы, упрощающие этот процесс, напрочь забывают о безопасности. Следующая причина - это то, что Sendmail'y можно запускаться от имени root, что делает уязвимости в данной программе очень серьезными - в случае взлома Sendmail крекер получит права root. Запускать Sendmail в chroot-окружении также нет смысла, так как с правами root очень легко из него выбраться.


     Наиболее популярными альтернативами программы Sendmail являются Qmail и Postfix. Обе программы быстры, относительно просты в настройке и с самого начала разрабатывались с учетом требований безопасности. Мы рекомендуем употреблять данные программы вместо Sendmail (обе программы будут описаны позже), тем более что Postfix применяется как МТА по умолчанию во многих современных дистрибутивах Linux.

     Но так как Sendmail очень популярен, будет посвящено конкретное время его защите - отказываться от него никто не будет, однако настоятельно рекомендуется перейти на Postfix или Qmail. Если все же планируется употреблять Sendmail, рекомендуется установить его последнюю версию - ведь в каждой новой версии Sendmail не столько добавляются новые функции, сколько исправляются ошибки - чем новее версия, тем больше ошибок исправлено.

     Решающий файл конфигурации Sendmail называется /etc/sendmail.cf или /etc/mail/sendmail.cf. Править этот файл вручную очень сложно. Официальным методом редактирования файла конфигурации Sendmail представляется создание макро-файла sendmail.mc, по которому потом генерируется файл sendmail.cf:

# m4 /etc/mail/sendmail.mc > /etc/sendmail.cf

     Изменение баннера.

     Если подключиться к 25 порту с помощью telnet, то можно увидеть следующее:

# telnet localhost 25

Trying 127.0.0.1. . .

Connected to localhost.

Escape character is ,Л]'.

220 test.net <http://test.net> ESMTP Sendmail 9.1.2/9.1.4; Mon, 30 Sep 2008 17:13:37 -0700

     Эту же информацию увидит и хакер, если подключится к 25 порту. Надо это исправить. Информация, которая выводится наружу, изменяется с помощью опции 0 SmtpGreetingMessage файла конфигурации. нужно открыть файл конфигурации по умолчанию - в нем можно увидить строку:

О SmtpGreetingMessage=$j Sendmail $v/$Z; $b

     $ j - это имя узла, $v и $Z - это номера версий, $Ь - текущее время и дата. Более подходящим будет следующее значение данной опции, допускающее вывод только имени узла и даты:

О SmtpGreetingMessage=$j $b

     Если нужно применять макрофайл, то надо найти (добавить) строку:

Define (conf SMTP_LOGIN_MSG' , *.$j Sendmail $v/$Z; $b')

     Как можно догадаться, нужно модифицировать значение "$j Sendmail $v/$Z; $b" на "$j $b".

Оставьте комментарий!

Не регистрировать/аноним

Используйте нормальные имена.

Если вы уже зарегистрированы как комментатор или хотите зарегистрироваться, укажите пароль и свой действующий email.
(При регистрации на указанный адрес придет письмо с кодом активации и ссылкой на ваш персональный аккаунт, где вы сможете изменить свои данные, включая адрес сайта, ник, описание, контакты и т.д.)



(обязательно)