Руководство FreeBSD
Пред. | Глава 22. Электронная почта | След.

# 22.10. SMTP аутентификация

Написал James Gorham.

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

1. Установите `security/cyrus-sasl` из портов. Вы можете найти этот порт в `security/cyrus-sasl`. В пакете `security/cyrus-sasl` есть множество параметров компиляции, и для используемого здесь метода убедитесь, что выбран параметр pwcheck.

2. После установки `security/cyrus-sasl`, отредактируйте `/usr/local/lib/sasl/Sendmail.conf` (или создайте его если он не существует) и добавьте следующую строку:

       pwcheck_method: passwd

   Этот метод включит аутентификацию sendmail через базу данных `passwd` FreeBSD. Это позволяет избежать проблем, связанных с созданием нового набора имен пользователей и паролей для каждого пользователя, которому необходима SMTP аутентификация, пароль для входа в систему и для отправки почты будет одним и тем же.

3. Теперь отредактируйте `/etc/make.conf` и добавьте следующие строки:

       SENDMAIL_CFLAGS=-I/usr/local/include/sasl1 -DSASL
       SENDMAIL_LDFLAGS=-L/usr/local/lib
       SENDMAIL_LDADD=-lsasl

   Эти параметры необходимы sendmail для подключения `cyrus-sasl` во время компиляции. Убедитесь, что `cyrus-sasl` был установлен до перекомпиляции sendmail.

4. Перекомпилируйте sendmail, выполнив следующие команды:

       # cd /usr/src/usr.sbin/sendmail
       # make cleandir
       # make obj
       # make
       # make install

   Компиляция sendmail должна пройти без проблем, если `/usr/src` не был сильно изменен и доступны необходимые разделяемые библиотеки.

5. После компилирования и переустановки sendmail, отредактируйте файл `/etc/mail/freebsd.mc` (или тот файл, который используется в качестве `.mc`; многие администраторы используют в качестве имени этого файла вывод hostname(1) для обеспечения уникальности). Добавьте к нему следующие строки:

       dnl set SASL options
       TRUST_AUTH_MECH(`GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN')dnl
       define(`confAUTH_MECHANISMS', `GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN')dnl
       define(`confDEF_AUTH_INFO', `/etc/mail/auth-info')dnl

   Эти параметры настраивают различные методы, доступные sendmail для аутентификации пользователей. Если вы хотите использовать вместо pwcheck другой метод, обратитесь к прилагаемой документации.

6. Наконец, запустите make(1) в каталоге `/etc/mail`. Из файла `.mc` будет создан файл `.cf`, называющийся `freebsd.cf` (или с тем именем, которое было использовано для файла `.mc`). Затем используйте команду `make install restart`, которая скопирует файл в `sendmail.cf`, и правильно перезапустит sendmail. Дополнительная информация об этом процессе находится в `/etc/mail/Makefile`.

Если все шаги пройдены успешно, введите информацию для аутентификации в настройки почтового клиента и отправьте тестовое сообщение. Для определения причин возможных ошибок установите параметр sendmail LogLevel в 13 и просмотрите `/var/log/maillog`.

Для включения сервиса после каждой загрузки системы вам может потребоваться добавление в `/etc/rc.conf` следующих строк:

    sasl_pwcheck_enable="YES"
    sasl_pwcheck_program="/usr/local/sbin/pwcheck"

Эти строки инициализируют SMTP_AUTH при загрузке системы.

За дальнейшей информацией обратитесь к странице sendmail, посвященной SMTP аутентификации.

Пред. | Начало | След.
Использование почты с коммутируемым соединением | Уровень выше | Почтовые программы пользователей

Этот, и другие документы, могут быть скачаны с ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

По вопросам связанными с FreeBSD, прочитайте документацию прежде чем писать в <questions@FreeBSD.org>.
По вопросам связанным с этой документацией, пишите <doc@FreeBSD.org>.
По вопросам связанным с русским переводом документации, пишите в рассылку <frdp@FreeBSD.org.ua>.
Информация по подписке на эту рассылку находится на сайте проекта перевода.