Наши партнеры








Книги по Linux (с отзывами читателей)

Библиотека сайта rus-linux.net

На главную -> MyLDP -> Электронные книги по ОС Linux
Beyond Linux From Scratch. Version 2011-12-30
Назад 20. Почтовые серверы Вперед

Пакет Sendmail-8.14.4

Знакомимся с пакетом Sendmail

В пакете Sendmail находится почтовый транспортный агент (Mail Transport Agent - MTA).

Известно, что если вы используете исходные коды текущих пакетов, пакет правильно собирается и работает на платформе LFS-6.5. Дополнительную информацию смотрите в разделе "Используйте самые последние пакеты с исходным кодом".

Информация о пакете

Зависимости пакета Sendmail

Обязательные

Berkeley DB-5.2.36

Необязательные

OpenSSL-1.0.0e, OpenLDAP-2.4.23, TCP Wrappers-7.6, Cyrus SASL-2.1.23, Procmail-3.22, nph и GPL Ghostscript-9.04 (для создания документации в формате PDF).

Замечания для пользователей: http://wiki.linuxfromscratch.org/blfs/wiki/sendmail

Установка пакета Sendmail

Прежде, чем собирать пакет Sendmail, в роли пользователя root создайте необходимого пользователя, группу и директорий с помощью следующих команд:

groupadd -g 26 smmsp &&
useradd -c "Sendmail Daemon" -g smmsp -d /dev/null \
        -s /bin/false -u 26 smmsp &&
chmod -v 1777 /var/mail &&
install -v -m700 -d /var/spool/mqueue

Примечание: Информацию о том, как компоновать дополнительные пакеты, смотрите в файле sendmail/README в дереве исходных кодов. Используйте пример, приведенный ниже, в который в качестве отправной точки добавлена поддержка tcpwrappers, SASL, StartTLS (OpenSSL) и OpenLDA. Разумеется, вы можете изменить этот пример в соответствии с вашими конкретными потребностями.

cat >> devtools/Site/site.config.m4 << "EOF"
APPENDDEF(`confENVDEF',`-DSTARTTLS -DTCPWRAPPERS -DSASL -DLDAPMAP')
APPENDDEF(`confLIBS', `-lssl -lcrypto -lwrap -lsasl2 -lldap -llber')
APPENDDEF(`confINCDIRS', `-I/usr/include/sasl')
EOF

Установите пакет Sendmail с помощью следующих команд:

cat >> devtools/Site/site.config.m4 << "EOF"
define(`confMANGRP',`root')
define(`confMANOWN',`root')
define(`confSBINGRP',`root')
define(`confUBINGRP',`root')
define(`confUBINOWN',`root')
EOF
cd sendmail &&
sh Build &&
cd ../cf/cf &&
cp generic-linux.mc sendmail.mc &&
sh Build sendmail.cf

В этом пакете набор тестов отсутствует.

Теперь в роли пользователя root выполните:

install -v -d -m755 /etc/mail &&
sh Build install-cf &&

cd ../.. &&
sh Build install &&

install -v -m644 cf/cf/{submit,sendmail}.mc /etc/mail &&
cp -v -R cf/* /etc/mail &&

install -v -m755 -d /usr/share/doc/sendmail-8.14.4/{cf,sendmail} &&
install -v -m644 \
        CACerts FAQ KNOWNBUGS LICENSE PGPKEYS README RELEASE_NOTES \
        /usr/share/doc/sendmail-8.14.4 &&
install -v -m644 sendmail/{README,SECURITY,TRACEFLAGS,TUNING} \
        /usr/share/doc/sendmail-8.14.4/sendmail &&
install -v -m644 cf/README /usr/share/doc/sendmail-8.14.4/cf &&

for manpage in sendmail editmap mailstats makemap praliases smrsh
do
    install -v -m444 $manpage/$manpage.8 /usr/share/man/man8
done &&
install -v -m444 sendmail/aliases.5    /usr/share/man/man5 &&
install -v -m444 sendmail/mailq.1      /usr/share/man/man1 &&
install -v -m444 sendmail/newaliases.1 /usr/share/man/man1 &&
install -v -m444 vacation/vacation.1   /usr/share/man/man1

Установите конкретный вариант Sendmail, а также руководство по эксплуатации с помощью следующих команд

cd doc/op &&
sed -i 's/groff/GROFF_NO_SGR=1 groff/' Makefile &&
make op.txt op.pdf

Теперь в роли пользователя root выполните:

install -v -d -m755 /usr/share/doc/sendmail-8.14.4 &&
install -v -m644 op.ps op.txt op.pdf /usr/share/doc/sendmail-8.14.4 &&
cd ../..

Примечание: удалите op.pdf из команд make и install, если у вас нет установленного пакета Ghostscript.

Пояснение команд

cat > devtools/Site/site.config.m4 << "EOF": Эта команда изменяет некоторые настройки, задаваемые по умолчанию, и создает конфигурационный файл.

sh Build; sh Build sendmail.cf; sh Build install-cf; sh Build install: В Sendmail применяется скрипт сборки на базе макропроцессора m4, с помощью которого создаются разнообразные файлы Makefile. С помощью этих команд пакет собирается и устанавливается.

for manpage in...;do...;done; install ...: Страницы man, которые уже установлены и отформатированы, отображаются командой man в несколько искаженном виде. Данные команды заменят имеющиеся страницы на страницы, которые команда man сможет отображать правильно.

Конфигурирование пакета Sendmail

Конфигурационные файлы

/etc/mail/*

Подробнее о конфигурировании

В роли пользователя root создайте файлы /etc/mail/local-host-names и /etc/mail/aliases с помощью следующих команд:

echo $(hostname) > /etc/mail/local-host-names
cat > /etc/mail/aliases << "EOF"
postmaster: root
MAILER-DAEMON: root

EOF
newaliases -v

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

m4 m4/cf.m4 sendmail.mc > sendmail.cf

Полное описание файлов, которые требуется изменить, а также описание доступных параметров можно найти в файле /etc/mail/README.

Загрузочный скрипт

Чтобы автоматизировать запуск Sendmail при запуске системы, установите загрузочный скрипт /etc/rc.d/init.d/sendmail, который есть в пакете blfs-bootscripts-20111219.

make install-sendmail

Замечание

Параметр -qNm команды sendmail, где N - количество минут, указывает, с каким интервалом Sendmail будет обрабатывать очередь с почтой. По умолчанию в загрузочном скрипте используется настройка в 5 минут. Пользователи индивидуальных рабочих станций, возможно, захотят уменьшить это значение до 1 минуты; в больших системах, где объем обрабатываемой почты большой, это значение, возможно, лучше увеличить.

Описание пакета

Установленные программы: editmap, hoststat, mailstats, mailq, makemap, newaliases, praliases, purgestat, sendmail, smrsh и vacation

Установленные библиотеки: Нет

Установленные директории: /etc/mail, /usr/share/doc/sendmail-8.14.4, /var/spool/mqueue и /var/spool/clientmqueue

Краткое описание

editmap

запрашивает и редактирует файлы отображений Sendmail

hoststat

выдает статус хоста, на котором находится Sendmail

mailstats

отображает статистику Sendmail

mailq

выдает итоговую оценку исходящих почтовых сообщений, ожидающих доставку

makemap

создает файлы отображений Sendmail

newaliases

создает /etc/mail/aliases.db по содержимому /etc/mail/aliases

praliases

отображает текущие алиасы Sendmail

purgestat

заставляет Sendmail очистить (удалить) всю информацию, связанную с состоянием хоста

sendmail

почтовый транспортный агент Sendmail

smrsh

командная оболочка Sendmail с ограниченными возможностями

vacation

автоответчик для электронных писем

Перевод сделан с варианта оригинала, датированного 2010-03-15 19:41:38 +0000


Предыдущий раздел: Оглавление Следующий раздел:
Пакет Qpopper-4.0.9   Глава 21. Базы данных