Убираем sendmail и ставим postfix на Fedora Core, СentOS 4

Ни для кого не секрет, что в подавляющем большинстве случаев, на выделенном сервере вполне достаточно использования postfix вместо традиционного sendmail. Есть куча причин, по которым использование postfix предпочтительнее, хотя, по моему мнению, одними из самых больших его преимуществ являются простота конфигурирования и запуск его не от root, что очень положительно сказывается на безопасности сервера в целом.
Итак, вступительное слово сказано, приступим.

Для начала, нам необходимо выяснить, что в нашей системе установлено сейчас:
rpm -qa | grep sendmail
sendmail-8.13.4-2
Ага sendmail установлен в системе.
rpm -qa | grep postfix
вывод этой команды пуст, значит postfix не установлен.
Теперь нам нужно удалить установленный пакет sendmail:
rpm -e --nodeps sendmail
warning: /var/log/mail/statistics saved as /var/log/mail/statistics.rpmsave
Ключ --nodeps используется для того, чтобы удалить sendmail несмотря на то, что его используют другие установленные в системе пакеты для своих нужд. С этими задачами будет справляться наш postfix.
Теперь устанавливаем сам postfix используя чудную систему yum:
yum install postfix

После чего выполняем следующую команду:
/etc/postfix/post-install upgrade-package
В мануале написано что его нужно выполнить если ты поставил или заапгдейдил postfix на системе. Как бы постинсталляционный скрипт. Послушаем умных людей.

В основном с этапом установки разобрались.

Теперь нужно минимально его настроить для приема и отправки почты (иначе зачем мы его ставили)
Большинство настроек postfix находится в файле /etc/postfix/main.cf
Открываем его в любимом редакторе к примеру в vi
vi /etc/postfix/main.cf
Предположим что нам необходимо принимать почту для домена domain.com
ищем строчку с main.cf
#myhostname = host.domain.tld
и меняем на
myhostname = domain.com
ищем
#mydomain = domain.tld
и меняем на
mydomain = domain.com
ищем
#myorigin = $mydomain
и меняем на
myorigin = $mydomain
ищем
inet_interfaces = localhost
и меняем на
inet_interfaces = $myhostname, localhost
ищем
#mynetworks_style = host
меняем на
mynetworks_style = host

Сохраняем наши изменения и выходим из любимого редактора.

Теперь запускаем postfix:
service postfix restart

Теперь запускаем ntsysv находим там postfix и ставим напротив звездочку. Это для того чтоб он стартовал автоматически при перезагрузке системы.
Все! Почтовый сервер запущен.

В дополнение скажу, что был рассмотрен самый минимум установки и настройки postfix. На самом деле в нем намного больше настроек, он очень гибок, но для начала думаю достаточно. В дальнейшем думаю вернуться к этой теме, рассмотреть пример настройки postfix для виртуального хостинга (много доменов на одном выделенном сервере).

Как всегда с нетерпением жду комментов и пожеланий.

Postfix то стартует, а как

Postfix то стартует, а как получать почту или отправлять? при помощи чего? и как настроить?.. Может Dovecot нужен ?
Дополните статью пожалуйста.

Спасибо, уже не первый ваш

Спасибо, уже не первый ваш мануал читаю. хочу спросить не сталкивались ли задания правльного: RCPT ? На любого юзера ругается (451 4.3.0 : Temporary lookup failure

Спасибо большое за статью.

Спасибо большое за статью. sendmail отправлял раньше одно письмо по минуте. А с postfix теперь все летает по сравнению с sendmail. Респект автору!!!

Что вы имеете в виду?

Что вы имеете в виду? Sendmail до сегодняшнего дня я удалял как раз юмом. Теперь прочел вашу рекомендацию и пытаюсь понять её глубинный смысл.

И можно без намеков, а сразу дельный ответ?

А Вы попробуйте. И сразу все

А Вы попробуйте. И сразу все поймете. :-)

Да - и вопрос: почему мы

Да - и вопрос: почему мы устанавливаем Postfix, используюя "чудную систему yum",
а sendmail выкашиваем гадкой командой "rpm -e –nodeps sendmail" ?

Что, нельзя и во втором случае воспользоваться той же чудной командой? Или такую гадость, как sendmail, надо непременно мочить в сортире? :-)

> В принципе вопрос postfix

> В принципе вопрос postfix или sendmail лежит как мне кажется в “религиозных” предпочтениях админа:)

Может показаться и так. Только не стоит забывать, благодаря чему мы обязаны появлению первого вируса-червя Морриса

а sendmail так-же мало

а sendmail так-же мало пригоден - лучше всего пользоваться EXIM

qmail не пригоден как

qmail не пригоден как почтовая система для приема почты - он не умеет ничего делать на этапе smtp сессии - то есть ваш сервер станет сразу спамить спам-обраткой - слать спам по поддельному адресу отправителя в сообщении о недоставки

qmail is fast and reliable

qmail is fast and reliable mail server. try it. easy to install and manage.

Возможно, но в любом случае

Возможно, но в любом случае фактор безопасности учитывать стоит.

В принципе вопрос postfix или

В принципе вопрос postfix или sendmail лежит как мне кажется в "религиозных" предпочтениях админа:)

Опять же согласен с Вами! :-)

Опять же согласен с Вами! :-)
Но тут есть несколько замечаний.
Где-то прочитал очень интересную мысль. Из любого положения есть как минимум два выхода. :-) Вот и в нашей ситуации варианта как минимум два. Можно конечно поставить redhat-switch-mail (это для коммерческих redhat дистрибутивов таких как RHEL). В Fedora Core и CentOS этот пакет переименован в system-switch-mail.
Можно его поставить и выбрать из установленных почтовых серверов наиболее предпочтительный. Но! Лично мне как-то надежнее все сделать вручную, тем более что манипулацию то всего ничего. А настройка после установки все равно необходима. Не думаю что будет намного проще сначала поставить пакет system-switch-mail, затем поставить пакет postfix, затем с помощью system-switch-mail сделать переключение между почтовыми серверами, затем удалить ненужный sendmail, чем провести перечисленные шаги.
Неужели вы со мной не согласитесь, коллега? :-)

А что, redhat-mailswitch уже

А что, redhat-mailswitch уже убрали? :)