Украина, одесса, кпи, 2010 |
Установка и конфигурирование sendmail
В этой лекции
- Установка sendmail
- Конфигурирование sendmail
- Примеры конфигурирования sendmail
В предыдущей лекции были детально рассмотрены программа sendmail и ее файл конфигурации. В этой лекции даются рекомендации, где получить и как установить программу sendmail на своем сервере. Рассматривается также макропроцессор GNU m4, который используется в программе sendmail для упрощения создания файла конфигурации. Попросту говоря, функции, включаемые администратором почтовой системы в файл конфигурации, реализуются в простых файлах макросов. Затем эти файлы макросов обрабатываются макропроцессором, и создается полноценный файл конфигурации.
Установка sendmail
За многие годы существования программы sendmail было разработано много ее различных версий. В настоящее время широко используется версия 8.9.3 (последняя версия 8.10.2 — Прим. пер.). Так как в программе sendmail появляются все новые и новые дополнения или исправления ошибок, целесообразно устанавливать самую последнюю версию sendmail. Версия sendmail 8.9.3 была разработана в основном для защиты от TCP-атак типа "отказ в обслуживании" (Denial of Service), против которых была беззащитна программа sendmail. После уточнения всех параметров файла конфигурации можно обновлять бинарные программы без его воссоздания. В этом разделе описывается установка программы sendmail из бинарных программных пакетов, входящих в поставку большинства версий ОС Linux, или из исходных кодов sendmail, полученных с Web-сервера sendmail, путем их компиляции.
Бинарные программные пакеты
Большинство версий ОС Linux поставляется с бинарными пакетами sendmail. В этих программных пакетах содержится скомпилированная программа sendmail и базовые файлы конфигурации, которые необходимы для работы sendmail с конкретной версией ОС Linux. К сожалению, последние версии sendmail в большинство версий ОС Linux не входят. Хотя, как правило, более старые версии sendmail лучше работают с небольшими почтовыми серверами. Если требуется подключение почтового сервера на базе ОС Linux в сеть Internet, то желательно получить новую версию sendmail. Это можно сделать на Web-сайте http://www.sendmail.org. Если же имеющаяся у вас ОС Linux поставляется с последней версией sendmail — прекрасно! Берите и пользуйтесь! Если нет, то можно получить последнюю версию, следуя инструкциям, приведенным ниже.
В большинстве версий ОС Linux, в которых используется механизм установки бинарных программных пакетов RPM (RedHat, Mandrake и Caldera), программный пакет sendmail разбит на три отдельных пакета. Так, в Mandrake Linux 6.0 используются sendmail-8.9.3-9mdk.i586.rpm, sendmail-cf-8.9.3-9mdk.i586.rpm и sendmail-doc-8.9.3-9mdk.i586.rpm. Эти файлы составляют программный пакет sendmail версии 8.9.3. Для просмотра файлов, содержащихся в каждом дистрибутивном пакете можно использовать утилиту RPM. На рис. 11.1 показан внешний вид утилиты kpackage для графической оболочки X Window, в которой отображается информация о пакете sendmail-8.9.3-9mdk.i586.rpm.
В листинге 11.1 представлены файлы, которые входят в состав пакета sendmail-8.9.3-9mdk.i586.rpm. В этом RPM-пакете содержатся основные бинарные файлы, сконфигурированные для работы в ОС Mandrake Linux.
1 /etc/aliases 2 /etc/aliases.db 3 /etc/mail 4 /etc/mail/deny 5 /etc/mail/deny.db 6 /etc/mail/ip_allow 7 /etc/mail/name_allow 8 /etc/mail/relay_allow 9 /etc/rc.d/init.d/sendmail 10 /etc/rc.d/rc0.d/K30sendmail 11 /etc/rc.d/rc1.d/K30sendmail 12 /etc/rc.d/rc2.d/S80sendmail 13 /etc/rc.d/rc3.d/S80sendmail 14 /etc/rc.d/rc4.d/S80sendmail 15 /etc/rc.d/rc5.d/S80sendmail 16 /etc/rc.d/rc6.d/K30sendmail 17 /etc/sendmail.cf 18 /etc/sendniail.cw 19 /etc/smrsh 20 /etc/sysconfig/sendmail 21 /usr/bin/hoststat 22 /usr/bin/mailq 23 /usr/bin/makemap 24 /usr/bin/newaliases 25 /usr/bin/purgestat 26 /usr/bin/rmail 27 /usr/lib/sendmail 28 /usr/lib/sendmail.hf 29 /usr/man/man1/mailq.1.bz2 30 /usr/man/man1/newaliases.1.bz2 31 /usr/man/man5/aliases.5.bz2 32 /usr/man/man8/mailstats.8.bz2 33 /usr/man/man8/makemap.8.bz2 34 /usr/man/man8/praliases.8.bz2 35 /usr/man/man8/rmail.8.bz2 36 /usr/man/man8/sendmail.8.bz2 37 /usr/sbin/mailstats 38 /usr/sbin/makemap 39 /usr/sbin/praliases 40 /usr/sbin/sendmail 41 /usr/sbin/smrsh 42 /var/log/sendmail.st 43 /var/spool/mqueueЛистинг 11.1. Файлы из пакета sendmail-8.9.3-9mdk.i586.rpm
В строках 21–26 листинга 11.1 указывается, что выполняемые модули sendmail находятся в Mandrake Linux в каталоге /usr/bin. Сама же программа sendmail находится в каталоге /usr/sbin. Строки 9–16 отображают сценарии sendmail, которые применяются для автоматического запуска и останова sendmail на различных уровнях init. В строках 29–36 вы видите файлы, в которых хранятся справочные сведения о работе sendmail. В строке 43 для хранения почтовых сообщений, ожидающих доставки, создается каталог /var/spool/mqueue. Как видите, в этот пакет включены все файлы, необходимые для конфигурирования, поддержки работоспособности и справки о sendmail.
Для установки RPM-пакета sendmail можно использовать специальную программу инсталляции kpackage в сеансе X Window. Также можно использовать обычную утилиту rpm из командной строки. Для этого следует выполнить (с правами пользователя root ):
rpm -Uvh sendmail-8.9.3-9mdk.i586.rpm.
Второй файл дистрибутива — sendmail-cf-8.9.3-9mdk.i586.rpm — включает в себя файлы, необходимые для реконструкции файла конфигурации с помощью макропроцессора GNU m4 (см. раздел "Конфигурирование sendmail"). После его установки необходимые файлы конфигурации sendmail помещаются в каталог /usr/lib/sendmail-cf. Этот пакет можно также установить, с помощью команды rpm -Uvh, как показано выше.
И, наконец, третий файл — это sendmail-doc-8.9.3-9mdk.i586.rpm, который включает в себя всю документацию на программный продукт sendmail. Все файлы с документацией о sendmail помещаются в каталог /usr/doc/sendmail. Туда входят документы "Руководство по установке и работе с sendmail" и "Введение в sendmail" в формате PostScript. Все эти файлы также можно установить с помощью команды rpm -Uvh, как показано выше.