Author Topic: sendmail+sasl+ssl  (Read 7652 times)

0 Members and 1 Guest are viewing this topic.

Offline Krueger

  • Full Member
  • ***
  • Posts: 195
  • Karma: +0/-0
    • http://www.zaonsv.ru
sendmail+sasl+ssl
« on: January 24, 2006, 20:55:51 »
пока собрал sendmail+sasl

в domain.mc добавил следующее

-------
TRUST_AUTH_MECH(`GSSAPI DIGEST-MD5 LOGIN PLAIN')dnl
define(`confAUTH_MECHANISMS', `GSSAPI DIGEST-MD5 LOGIN PLAIN')dnl
define(`confDEF_AUTH_INFO', `/etc/mail/auth-info')dnl
dnl FEATURE(`authinfo', `DATABASE_MAP_TYPE /etc/mail/authinfo')dnl
FEATURE(`no_default_msa')dnl turn off default entry for MSA
DAEMON_OPTIONS(`Port=587, Name=MSA, M=E')dnl
--------
дальше всякие make all; make install; make stop; make start
вот такое в результате получается:

%telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 domain ESMTP Sendmail 8.13.5/8.13.5; Tue, 24 Jan 2006 20:46:36 +0600 (NOVT)
ehlo localhost
250-domain Hello localhost.domain [127.0.0.1], pleased to meet you
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-8BITMIME
250-SIZE
250-DSN
250-ETRN
250-AUTH DIGEST-MD5 LOGIN PLAIN
250-DELIVERBY
250 HELP

затем добавил пользователя:
#saslpasswd2 krueger
проверил, что он есть:
#sasldblistusers2
krueger@domain: userPassword

а дальше не понимаю куда копать. Если в relay-domains стоит запись о том откуда принимаем почту, то отправляется почта без авторизации, если этой записи нету, то авторизация не работает.
>Relaying denied. Proper authentication required.
куда поглядеть?
ssl пока не пытался прикрутить, поэтому вопросов нету.

Offline demiurg

  • Hero Member
  • *****
  • Posts: 1014
  • Karma: +0/-0
    • http://larin.tomsk.ru
sendmail+sasl+ssl
« Reply #1 on: January 24, 2006, 23:24:31 »
Quote
пока собрал sendmail+sasl

куда поглядеть?
ssl пока не пытался прикрутить, поэтому вопросов нету.
[snapback]7048[/snapback]
Я когда-то вот по этой доке делал
http://sendmail.by.ru/documents/SMTPAuth.htm
работало.

Offline Krueger

  • Full Member
  • ***
  • Posts: 195
  • Karma: +0/-0
    • http://www.zaonsv.ru
sendmail+sasl+ssl
« Reply #2 on: January 25, 2006, 10:01:11 »
Quote
Я когда-то вот по этой доке делал
работало.
приблизительно так и сделано, с учётом того, что используется sasl2
и в /usr/local/lib/sasl2/Sendmail.conf метод авторизации стоит вот такой:
pwcheck_method: saslauthd

и ещё:
Quote
Теперь очень важно:
заходим в 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/')
вот этого не делал, сендмаил ставил из портов с поддержкой sasl.

такое ощущение, что или сендмаил не знает откуда брать базу данных или она не того формата..

куда прописать больший loglevel в сендмаиле(и какой именно), чтобы узнать больше?

Offline Krueger

  • Full Member
  • ***
  • Posts: 195
  • Karma: +0/-0
    • http://www.zaonsv.ru
sendmail+sasl+ssl
« Reply #3 on: January 25, 2006, 10:36:27 »
во.. узнал новую информацию, после того, как решил поглядеть messages.log

Jan 24 20:55:58 router saslpasswd2: setpass succeeded for krueger
Jan 24 20:55:58 router saslpasswd2: Couldn't update db

счас буду копать дальше..
накопал..
Quote
Убил полдня на то, чтобы разобраться с этой причиной. Результат нулевой. Проштудировал архивы http://asg.web.cmu.edu. Людей, обращающихся с этой причиной много. Решения нет. (вернее есть, но они больше похожи на танец с бубном. я поплясал немного - результат тот же.)
хм.. а у меня 4.10 стабле. повод для апдейта?
пока ещё покопаюсь.. дальше видно будет.
« Last Edit: January 25, 2006, 10:43:39 by Krueger »

Offline Nameless

  • Jr. Member
  • **
  • Posts: 67
  • Karma: +0/-0
    • http://
sendmail+sasl+ssl
« Reply #4 on: January 26, 2006, 16:53:46 »
Quote
пока собрал sendmail+sasl

в domain.mc добавил следующее

-------
TRUST_AUTH_MECH(`GSSAPI DIGEST-MD5 LOGIN PLAIN')dnl
define(`confAUTH_MECHANISMS', `GSSAPI DIGEST-MD5 LOGIN PLAIN')dnl
define(`confDEF_AUTH_INFO', `/etc/mail/auth-info')dnl
dnl FEATURE(`authinfo', `DATABASE_MAP_TYPE /etc/mail/authinfo')dnl
FEATURE(`no_default_msa')dnl turn off default entry for MSA
DAEMON_OPTIONS(`Port=587, Name=MSA, M=E')dnl
--------
дальше всякие make all; make install; make stop; make start
вот такое в результате получается:

%telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 domain ESMTP Sendmail 8.13.5/8.13.5; Tue, 24 Jan 2006 20:46:36 +0600 (NOVT)
ehlo localhost
250-domain Hello localhost.domain [127.0.0.1], pleased to meet you
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-8BITMIME
250-SIZE
250-DSN
250-ETRN
250-AUTH DIGEST-MD5 LOGIN PLAIN
250-DELIVERBY
250 HELP

затем добавил пользователя:
#saslpasswd2 krueger
проверил, что он есть:
#sasldblistusers2
krueger@domain: userPassword

а дальше не понимаю куда копать. Если в relay-domains стоит запись о том откуда принимаем почту, то отправляется почта без авторизации, если этой записи нету, то авторизация не работает.
>Relaying denied. Proper authentication required.
куда поглядеть?
ssl пока не пытался прикрутить, поэтому вопросов нету.
[snapback]7048[/snapback]

Родную документацию читать не пробовал?
http://www.freebsd.org/doc/en_US.ISO8859-1.../smtp-auth.html
Windows: where do you want to go today?
Linux: where do you want to go tomorrow?
BSD: are you guys coming or what?

Offline Krueger

  • Full Member
  • ***
  • Posts: 195
  • Karma: +0/-0
    • http://www.zaonsv.ru
sendmail+sasl+ssl
« Reply #5 on: January 27, 2006, 09:51:25 »
Quote
Родную документацию читать не пробовал?
http://www.freebsd.org/doc/en_US.ISO8859-1.../smtp-auth.html
[snapback]7085[/snapback]
вот эту:
http://www.freebsd.org/doc/en_US.ISO8859-1.../smtp-auth.html
читал..
по пунктам счас расскажу:
1. ставил cyrus-sasl2
2. файл содержал pwcheck_method: saslauthd и с этим, и с тем, что написано в доке не авторизует. в первом случае логин krueger@domain, во втором случае просто krueger пароль в первом случае тот, который создал командой saslpasswd2, во втором системный. (хотя пробовал разные варианты логин пароль)
3,4. ставил из портов sendmail-sasl
5. отредактировал. не понимаю строку
Code: [Select]
define(`confDEF_AUTH_INFO', `/etc/mail/auth-info')dnl6. делал make make install make stop make start и даже полный ребут сервера..

в /etc/rc.conf добавил строки
saslauthd_enable="YES"
sasl_saslauthd_flags="-a sasldb"
cyrus_pwcheck_enable="YES"

сендмаил работает, реагирует на тестовые команды, так как надо. говорит, что собран с поддержкой SASLv2. на EHLO реагирует доступными методами авторизации, но всё-равно не принимает логины пароли. ругается: "Proper
authentication required."
если я правильно понимаю, то проблема в sasl, именно он не хочет авторизовать:-(

Offline Nameless

  • Jr. Member
  • **
  • Posts: 67
  • Karma: +0/-0
    • http://
sendmail+sasl+ssl
« Reply #6 on: January 27, 2006, 10:05:10 »
Quote
вот эту:
http://www.freebsd.org/doc/en_US.ISO8859-1.../smtp-auth.html
читал..
по пунктам счас расскажу:
1. ставил cyrus-sasl2
2. файл содержал pwcheck_method: saslauthd и с этим, и с тем, что написано в доке не авторизует. в первом случае логин krueger@domain, во втором случае просто krueger пароль в первом случае тот, который создал командой saslpasswd2, во втором системный. (хотя пробовал разные варианты логин пароль)
3,4. ставил из портов sendmail-sasl
То есть ты пункты 1,2 сделал по доке, а заместо 3,4 ты поставил sendmail-sasl из портов?
Windows: where do you want to go today?
Linux: where do you want to go tomorrow?
BSD: are you guys coming or what?

Offline Egor

  • Sr. Member
  • ****
  • Posts: 251
  • Karma: +0/-0
sendmail+sasl+ssl
« Reply #7 on: January 27, 2006, 10:19:02 »
Quote
по пунктам счас расскажу:
1. ставил cyrus-sasl2
...
[snapback]7096[/snapback]
По умолчанию cyrus-sasl-2 компилируется без поддержки метода аутентификации LOGIN, из-за этого, например, почтовый клиент OE не сможет авторизироваться.
При конфигурации нужно указать --enable-login.

Offline Krueger

  • Full Member
  • ***
  • Posts: 195
  • Karma: +0/-0
    • http://www.zaonsv.ru
sendmail+sasl+ssl
« Reply #8 on: January 27, 2006, 11:40:35 »
Quote
По умолчанию cyrus-sasl-2 компилируется без поддержки метода аутентификации LOGIN, из-за этого, например, почтовый клиент OE не сможет авторизироваться.
При конфигурации нужно указать --enable-login.
[snapback]7099[/snapback]
Почтовый клиент becky2. поддерживает авторизацию CRAM-MD5, PLAIN, LOGIN.. не работает :-(

Offline Egor

  • Sr. Member
  • ****
  • Posts: 251
  • Karma: +0/-0
sendmail+sasl+ssl
« Reply #9 on: January 27, 2006, 18:37:31 »
Quote
по пунктам счас расскажу:
..
2. файл содержал pwcheck_method: saslauthd и с этим, и с тем, что написано в доке не авторизует. в первом случае логин krueger@domain, во втором случае просто krueger пароль в первом случае тот, который создал командой saslpasswd2, во втором системный. (хотя пробовал разные варианты логин пароль)

в /etc/rc.conf добавил строки
saslauthd_enable="YES"
sasl_saslauthd_flags="-a sasldb"
cyrus_pwcheck_enable="YES"
[snapback]7096[/snapback]
Если хочется использовать аутентификацию через sasldb, то рекомендуется использовать pwcheck_method: auxprop, а не saslauthd. Saslauthd при этом запускать не потребуется. Вот пример Sendmail.conf для использования с sasldb:
Code: [Select]
pwcheck_method: auxprop
auxprop_plugin: sasldb
mech_list: CRAM-MD5 LOGIN
« Last Edit: January 27, 2006, 18:42:32 by Egor »

Offline Krueger

  • Full Member
  • ***
  • Posts: 195
  • Karma: +0/-0
    • http://www.zaonsv.ru
sendmail+sasl+ssl
« Reply #10 on: January 28, 2006, 15:55:07 »
Quote
То есть ты пункты 1,2 сделал по доке, а заместо 3,4 ты поставил sendmail-sasl из портов?
[snapback]7098[/snapback]
ага. потому что стандартный дырявый.
ну и вместо sasl поставил sasl2

Offline Nameless

  • Jr. Member
  • **
  • Posts: 67
  • Karma: +0/-0
    • http://
sendmail+sasl+ssl
« Reply #11 on: January 28, 2006, 21:09:54 »
Quote
ага. потому что стандартный дырявый.
ну и вместо sasl поставил sasl2
[snapback]7139[/snapback]
Дыры можно заткнуть и в штатном, и не готовить компот из разных версий. Тем более что для 4.10 всё еще поддерживаются security fix'ы (http://freebsd.tusur.ru/releng/index.html). А почему так важно поставить sasl2, а не sasl?(я не в курсе их различий).
Windows: where do you want to go today?
Linux: where do you want to go tomorrow?
BSD: are you guys coming or what?

Offline Krueger

  • Full Member
  • ***
  • Posts: 195
  • Karma: +0/-0
    • http://www.zaonsv.ru
sendmail+sasl+ssl
« Reply #12 on: January 30, 2006, 10:37:15 »
Quote
Дыры можно заткнуть и в штатном, и не готовить компот из разных версий. Тем более что для 4.10 всё еще поддерживаются security fix'ы (http://freebsd.tusur.ru/releng/index.html). А почему так важно поставить sasl2, а не sasl?(я не в курсе их различий).
[snapback]7144[/snapback]
При установке шлимыла из портов автоматически ставится с поддержкой sasl2.
Счас наверное попробую поставить стандартный.. только бы ещё понять. как его залатать?

Offline Nameless

  • Jr. Member
  • **
  • Posts: 67
  • Karma: +0/-0
    • http://
sendmail+sasl+ssl
« Reply #13 on: January 30, 2006, 11:07:14 »
Quote
только бы ещё понять. как его залатать?
[snapback]7158[/snapback]
Читай в хэндбуке секцию "Использование CVSup", там всё расписано. В качестве сервера обновления используй freebsd.tusur.ru
Windows: where do you want to go today?
Linux: where do you want to go tomorrow?
BSD: are you guys coming or what?