The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

SMTP AUTH в sendmail 8.10/8.11 (mail sendmail auth sasl ssl)


<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>
Ключевые слова: mail, sendmail, auth, sasl, ssl,  (найти похожие документы)
From: Teresa Kalitowska Subject: SMTP AUTH в sendmail 8.10/8.11 SMTP AUTH в sendmail 8.10/8.11 Sendmail 8.10/8.11 поддерживают SMTP AUTH как это описано в RFC 2554, которая базируется на SASL. Постараюсь выложить тут всё необходимое для реализации этой функции в Sendmail. Для начала стоит задуматься для чего вам это нужно. Потому как не все е-майловые клиенты в полной мере поддерживают SMTP AUTH. Вот по этому адресу можно посмотреть табличку совместимости для разных клиентов : http://www.sendmail.org/~ca/email/mel/SASL_ClientRef.html Сначала нам потребуются библиотеки Cyrus SASL. Берем последние сорц-коды : ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/ На сегодняшний день это версия 1.5.24 tar -xzf cyrus-sasl-1.5.24.tar.gz cd cyrus-sasl-1.5.24/ ./configure --prefix=/usr make make install #под правами рута конечно Теперь гляньте есть ли библиотеки в каталогах /usr/lib и инклуды в /usr/include. Посмотрите, чтоб файлы принадлежали руту... Теперь надо сделать конфигурационный файл для Сенмайла, который будет использовать SASL каждый раз когда пойдет проводить аутентификацию для Sendmail. Делаем файл /usr/lib/sasl/Sendmail.conf и пишем во внутрь: pwcheck_method: sasldb Об этом больше описано в cyrus-sasl-1.5.24/doc/sysadmin.html , а нам пока хватит этого. Теперь нужно организовать базу данных для всех ваших юзеров, которые могут отсылать почту. Для этого есть две программы, которые должны были встать в /usr/sbin : saslpasswd -a sendmail newuser password:<passwdorf for newuser> Эту процедуру проводим для всех юзеров которые у вас есть. Теперь есть вторая программа : sasldblistusers которая вам покажет все введённые записи в базу. В результате вы увидите, что-то в этом духе : user: newuser realm: yourhost mech: CRAM-MD5 user: newuser realm: yourhost mech: DIGEST-MD5 user: newuser realm: yourhost mech: PLAIN Что значит что вы можете делать аутентификацию под юзером newuser трёмя методами : CRAM-MD5, DIGEST-MD5, PLAIN. Последний метод очень не надёжен и советую от него воздержаться. Но вот Нетскейп 4.76 другого способа не знает. Теперь перейдем к самому Sendmail. Сначала посмотрим возможно в вашем дистрибутиве уже скомпилировали поддержку SASL ? sendmail -d0.1 -bv root | grep SASL Если в результате такой команды вы увидите знакомое слово SASL то можете смело переходить к следующему пункту, а если нет - вам придется заново собрать Sendmail. Собираем Sendmail: скачиваем нужную, или последнюю версию сендмайл(www.sendmail.org) tar -xzf senmail-x.xx.xx.tar.gz cd sendmail-x.xx.xx/ Теперь очень важно: заходим в sendmail-x.xx.x/devtools/Site и делаем там файл site.config.m4 в котором пишем : APPENDDEF(`confENVDEF', `-DSASL') APPENDDEF(`conf_sendmail_LIBS', `-lsasl') APPENDDEF(`confLIBDIRS', `-L/usr/lib/') APPENDDEF(`confINCDIRS', `-I/usr/include/') возвращаемся в каталог sendmail-x.xx.xx/ и запускаем скрипт ./Build ./Build install Теперь проверим что у нас получилось: sendmail -d0.1 -bv root | grep SASL Если всё работает идем дальше. Сконфигурируем Sendmail. впишем в свой файл sendmail.mc : TRUST_AUTH_MECH(`GSSAPI DIGEST-MD5 CRAM-MD5 PLAIN')dnl define(`confAUTH_MECHANISMS', `GSSAPI DIGEST-MD5 CRAM-MD5 PLAIN')dnl define(`confDEF_AUTH_INFO', `/etc/mail/auth/auth-info')dnl FEATURE(`no_default_msa')dnl turn off default entry for MSA DAEMON_OPTIONS(`Port=25, Name=MSA, M=E')dnl Советую выключить из списка PLAIN метод авторизации ! Теперь : m4 senmail.mc>sendmail.cf Копируем файл туда где Sendmail берёт конфиг файл : cp sendmail.cf /etc/mail/sendmail.cf Проверяем насколько готов sendmail: telnet localhost 25 Trying 127.0.0.1... Connected to localhost Escape character is '^]'. 220 local.sendmail.ORG ESMTP Sendmail 8.10.0/8.10.0; Thu, 9 Sep 1999 10:48:44 -0700 (PDT) ehlo localhost 250-local.sendmail.ORG Hello localhost [127.0.0.1], pleased to meet you 250-ENHANCEDSTATUSCODES 250-DSN 250-AUTH DIGEST-MD5 CRAM-MD5 PLAIN 250 HELP quit Теперь можете поиграть с вписаниями в хидеры е-майла информации о аутентификации. В /etc/sendmail.cf поищите: ######################### # Format of headers # ######################### Впишите к примеру такое : $.$?{auth_type}(authenticated with ${auth_type} from ${auth_author}$.) Тогда в письмах, в хидерах появится такое : (authenticated with CRAM-MD5 from newuser) В емайл - клиентах не забудьте указать: login : newuser@yourhost password: passwowdfornewuser (c) by Teresa Kalitowska'2001

<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>

 Добавить комментарий
Имя:
E-Mail:
Заголовок:
Текст:




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру