Как уже упоминалось, FreeBSD поставляется с MTA (Mail Transfer Agent) sendmail. Следовательно, по умолчанию именно эта программа отвечает за вашу исходящую и входящую почту.
Однако, по различным причинам некоторые системные администраторы заменяют системный MTA. Эти причины варьируются от простого желания попробовать другой MTA до потребности в определенных возможностях пакета, основанного на другой почтовой программе. К счастью, вне зависимости от причины, в FreeBSD такая замена выполняется просто.
Вам предоставлен широкий выбор MTA. Начните с поиска в Коллекции Портов FreeBSD, где их немало. Конечно, вы можете использовать любой MTA по желанию, взятый откуда угодно, если только сможете запустить его под FreeBSD.
Начните с установки нового MTA. После установки у вас будет возможность решить, действительно ли он подходит вашем нуждам, а также настроить новое программное обеспечение перед тем, как заменить им sendmail. При установке новой программы убедитесь, что она не пытается перезаписать системные файлы, такие как /usr/bin/sendmail. Иначе ваша новая почтовая программа фактически начнет работать до того, как вы ее настроите.
Обратитесь к документации на выбранный MTA за информацией по его настройке.
Внимание: Если вы отключите сервис исходящей почты sendmail, необходимо заменить его альтернативной системой доставки почты. Если вы не сделаете этого, системные программы, такие как periodic(8), не смогут отправлять сообщения по электронной почте как обычно. Многие программы в вашей системе могут требовать наличия функционирующей sendmail-совместимой системы. Если приложения будут продолжать использовать программу sendmail для отправки почты после того, как вы её отключили, почта может попасть в неактивную очередь sendmail и никогда не будет доставлена.
Для полного отключения sendmail, включая сервис исходящей почты, используйте
sendmail_enable="NO" sendmail_submit_enable="NO" sendmail_outbound_enable="NO" sendmail_msp_queue_enable="NO"
в /etc/rc.conf.
Если вы хотите отключить только сервис входящей почты sendmail, установите
sendmail_enable="NO"
в /etc/rc.conf. Дополнительная информация о параметрах запуска sendmail доступна на странице справочника rc.sendmail(8).
Новый МТА можно запускать автоматически при загрузке системы добавив соответствующую строку в /etc/rc.conf. Ниже приведен пример для postfix:
# echo 'postfix_enable=''YES''' >> /etc/rc.conf
С этого момента МТА будет запускаться автоматически во время загрузки системы.
Программа sendmail настолько распространена в качестве стандартной программы для систем UNIX®, что многие программы считают, что она уже установлена и настроена. По этой причине многие альтернативные MTA предоставляют собственные совместимые реализации интерфейса командной строки sendmail; это облегчает их использование в качестве ''прозрачной'' замены sendmail.
Поэтому если вы используете альтернативную почтовую программу, потребуется убедиться, что когда программное обеспечение пытается выполнить стандартные исполняемые файлы sendmail, такие как /usr/bin/sendmail, на самом деле выполняются программы вновь установленной почтовой системы. К счастью, FreeBSD предоставляет систему, называемую mailwrapper(8), которая выполняет эту работу за вас.
Когда установлен sendmail, файл /etc/mail/mailer.conf выглядит примерно так:
sendmail /usr/libexec/sendmail/sendmail send-mail /usr/libexec/sendmail/sendmail mailq /usr/libexec/sendmail/sendmail newaliases /usr/libexec/sendmail/sendmail hoststat /usr/libexec/sendmail/sendmail purgestat /usr/libexec/sendmail/sendmail
Это означает, что когда выполняется какая-то из этих стандартных программ (например сам sendmail), система на самом деле вызывает копию mailwrapper, называемую sendmail, которая обращается к mailer.conf и выполняет вместо этого /usr/libexec/sendmail/sendmail. Такая схема делает простой замену программ, которые на самом деле выполняются, когда вызываются стандартные функции sendmail.
Поэтому если вы хотите выполнять /usr/local/supermailer/bin/sendmail-compat вместо sendmail, отредактируйте /etc/mail/mailer.conf так:
sendmail /usr/local/supermailer/bin/sendmail-compat send-mail /usr/local/supermailer/bin/sendmail-compat mailq /usr/local/supermailer/bin/mailq-compat newaliases /usr/local/supermailer/bin/newaliases-compat hoststat /usr/local/supermailer/bin/hoststat-compat purgestat /usr/local/supermailer/bin/purgestat-compat
Как только вы все настроили, потребуется или уничтожить процесс sendmail, который уже не нужен и запустить новую почтовую программу, или просто перегрузить систему. Перезагрузка также даст вам возможность проверить, правильно ли настроена система для автоматического запуска MTA при загрузке.
Пред. | Начало | След. |
Настройка sendmail | Уровень выше | Поиск и устранение неисправностей |
Этот, и другие документы, могут быть скачаны с ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.
По вопросам, связанным с FreeBSD, прочитайте документацию прежде чем писать в <questions@FreeBSD.org>.
По вопросам, связанным с этой документацией, пишите <doc@FreeBSD.org>.
По вопросам, связанным с русским переводом документации, пишите в рассылку <frdp@FreeBSD.org.ua>.
Информация по подписке на эту рассылку находится на сайте проекта перевода.