Как уже упоминалось, FreeBSD поставляется с MTA (Mail Transfer Agent) sendmail. Следовательно, по умолчанию именно эта программа отвечает за вашу исходящую и входящую почту.
Однако, по различным причинам некоторые системные администраторы заменяют системный MTA. Эти причины варьируются от простого желания попробовать другой MTA до потребности в определенных возможностях пакета, основанного на другой почтовой программе. К счастью, вне зависимости от причины, в FreeBSD такая замена выполняется просто.
Вам предоставлен широкий выбор MTA. Начните с поиска в Коллекции Портов FreeBSD, где их немало. Конечно, вы можете использовать любой MTA по желанию, взятый откуда угодно, если только сможете запустить его под FreeBSD.
Начните с установки нового MTA. После установки у вас будет возможность решить, действительно ли он подходит вашем нуждам, а также настроить новое программное обеспечение перед тем, как заменить им sendmail. При установке новой программы убедитесь, что она не пытается перезаписать системные файлы, такие как /usr/bin/sendmail. Иначе ваша новая почтовая программа фактически начнет работать до того, как вы ее настроите.
Обратитесь к документации на выбранный MTA за информацией по его настройке.
Процедура, используемая для запуска sendmail, значительно изменилась между релизами 4.5-RELEASE, 4.6-RELEASE и последующими релизами. Поэтому процедура, используемая для его отключения, немного отличается.
Внимание: Если вы отключите сервис исходящей почты sendmail, необходимо заменить его альтернативной системой доставки почты. Если вы не сделаете этого, системные программы, такие как periodic(8), не смогут отправлять сообщения по электронной почте как обычно. Многие программы в вашей системе могут требовать наличия функционирующей sendmail-совместимой системы. Если приложения будут продолжать использовать программу sendmail для отправки почты после того, как вы её отключили, почта может попасть в неактивную очередь sendmail и никогда не будет доставлена.
Добавьте:
sendmail_enable="NO"
в /etc/rc.conf. Это отключит сервис входящей почты sendmail, но если /etc/mail/mailer.conf (см. ниже) не изменен, sendmail все еще будет использоваться для отправки почты.
Для полного отключения sendmail, включая сервис исходящей почты, используйте
sendmail_enable="NONE"
в /etc/rc.conf.
Если вы хотите отключить только сервис входящей почты sendmail, установите
sendmail_enable="NO"
в /etc/rc.conf. Тем не менее, если входящая почта отключена, локальная доставка все равно будет функционировать. Дополнительная информация по опциям запуска sendmail доступна на странице справочника rc.sendmail(8).
Для полного отключения 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).
Вы можете выбрать один из двух методов для запуска нового MTA при загрузке, опять же в зависимости от используемой версии FreeBSD.
Добавьте в каталог /usr/local/etc/rc.d/, скрипт с расширением .sh и с правами выполнения пользователем root. Скрипт должен принимать параметры start и stop. Во время запуска системы он будет запущен командой
/usr/local/etc/rc.d/supermailer.sh start
которая также может использоваться для запуска сервера вручную Во время завершения работы системы, системные скрипты используют параметр stop, выполнив команду
/usr/local/etc/rc.d/supermailer.sh stop
которая также может использоваться для остановки почтового сервера при работающей системе.
С более поздними версиями FreeBSD, вы можете использовать метод, описанный выше, или добавить строку
mta_start_script="filename"
в /etc/rc.conf, где filename это имя скрипта, который вы хотите выполнить при загрузке для запуска MTA.
Программа 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/.