Обсуждение статьи тематического каталога: Настройка postfix с возможностью шифрования и защиты от вирусов и спама (mail postfix freebsd imap cyrus sasl ssl virus spam tls mysql)Ссылка на текст статьи: http://www.opennet.me/base/net/postfix_tls.txt.html
Вот бы еще иметь возможность скачать файл со скриптами по приведенной в статье ссылке, было бы замечательно.
http://www.citforum.ru/operating_systems/freebsd/freebsd4_st... Глянь
Отличный туториал, но я реализовал это с одним небольшим изменением: дабы не плодить демонов (saslauthd) я воспользовался встроенной в cyrus-sasl2 поддержкой MySQL. У такого подхода есть как большой плюс, так и большой минус. Плюс - появилась возможность использования smtp-авторизации CRAM-MD5 и DIGEST-MD5. Минус - пароли в базе хранятся открытым текстом (правда sasl2 иначе и не умеет). Интересно ваше мнение по поводу такого решения.
У меня что-то не получается авторизация pop3:
$ telnet localhost 110
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
+OK Hello there.
user test@mydomain.com
+OK Password required.
pass password1
-ERR Login failed.В табличке users все правильно - четырежды перепроверил.
Всё сделал по инструкции...Подскажите пожалуйста список мест, в которых могут быть грабли.....
Извините за вопрос из разряда "подземный стук", но я ума не приложу, с чего начать...
а попробовать так:
telnet localhost 110
...та та та...
ELHO localchol
Система FreeBSD 4.9-stable, всё ставилось из свежеобновленных(на момент написания сего мессаджа) портов.Обнаружены следующие грабли:
1. pam_mysql не понимает @. В упор. Вместо собаки(и всех символов до следующей точки) мы получаем пустоту. Адрес me@raven.elk.ru при запросе превращается в me.elk.ru
Что делать: не юзать собаку... если домен один - то это не проблема. Просто делаем юзверей без домена вообще. Если больше... - логины должны либо не пересекаться, либо вместо собаки ставим точку...
2. sasl2 + sasl2-authdaemon не пашут на 5.1 трабла в rc.subr(?) вроде бы. Не разбирался.
Что делать: юзать 4.х
3. Uid и Gid у постфикса 1001:1001 (дефолт, пашем под рутом, юзверей руками не заводили). Даже если при установке постфикса на вопрос: добавить ли юзера postfix в mail сказать yes - он всё равно останется в группе postfix.
Что делать: GID - 1001(или какой у вас там - см. в /etc/passwd). И, ессесна,
chown postfix:postfix /var/mail/virtual
4. В /usr/local/etc/courier-imap/authmysqlrc недопустимы пробелы после значений. Также UID и GID - в кавычки('1001').
Что делать: и так ясно :)
5. Пасс на БД c "_" не проходит.
Что делать: ставьте пасс без "_".Но pop3 не пашет всё равно... Пока не пашет...
Продолжаем.
6. порт couriem-imap по дефолту билдится без мускула.(v2.2.1)
Что делать: билдите с мускулом
>Система FreeBSD 4.9-stable, всё ставилось из свежеобновленных(на момент написания сего мессаджа) портов.
>
>
>Обнаружены следующие грабли:
>1. pam_mysql не понимает @. В упор. Вместо собаки(и всех символов до
>следующей точки) мы получаем пустоту. Адрес me@raven.elk.ru при запросе превращается в
>me.elk.ru
>Что делать: не юзать собаку... если домен один - то это не
>проблема. Просто делаем юзверей без домена вообще. Если больше... - логины
>должны либо не пересекаться, либо вместо собаки ставим точку...Гон, почему у меня работает?
>2. sasl2 + sasl2-authdaemon не пашут на 5.1 трабла в rc.subr(?) вроде
>бы. Не разбирался.
>Что делать: юзать 4.хТо же самое - работает всё.
>3. Uid и Gid у постфикса 1001:1001 (дефолт, пашем под рутом, юзверей
>руками не заводили). Даже если при установке постфикса на вопрос: добавить
>ли юзера postfix в mail сказать yes - он всё равно
>останется в группе postfix.
>Что делать: GID - 1001(или какой у вас там - см. в
>/etc/passwd). И, ессесна,
>chown postfix:postfix /var/mail/virtual
>4. В /usr/local/etc/courier-imap/authmysqlrc недопустимы пробелы после значений. Также UID и GID
>- в кавычки('1001').
>Что делать: и так ясно :)
>5. Пасс на БД c "_" не проходит.
>Что делать: ставьте пасс без "_".
>
>Но pop3 не пашет всё равно... Пока не пашет...Вобщем - убей всё и построй всё с самого начала очень внимательно читая это howto.
Уже... и не раз...Какие версии портов? У меня:
courier-map - 2.2.1
postfix - 2.0.16
pam_mysql - 0.5
cyrus-sasl2 - 2.1.17
curys-sasl2-saslauthd - 2.1.171. pam_mysql выводит queries к бд. там белым по черному: select me.elk.ru
2. На 5.1 saslauthd не пускается при загрузке. Не находит переменных local_rc_var и еще двух - если надо - могу глянуть.Я это how-to уже почти выучил.... И еще пару других... Уже 3 дня бьюсь...
Херня обнаружена. Если сначала воткнуть mysql НЕ 3.23 - то пыпец. Пам воткнется гуево. Можно, в теории, воткнуть 3.23(или не втыкать вообще?) потом пам потом 40 поверх. Уря.
MYSQL_CRYPT_PWFIELD - name of the field containing the crypt-ed password (either MYSQL_CRYPT_PWFIELD or MYSQL_CLEAR_PWFIELD is required). NOTE: this password must be crypt-ed using the operating system's crypt function, NOT MySQL's crypt function. MySQL's crypt() function is non-standard and is not generally compatible with the operating system's crypt function.Это из мана по courier-imap 2.2.1. Вопрос, на какой версии это пашет у тебя?
Итог: всё пашет.
Что поменял:
1. убрал криптовку... вообще должно и с ней работать ибо в мане по мускулу пишут, что юзается системная функция для криптовки. Как и в courier-imap. C clear пассами всё ок.
2. убрал в кнфиге authmysql ссылку на сокет мускульный. Его нет там, где он должен быть... Ну и Х с ним. Может это я туплю, но разбираться лениво...
3. Не юзал authdaemon а прямо из pop3 сервака вызывал mysql.
Действительно что бы зароботало нужно выфрубить криптование
и далее немного подправить smtpd_recipient_restrictions
с той что описана в мануале на
smtpd_recipient_restrictions =permit_mynetworks, check_recipient_access hash:/usr/local/etc/postfix/access, reject_maps_rbl, reject_unknown_sender_domain, reject_unauth_pipelining, reject_unknown_recipient_domain, reject_non_fqdn_sender, reject_non_fqdn_recipient, reject_non_fqdn_hostname, permit_sasl_authenticated, check_relay_domainsи далее как создаем файл access как в старом добром монстре сендмыйле
cyberspammer.com 550 We don't accept mail from spammers
FREE.STEALTH.MAILER@ 550 We don't accept mail from spammers
another.source.of.spam REJECT
#okay.cyberspammer.com OK
#128.32 RELAY
127.0.0.1 RELAY
192.168.0 RELAYи далее все просто makemap hash /usr/local/etc/postfix/accsess.db < /usr/local/etc/postfix/accsess
У меня
courier-imap-2.2.1,1
postfix-2.0.16,1
pam_mysql-0.5
cyrus-sasl-2.1.17_1
cyrus-sasl-saslauthd-2.1.17_1
>Действительно что бы зароботало нужно выфрубить криптованиеГоспода, объясните мне, почему у меня все работает out of box? С криптованием и т.д. Что я не так делаю?
(mysql - 3.23)
Сегодня ночью попробовал включить криптование в pam.conf
действительно работает, но начинает авторизовать юзеров через раз. Но это скорее всего из за нагрузки на майловый сервер по топу загрузка меньше 92 процентов не опускается. Машина слабовата.
А я вот проблему с авторизацие только так поборол. Если посомтреть на лгг MySQL, (Запустим мускул с командой --log) то можно увидеть, что SASL делает запрос типа SELECT email, crypt, "", ""... Если попробовать эту же команду в Мускуле, то он вернет NULL (!!!), потому что запрос должен быть таким: SELECT email, crypt, "" AS a, "" AS b...Решилось все просто, надо в конфиге authmysqlrc в тех параметрах в конфиге, где мы указываем готовые значения, например uid и gid писать так '1002' AS a...
Посмотрев примерный файл конфига мы увидем еще несколько параметров, таких как MYSQL_AUXOPTIONS_FILED и еще пару, их тоже надо забить как "" AS options.
saslauthd-2.1.18_1 / postfix-2.0.19 / courier-imap-3.0.3
Бился три дня, заработало все только так :) может кому поможет...
>>Система FreeBSD 4.9-stable, всё ставилось из свежеобновленных(на момент написания сего мессаджа) портов.
>>
>>
>>Обнаружены следующие грабли:
>>1. pam_mysql не понимает @. В упор. Вместо собаки(и всех символов до
>>следующей точки) мы получаем пустоту. Адрес me@raven.elk.ru при запросе превращается в
>>me.elk.ru
>>Что делать: не юзать собаку... если домен один - то это не
>>проблема. Просто делаем юзверей без домена вообще. Если больше... - логины
>>должны либо не пересекаться, либо вместо собаки ставим точку...
>
>Гон, почему у меня работает?
>
>>2. sasl2 + sasl2-authdaemon не пашут на 5.1 трабла в rc.subr(?) вроде
>>бы. Не разбирался.
>>Что делать: юзать 4.х
>
>То же самое - работает всё.
>
>>3. Uid и Gid у постфикса 1001:1001 (дефолт, пашем под рутом, юзверей
>>руками не заводили). Даже если при установке постфикса на вопрос: добавить
>>ли юзера postfix в mail сказать yes - он всё равно
>>останется в группе postfix.
>>Что делать: GID - 1001(или какой у вас там - см. в
>>/etc/passwd). И, ессесна,
>>chown postfix:postfix /var/mail/virtual
>>4. В /usr/local/etc/courier-imap/authmysqlrc недопустимы пробелы после значений. Также UID и GID
>>- в кавычки('1001').
>>Что делать: и так ясно :)
>>5. Пасс на БД c "_" не проходит.
>>Что делать: ставьте пасс без "_".
>>
>>Но pop3 не пашет всё равно... Пока не пашет...
>
>Вобщем - убей всё и построй всё с самого начала очень внимательно
>читая это howto.
Все просто: "@" = "\@"
>
>Обнаружены следующие грабли:
>1. pam_mysql не понимает @. В упор. Вместо собаки(и всех символов до
>следующей точки) мы получаем пустоту. Адрес me@raven.elk.ru при запросе превращается в
>me.elk.ru
>Что делать: не юзать собаку... если домен один - то это не
>проблема. Просто делаем юзверей без домена вообще. Если больше... - логиныэээ.... man saslauthd на предмет ключика -r
И это не "не понимает", а как раз очень даже понимает и специально это делает.
Вот:
http://www.viperstrike.com/~lopaka/sysadmin/cyrus-sasl-mysql.../
проверено с 2.1.17. Жалко что только с PLAIN и LOGIN проходит. А saslauthd - на свалку, а pam-mysql и того дальше.
>Отличный туториал, но я реализовал это с одним небольшим изменением: дабы не
>плодить демонов (saslauthd) я воспользовался встроенной в cyrus-sasl2 поддержкой MySQL. У
>такого подхода есть как большой плюс, так и большой минус. Плюс
>- появилась возможность использования smtp-авторизации CRAM-MD5 и DIGEST-MD5. Минус - пароли
>в базе хранятся открытым текстом (правда sasl2 иначе и не умеет).
>Интересно ваше мнение по поводу такого решения.Умеет, с патчем.
аналогичная трабла и у меня :(
У меня та же трабла. Первое что попробовал - залезть в мускул с кредами mailer:mailer_password. Фиквам. Меняю на mailer:mailer - всё ок. Поменял пассы - трабла всё еще тут, но одни грабли найдены.
P.S.: так как делалось все в первый раз пассы и все настройки строго по ману. Система FreeBSD 5.1.
Это взято отсюда:http://td.wipline.ru/modules.php?op=modload&name=News&file=a...
А как прицепить к Postfix'u таблицу forward???
Описание таблицы в статье есть, а сам форвард в конфиге Постфикса не прописан!!!
ВСё пашет и с криптованием и без...
настраивал все по етому мануалу(непахало) тока потом куда то ручки засунул и сё работает
вроде что то в pam правил
вопрос 1 как сделать логин без @
вопрос 2 не пашут алиасы ну никуя=( не пересылает на указаный майл а бонсируееться обратно
Вот я уже на протяжении нескольких недель пытаюсь всё это сделать но результат один и тотже, я не только HOWTO выучил но и форум, помогите разобраться в чём проблема, плиз.
/etc/pam.conf
-----
smtp auth sufficient pam_mysql.so user=mail passwd=mailpass db=mailuser
table=users usercolumn=login passwdcolumn=password crypt=1 where=expired=0
smtp account sufficient pam_mysql.so user=mailerd passwd=mailerdpass db=mailuser
table=users usercolumn=login passwdcolumn=password crypt=1 where=expired=0
#ostalnoe vse is howto
yzhe ne znayu chto i delat:-(((
Ура у меня всё получилось.
Но есть одна неувязочка.
Письма получаю на всех машинах, а вот отправлять могу только с сервака. Уж не знаю где я и что сделал в main.cf.
>>> 554 Relay access denied!
Это мне все время лог пишет.
2 Umka
mynetworks 127.0.0.0 закоментируй
и по эксперементируй c mydestination и mynetwork_styleмля и кто мот подскажет чего алиасы не пашуть?=(
FILIN
Спасиба у меня уже всё получилось и работает, теперь хочу настроить imap and SquirrelMail...А по поводу алиасов, трудно сказать у меня с ними проблем не было, может ты где-то что-то упустил, у меня ча екзамены, а после них попробую тебе помочь.
хз вроде всё ок делал...
мот у народа будут предположения?
Хорошая статья, но вот есть конечно пробелы.
но вот складывается мнение, что courier-imap не хочет работать с mysql. Хотя может, что-то делаю не правельно.telnet localhost 110
Trying ::1...
Connected to localhost.
Escape character is '^]'.
+OK Hello there.
user test@raven.elk.ru
+OK Password required.
pass password1:)
-ERR Login failed.и так он выдает, в людом случае, с @ и без нее. Пароли также попробовал поставит криптованые и без криптования.
С postfixом, все вроде нормально, базу mysql видит. Система FBSD5.0.
Toze samoje i u menia..:((
FBSD 5.2
>Toze samoje i u menia..:((
>FBSD 5.2
Кто нить вопрос этот решил или нет?!
ASP Linux 7/9 тоже самое, где править подскажите!!!
При логине телнетом гооврит что неправильный пароль и логин!
Пипл кто поборол эту проблему раскажите!!! Думаю всем будет интересно!!! заранее спасибо!
>При логине телнетом гооврит что неправильный пароль и логин!
>Пипл кто поборол эту проблему раскажите!!! Думаю всем будет интересно!!! заранее спасибо!
>Я решил у себя. Грабли были в authmysqlrc. MYSQL_SOCKET должен указывать на действительно правильное место, у меня это оказалось /tmp/mysql.sock
Либо закоментарить MYSQL_SOCKET вовсе, иначе игнорируются MYSQL_SERVER и MYSQL_PORT
>Хорошая статья, но вот есть конечно пробелы.
>но вот складывается мнение, что courier-imap не хочет работать с mysql. Хотя
>может, что-то делаю не правельно.
>
>telnet localhost 110
>Trying ::1...
>Connected to localhost.
>Escape character is '^]'.
>+OK Hello there.
>user test@raven.elk.ru
>+OK Password required.
>pass password1:)
>-ERR Login failed.
>
>и так он выдает, в людом случае, с @ и без нее.
>Пароли также попробовал поставит криптованые и без криптования.
>
>С postfixом, все вроде нормально, базу mysql видит. Система FBSD5.0.
Проверь таблицу users на наличие полей uid и gid а то они
указаны в authmysqlrc
Дык подскажите плз, как же все-таки при виртуальном способе ящиков перенаправлять почту.Раньше, когда она лежала в системных ящиках, помогал файлик .forward.
А сейчас???И еще, очень хочеться научится дублировать всю почту на ящик, но и исключать определенную.
Подскажите!!!! ПЛЗ!!!!
Сделал все по статье. Но почтовый сервер работает в пределе прописанного в БД домена. При попытке послать почту на домен из интернета, например, wife@mail.ru серыер отвечает Relay access deny.
Не встречались ли вы с такими проблемами?
Тем, у кого встречалось:>telnet localhost 110
>Trying ::1...
>Connected to localhost.
>Escape character is '^]'.
>+OK Hello there.
>user test@raven.elk.ru
>+OK Password required.
>pass password1:)
>-ERR Login failed.Нужно использовать либо MYSQL_SOCKET (и указать путь к существующему сокету), тогда не нужно (!) использовать MYSQL_SERVER/MYSQL_PORT, либо всё наоборот: не использовать MYSQL_SOCKET, а использовать MYSQL_SERVER/MYSQL_PORT. При этом, MYSQL_SOCKET можно использовать только если MySQL и courier-imap живут на одной машине.
Я всё себе поправил и эта бага исчезла, и возможны криптованные и некриптованные пароли. coirier-imap 2.2.1, MySQL 4.0
>>telnet localhost 110
>>Trying ::1...
>>Connected to localhost.
>>Escape character is '^]'.
>>+OK Hello there.
>>user test@raven.elk.ru
>>+OK Password required.
>>pass password1:)
>>-ERR Login failed.у меня проблема решилась когда я в файле /usr/lib/courier-imap/etc/authmysqlrc закоментировал строку mysql_crypt_pwfield
тоже самое было с некотрыми логинами (я когда тестировал создавал их подряд с одинаковыми паролями). тоесть пользователь test и test1 логинится а test2 нет. хотя создавал я их одинаково. скорее всего надо просто их удалить и создать заново.
>тоже самое было с некотрыми логинами (я когда тестировал создавал их подряд
>с одинаковыми паролями). тоесть пользователь test и test1 логинится а test2
>нет. хотя создавал я их одинаково. скорее всего надо просто их
>удалить и создать заново.Нашел причину этого. - хоть логин и был но только в мускуле, а физически под него не было домашней директории (maildir).
Перед проверкой pop3 необходимо убедится что существующие логины имеют домашние ящики. Их необходимо или создать вручную или лучше всего отослать письмо с этого логина самому себе. Ящик создастся автоматически. Иначе pop3 сервер будет сообщать ошибку авторизации.
В результате манипулирований пальцами получил следующий результат:
- домен "raven.elk.ru" работает;
- создал новые домены. Создал в них пользователей, но... - "Соединение с POP3 сервером прошло удачно, сервер не поддерживает авторизации NTLM/MSN" (на "raven" работает только эта вторизация);
- ежедневно получаю следующее: "fatal: pipe_comand: execvp /cyrus/bin/deliver: No such file or directory". Что это и зачем оно???
У кого-ндь есть догадки на эту тему?
Короче, у меня почти всё заработало...
Что сделано:
- в мускуле абсолютно все пароли без "_"
- pop3 заработал тока после исправлений в main.cf, а именно:
alias_maps = hash:/etc/mail/aliases заменён на
alias_maps = hash:/usr/local/etc/postfix/aliases
alias_database = hash:/etc/mail/aliases заменён на
alias_database = hash:/usr/local/etc/postfix/aliasesНе работает SMTP-авторизация:
# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.raven.elk.ru.
Escape character is '^]'.
220 localhost.roven.elk.ru ESMTP Postfix
ehlo aol.com
250-raven.elk.ru
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-AUTH LOGIN PLAIN # этих двух строк нет!!!
250-AUTH=LOGIN PLAIN #
250-XVERP
250 8BITMIME
AUTH PLAIN bWVAcmF2ZW4uZWxrLnJ1AG1lQHJhdmVuLmVsay5ydQBwYXNzd29yZDop
538 Encryption required for requested authentication mechanism
>Не работает SMTP-авторизация:
># telnet localhost 25
>Trying 127.0.0.1...
>Connected to localhost.raven.elk.ru.
>Escape character is '^]'.
>220 localhost.roven.elk.ru ESMTP Postfix
>ehlo aol.com
>250-raven.elk.ru
>250-PIPELINING
>250-SIZE 10240000
>250-VRFY
>250-ETRN
>250-STARTTLS
> 250-AUTH LOGIN PLAIN # этих
>двух строк нет!!!
> 250-AUTH=LOGIN PLAIN #
>250-XVERP
>250 8BITMIME
>AUTH PLAIN bWVAcmF2ZW4uZWxrLnJ1AG1lQHJhdmVuLmVsay5ydQBwYXNzd29yZDop
>538 Encryption required for requested authentication mechanismВероятно ты включил
smtpd_tls_auth_only = yes
отключи, появиться должно. Эт сделано для того чтобы авторизация была только в режиме tls
И это "внятноое" конфигурирование.
После Qmail выглядит динозавром.
Я все собрал и все пашет!!! Так что читать внимательней и вперед. ))))
Единственное, если хозяин этой статьи откликнится, то прошу поделится файликом, который надо положить в папку перла - примерный путь*(/usr/local/lib/perl5/site_perl/5.005/i386-freebsd/Lingua/RU/Antimat.pm)А то не хочет без этой штуки ворочить мыло...
Спасибо за статью.
Прикрутил кстати потом еще openwebmail , так теперь просто радость для шефа)))
Замечены ещё возможные грабли:
courier не авторизует нормально если:
MYSQL_SERVER= localhost
почему-то authdaemon пытается лезть к мускулю через сокет.
А так как у меня курьер с постфиксом зачрутены, то я поимел большую грыжу, пытаясь понять суть проблемы.
Никак не могу добиться чтобы pop3 нормально работал. Все делал как в статье, учел рекомендации на форуме, но те же грабли: после ввода пароля - Login Failed. Но если пытаюсь зайти зарегистрированным в системе пользователем, то все проходит, а юзеры из мускула нет. В чем прикол?
>Я все собрал и все пашет!!! Так что читать внимательней и вперед.
>))))
>Единственное, если хозяин этой статьи откликнится, то прошу поделится файликом, который надо
>положить в папку перла - примерный путь*(/usr/local/lib/perl5/site_perl/5.005/i386-freebsd/Lingua/RU/Antimat.pm)
>
>А то не хочет без этой штуки ворочить мыло...cpan -i Lingua::RU::Antimat
>cpan -i Lingua::RU::AntimatСпасибо, уже давно разобрался. Год поди уже прошел ...
Авторизация по POP3 работает прекрасно.
Пароли в MySQL криптовые.
SMTP не хочет авторизоваться по той же базе :(FreeBSD 5.2.1
/usr/local/lib/sasl2/smptd.conf
pwcheck_method: saslauthd/etc/pam.d/smtp
auth sufficient pam_mysql.so user=mailer passwd=mailer db=mail table=users usercolumn=login passwdcolumn=password crypt=1
account sufficient pam_mysql.so user=mailer passwd=mailer db=mail table=users usercolumn=login passwdcolumn=password crypt=1
# telnet localhost 25
220 imp.uriit.ru ESMTP Postfix
ehlo myhost
250-myhost
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-AUTH LOGIN PLAIN
250-AUTH=LOGIN PLAIN
250-XVERP
250 8BITMIMEПри попытках SMTP авторизации имею в /var/log/maillog
Apr 15 20:45:32 imp postfix/smtpd[688]: warning: SASL authentication failure: no user in db
Apr 15 20:45:32 imp postfix/smtpd[688]: warning: SASL authentication failure: no user in db
Apr 15 20:45:32 imp postfix/smtpd[688]: warning: SASL authentication failure: Password verification failed
Apr 15 20:45:32 imp postfix/smtpd[688]: warning: acme.uriit.ru[192.168.10.77]: SASL PLAIN authentication failedКто-нибудь подскажет в чём дело?
Более того, собрал cyrus-sasl-2.1.18 с поддержкой MySQL
/usr/ports/security/cyrus-sasl2
make -DWITH_MYSQL -DWITHOUT_OTP -DWITHOUT_CRAM -DWITHOUT_DIGEST -DWITHOUT_NTLM -DWITHOUT_GSSAPI -DWITH_ALWAYSTRUEДалее по документации к SASL'у пытаюсь напрямую лезть в SQL без PAM'а, кстати, я действительно не понимаю зачем городить этот слоёный пирог с PAM'ом, если SASL сам MySQL поддерживает
/usr/local/lib/sasl2/smptd.conf
pwcheck_method: auxprop
auxprop_plugin: sql
sql_engine: mysql
sql_user: mailer
sql_passwd: mailer
sql_hostnames: 127.0.0.1
sql_database: mail
sql_select: select password from users where login='%u@%r'Результат: SASL'у аболютно по барабану на то, что у меня в /usr/local/lib/sasl2/smptd.conf, он всё равно пытается лезть к своей sasldb. Если в этой sasldb завести пользователя командой
saslpasswd2 -c username, то авторизация начинает работать!
Ну как заставить SASL обращаться к MySQL, а не к saslb?!Я пробовал даже
pwcheck_method: alwaystrue
Всё равно к sasldb пытается лезть.
В чём прикол?!
Может, библиотеки и конфигурация должны лежать в /usr/lib/sasl2?# ln -s /usr/local/lib/sasl2 /usr/lib/sasl2
>Результат: SASL'у аболютно по барабану на то, что у меня в /usr/local/lib/sasl2/smptd.conf,
>он всё равно пытается лезть к своей sasldb. Если в этой
>sasldb завести пользователя командой
>saslpasswd2 -c username, то авторизация начинает работать!
>Ну как заставить SASL обращаться к MySQL, а не к saslb?!
>
>Я пробовал даже
>pwcheck_method: alwaystrue
>Всё равно к sasldb пытается лезть.
>В чём прикол?!
Есть трабла!!
Отсылаю на мыло и приходит обратно:<support@ten.net.ru>: Command died with status 2:
"/usr/local/raven/mail/antikav.pl". Command output: Can't locate
MIME/Parser.pm in @INC (@INC contains:
/usr/local/lib/perl5/site_perl/5.6.1/mach
/usr/local/lib/perl5/site_perl/5.6.1
/usr/local/lib/perl5/site_perl/5.005/i386-freebsd
/usr/local/lib/perl5/site_perl/5.005 /usr/local/lib/perl5/site_perl
/usr/local/lib/perl5/5.6.1/BSDPAN /usr/local/lib/perl5/5.6.1/mach
/usr/local/lib/perl5/5.6.1 .) at /usr/local/raven/mail/antikav.pl line 105.
BEGIN failed--compilation aborted at /usr/local/raven/mail/antikav.pl line
105.Нахожу я этот Parser.pm (около 4 штук)
и копирую в требуемую папку допустим в /usr/local/lib/perl5/site_perl/5.6.1/mach/MIME/Parser.pm
причём пробовал копировать все которые были по одному...
ПОсле чего отправляю мыло и получаю:<support@ten.net.ru>: Command died with status 35:
"/usr/local/raven/mail/antikav.pl". Command output: Can't locate object
method "new" via package "MIME::Parser" (perhaps you forgot to load
"MIME::Parser"?) at /usr/local/raven/mail/antikav.pl line 258.В чём дело то???
Более ламерского в изни не видел, чего стоит report в spamassassin
У меня все установилось, но есть проблема:
при проверке работы pop3 протокола
появляется ошибка:
-ERR Maildir: No such file or directoryПри это если я отправляю письмо на этот ящик - все хорошо, письмо сохранятеся...
>Обсуждение статьи тематического каталога: Настройка postfix с возможностью шифрования и защиты от
>вирусов и спама (mail postfix freebsd imap cyrus sasl ssl virus
>spam tls mysql)
>
>Ссылка на текст статьи: http://www.opennet.me/base/net/postfix_tls.txt.htmlДля тех у кого проблема с smtp-авторизацией:
SASLAUTHD при авторизации логина типа login@domain, при конфигурировании по-уомлчанию, обрезает часть @domain, есттественно при наличие единственного домена, можно обойти это забив в базу лишь login, а что делать если доменов более одного?
В /usr/local/etc/rc.d/*saslauthd.sh поправить строку
saslauthd_flags=${saslauthd_flags:-"-a pam"}
на
saslauthd_flags=${saslauthd_flags:-"-a pam -r"}
-r - недокументированный ключ - при этом в логин при обращении к базе запихиваетья не только то что было до @, а вся строка вида login@domain!
:)
Зачем?
в /usr/local/lib/sas2/smtpd.conf
можно восстанавливать отпаршеный логин.
sql_select: SELECT password FROM mailbox WHERE username = LOWER('%u@%r')
трюк в конструкции %u@%r Как следствие логин user@domain восстанавливается.
Попробуйте кодировать login\@domain ;)
все работает нормально, только вот такая байда постаянно в логи сыпется
Sep 8 15:24:00 mail saslauthd[276]: sqlLog called.
Sep 8 15:24:00 mail saslauthd[276]: pam_mysql: error: sqllog set but logtable not set
Sep 8 15:24:00 mail saslauthd[276]: pam_mysql: error: sqllog set but logmsgcolumn not set
Sep 8 15:24:00 mail saslauthd[276]: pam_mysql: error: sqllog set but logusercolumn not set
Sep 8 15:24:00 mail saslauthd[276]: pam_mysql: error: sqllog set but loghostcolumn not set
Sep 8 15:24:00 mail saslauthd[276]: pam_mysql: error: sqllog set but logtimecolumn not set
Sep 8 15:24:00 mail saslauthd[276]: returning 0 .
Sep 8 15:24:00 mail saslauthd[276]: returning 0.
Sep 8 15:24:00 mail saslauthd[276]: pam_mysql: acct_mgmt called but not implemented. Dont panic though
:)
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 localhost mail destroyer (MDaemon.v2.7.SP4.R)
ehlo localhost
250-nlink.ru
250-PIPELINING
250-SIZE 20480000
250-VRFY
250-ETRN
250-STARTTLS
250-XVERP
250 8BITMIMEНастроено по доке, а вот AUTH где? Пользователи в mysql (пароли не шифрованные). POP3 и IMAP работают, SMTP - хоть тресни.
>Trying 127.0.0.1...
>Connected to localhost.
>Escape character is '^]'.
>220 localhost mail destroyer (MDaemon.v2.7.SP4.R)
>ehlo localhost
>250-nlink.ru
>250-PIPELINING
>250-SIZE 20480000
>250-VRFY
>250-ETRN
>250-STARTTLS
>250-XVERP
>250 8BITMIME
>
>Настроено по доке, а вот AUTH где? Пользователи в mysql (пароли не
>шифрованные). POP3 и IMAP работают, SMTP - хоть тресни.
AUTH PLAIN - надо писать самому, а потом подставлять шифрованную строку. Вот тогда он тебе чево-нибудь скажет.
>250-STARTTLS - строка показывает что tls работает
>>Trying 127.0.0.1...
>>Connected to localhost.
>>Escape character is '^]'.
>>220 localhost mail destroyer (MDaemon.v2.7.SP4.R)
>>ehlo localhost
>>250-nlink.ru
>>250-PIPELINING
>>250-SIZE 20480000
>>250-VRFY
>>250-ETRN
>>250-STARTTLS
>>250-XVERP
>>250 8BITMIME
>>
>>Настроено по доке, а вот AUTH где? Пользователи в mysql (пароли не
>>шифрованные). POP3 и IMAP работают, SMTP - хоть тресни.
>
>
>AUTH PLAIN - надо писать самому, а потом подставлять шифрованную строку. Вот
>тогда он тебе чево-нибудь скажет.
>>250-STARTTLS - строка показывает что tls работаетВ конфиге main.cf прописано "smtpd_tls_auth_only = yes", что означает, что авторизация будет работать только при использовании STARTTLS. Закомментируй эту строчку и авторизация будет работать всегда и появятся эти 2 строчки =)))
>В конфиге main.cf прописано "smtpd_tls_auth_only = yes", что означает, что авторизация будет
>работать только при использовании STARTTLS. Закомментируй эту строчку и авторизация будет
>работать всегда и появятся эти 2 строчки =)))
Спасибо огромное! Теперь всё работает. Есть телепаты в этом форуме. Передавай спасибо своим граблям =)))
Чтобы не было этих логов:
> Sep 8 15:24:00 mail saslauthd[276]: pam_mysql: error: sqllog set but logtable not set
> Sep 8 15:24:00 mail saslauthd[276]: pam_mysql: error: sqllog set but logmsgcolumn not set
> Sep 8 15:24:00 mail saslauthd[276]: pam_mysql: error: sqllog set but logusercolumn not set
> Sep 8 15:24:00 mail saslauthd[276]: pam_mysql: error: sqllog set but loghostcolumn not set
> Sep 8 15:24:00 mail saslauthd[276]: pam_mysql: error: sqllog set but logtimecolumn not set
Необходимо в pam.conf добавить sqllog=0 для того, чтобы pam_mysql не писал логи. Например:
<Demon_Name> auth required pam_mysql.so <other options...> sqllog=0
я использую pam_mysql
и другую структуру таблиц не как в мануале. т.е юзера равен елк ру у меня нет!AUTH PLAIN bWVAcmF2ZW4uZWxrLnJ1AG1lQHJhdmVuLmVsay5ydQBwYXNzd29yZDop
235 Authentication successful!!
auth.log
SELECT pwd FROM users WHERE name='me@raven.elk.ru' AND (active=1)
pam_mysql: select returned more than one result
returning 9 after db_checkpasswd.тогда как в таблице всего одна запись и явно не с этим именем.
что за баг (хак)?
У меня работает почти все, сейчас на стадии завершения (все посылается, все принимается, не работают антивирус и спамассассин).
Прошу заметить, у меня работают и локальные пользователи (без занесения их дупликатов в MySQL базу) и виртуальные.
Вот решения некоторых проблем, с которыми я столкнулся:
1) если maildir не закончить /, постфикс будет использовать стандартный способ хранения почты (в одном файле), поэтому почта будет доставляться нормально, а courier-imap не сможет ее принять. Варианты проблемы:
- почта не принимается по pop3 (ругается, что не может сменить папку на "cur", потому что такой нет)
- почта не отсылается по smtp (ругается, что файл в котором сохраняется почта - директория)
Решение: для виртуальных пользователей не забывайте заканчивать maildir на /, для локальных немного сложнее:
/usr/local/etc/postfix/main.cf:
home_mailbox = mailbox/
/usr/local/etc/courier-imap/pop3d:
MAILDIRPATH=mailbox/
/usr/local/etc/courier-imap/imapd (кому надо):
MAILDIRPATH=mailbox/
Если вместо папки файл уже создан, придется его удалить :((
2) Общая проблема локальных пользователей (не находятся в базе MySQL).
Решение:
- использовать разные хостнеймы для локальных и виртуальных пользователей, занести хостнеймы в таблицу transport
- сделать алиасы для локальных пользователей типа root@raven.elk.ru -> root@localhost и занести localhost.elk.ru, local в transport
- сделать дупликаты локальных пользователей в таблице users (проблема: пароли придется менять и для шелл-аккаунта и для почты)
- поиграться с добавлением mysql:/usr/local/etc/postfix/sql/users.cf к локальным, а не виртуальным юзерам (не стал заморачиваться, хотя это может оказаться самым действенным методом - может кто так сделал?)
3) POP3/IMAP авторизация не работает
Решение:
/usr/local/etc/courier-imap/authdaemonrc:
authmodulelist="authmysql authpam"
С этим непонятно - сам смутно представляю, почему это работает, но работает :)
4) Не работают перл-скрипты, предоставленные автором (во-первых, ссылки на них можно отрыть с сайта raVen - raven.elk.ru - там ссылка в новостях на этот мануал - на нем ссылки работают).
Решение:
смотрите, что пишут скрипты (запустите их сначала из консоли сами, пока они не будут говорить что-нибудь вроде
usage ./kav.pl <host> <mail_from> <rcpt_to>
докачивайте модули для перла. Два из них я взял из портов, один (Lingua::RU::Antimat, который нужен для raVen::text) я стянул с CPAN (http://search.cpan.org/~ilyas/Lingua-RU-Antimat-1.00/), сами raVen модули находятся внутри архива, положить всю папку raVen можно в /usr/local/lib/perl5/5.8.5 (зависит от версии, которая установлена)
Вот вроде и все, что вспомнилось сейчас.
Нерешеные проблемы: посылаю с левого мыла тестовый вирус, который сам kavscanner находит, в базе данных antivirus=1, письмо проходит невредимое. В логах пишется, что все рилеится нормально. Единственное, что поменял - это номера портов (вместо 10025-10027 сделал 1001-1003). Какие-нибудь догадки есть? Логов antikav.pl не пишет :((((
Спам фильтер точно сказать не могу, пашет или нет - пока что пробовал слать спам собственного изготовления, поэтому не уверен, достаточно ли в нем "спама" или нет.
Вот так вот - на любые вопросы постараюсь ответить.
Проблема: почта приходит в Maildir пользователей, но при попытке забрать её по pop3 ругается на ненайденный Maildir. где грабли?
Мне кажется что файлы uids.cf и gids.cf не нужны.
можно сделать по другому:
вместо опций
virtual_uid_maps = mysql:/usr/local/etc/postfix/sql/uids.cf
virtual_gid_maps = mysql:/usr/local/etc/postfix/sql/gids.cfнаписать
virtual_uid_maps = static:5000
virtual_gid_maps = static:5001где 5000,5001 - uid и gid соответственно
Помогите пожалуйста....
у меня выскакивет сообщение о невозможности прочтение базы!
пологаю что не так юзера создал =\
покажите плиз sql на создание юзера.... плиз...
Сначало, попробуйте присоединисться к базе при помощи MySQL клиента с этой машины ('man mysql'). И посмотрите на что он ругается.Example SQL script:
CREATE DATABASE pam_mysql;
USE pam_mysql;
CREATE TABLE Authentication (
AUserName VARCHAR(100)
,APassword VARCHAR(100)
,AExpiryDate DATETIME
) TYPE=InnoDB;Example pam.conf:
<deamon> auth required pam_mysql.so user=root host=XXX.XXX.XXX.XXX db=pam_mysql table=authentication usercolumn=AUserName passwdcolumn=APassword sqllog=0
<deamon> account required pam_mysql.so user=root host=XXX.XXX.XXX.XXX db=pam_mysql table=authentication usercolumn=AUserName passwdcolumn=APassword sqllog=0
Вопрос такой.
Дошел до пункта проверки smtp
всегда пишет ошибка авторизации
На окне самого сервера выскакивает сообщение
new saslauthd[32288] unable to dlopen(/usr/lib/pam_mysql.so)
new saslauthd: [dlerror: Cannot open "/usr/lib/pam_mysql.so"]
adding faulty module:/usr/lib/pam_mysql.soЧто я только не делал. И мускля 3 версии попробовал.
Как с этим быть?
>Вопрос такой.
>Дошел до пункта проверки smtp
>всегда пишет ошибка авторизации
>На окне самого сервера выскакивает сообщение
>new saslauthd[32288] unable to dlopen(/usr/lib/pam_mysql.so)
>new saslauthd: [dlerror: Cannot open "/usr/lib/pam_mysql.so"]
>adding faulty module:/usr/lib/pam_mysql.so
>
>Что я только не делал. И мускля 3 версии попробовал.
>Как с этим быть?проверить наличие "/usr/lib/pam_mysql.so" и если его нет, сделать так чтоб он появился.
почитай тут http://info-linux.ru/article/103 и посмотри в конфиге как автор аккуратно обошел эту проблему
ктонить знает где можно взять описание на русском языке для настройки openwebmail для работы с mysql?
>>ктонить знает где можно взять описание на русском языке для настройки openwebmail для работы с mysql?
а смысл ?
чем белкомейл плох ?
Как однозначно протестить работает SMTP авторизация или нет
клиент принимает почту через ssl по порту 995 запускается процесс pop3d -ssl а вот отправить почту может только обычнам способоми вот еще что
при попытке отослать письмо telnetом
после команды data и ввода тела письма все замирает и стоит*************************************************************
-bash-2.05b# telnet localhost 25
Trying ::1...
telnet: connect to address ::1: Connection refused
Trying 127.0.0.1...
Connected to localhost.vda.ru.
Escape character is '^]'.
220 srv.vda.ru ESMTP Postfix (2.0.16)
mail from: a@a.ru
250 Ok
rcpt to: support@srv.vda.ru
250 Ok
data
354 End data with <CR><LF>.<CR><LF>
test mesa
-все здесь останавливается и стоит********************************************************
лог такой
******************************************************Jun 2 14:16:04 srv postfix/smtpd[19159]: connect from localhost.vda.ru[127.0.0.1]
Jun 2 14:16:16 srv postfix/smtpd[19159]: 590184C05: client=localhost.vda.ru[127.0.0.1]
Jun 2 14:18:21 srv postfix/smtpd[19159]: lost connection after DATA from localhost.vda.ru[127.0.0.1]
Jun 2 14:18:21 srv postfix/cleanup[19160]: 590184C05: message-id=<20050602101616.590184C05@srv.vda.ru>
Jun 2 14:18:21 srv postfix/smtpd[19159]: disconnect from localhost.vda.ru[127.0.0.1]
Думаю что все енто между собой связанно но не могу понять как и где чо смотреть
ВЫРУЧИТЕ ДОБРЫ МОЛОДЦЫ И РАЗМЕРЫ МОЕЙ БЛАГОДРНОСТИ НЕ БУДУТ ИМЕТЬ ГРАНИЦ В ПРЕДЕЛАХ РАЗУМНОГО
>Как однозначно протестить работает SMTP авторизация или нет
>клиент принимает почту через ssl по порту 995 запускается процесс pop3d -ssl
>а вот отправить почту может только обычнам способомдля имени своего пользователя и пароля получить кодированную строку и скормить ему вместе с AUTH PLAIN (если плейн конечно). строку получить как:
printf 'myuser@mydomain.com\0myuser@mydomain.com\0mypassword' | mmencode
настроил все по статье
но при попытке
#telnet localhost 110валится
Trying ::1...
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
-ERR pop3login requires exactly two arguments.
Connection closed by foreign host.Кто-нить подскажет какая гайка недокручена?
>настроил все по статье
>но при попытке
>#telnet localhost 110
>
>валится
>Trying ::1...
>Trying 127.0.0.1...
>Connected to localhost.
>Escape character is '^]'.
>-ERR pop3login requires exactly two arguments.
>Connection closed by foreign host.
>
>Кто-нить подскажет какая гайка недокручена?в /usr/local/etc/rc.d/pop3d.sh явно объяви MAILDIRPATH=/var/mail/virtual/
>[оверквотинг удален]
>>Trying ::1...
>>Trying 127.0.0.1...
>>Connected to localhost.
>>Escape character is '^]'.
>>-ERR pop3login requires exactly two arguments.
>>Connection closed by foreign host.
>>
>>Кто-нить подскажет какая гайка недокручена?
>
>в /usr/local/etc/rc.d/pop3d.sh явно объяви MAILDIRPATH=/var/mail/virtual/у меня такая же проблема, объявил мэйлдир, но проблема осталась, в чем может быть трабла??
настроил все по статье, но
> telnet localhost 110
Trying ::1...
Connected to localhost.plastek.spb.ru.
Escape character is '^]'.
+OK Hello there.
user test1@test.ru
+OK Password required.
pass password
-ERR Maildir: Permission denied
Connection closed by foreign host.
права на католог заданы по мануалу, катагог существует, права rwxrwx--- postfix.mail.
Отсылка на SMTP работает нормально. Но авторизация по POP3 не проходит.
При соединении телнетом пишет следующее:
+OK Hello there.
user babay@babay.org
+OK Password required.
pass babay
-ERR Temporary problem, please try again later
Connection to host lost.
В логах выдаёт:
pop3d: authdaemon: s_connect() failed: No such file or directory
pop3d: LOGIN FAILED, user=babay@ping.org.ua, ip=[::ffff:10.100.27.28]
pop3d: authentication error: No such file or directoryСитсема FreeBSD 5.4
Установленные пакеты: postfix-2.1.5_1, courier-authlib-base-0.57, courier-authlib-mysql-0.57, courier-imap-4.0.5,1, cyrus-sasl-2.1.21, cyrus-sasl-saslauthd-2.1.21, pam_mysql-0.6.0, mysql-server-4.1.13В чём грабля?
@BABAY, 20-Сен-05 21:41у тебя проблем с authdaemonrc /так думаю/
папробуй редактироват /usr/local/etc/authlib/authdaemonrc
и постав сюда DEBUG_LOGIN=2
загрузи с начале "/usr/local/etc/rc.d/courier-authdaemond.sh restart "
после ето попробуй с твоево клиента читат почту
смотри на лог /var/log/maillog
---ето copy/pasted из проблемнии лог -----
Oct 3 13:15:48 pns authdaemond: stopping authdaemond children
Oct 3 13:15:48 pns authdaemond: modules="(none)", daemons=5
---end copy/pasted из проблемнии лог -----а вот ето ок... почта работает
Oct 3 14:00:43 pns authdaemond: stopping authdaemond children
Oct 3 14:00:43 pns authdaemond: modules="authmysql", daemons=5
Oct 3 14:00:43 pns authdaemond: Installing libauthmysql
Oct 3 14:00:43 pns authdaemond: Installation complete: authmysql
Oct 3 14:00:46 pns pop3d-ssl: LOGIN, user=user@example.org ip=[::ffff:xxx.xxx.xxx.xxx]/ xxx.xxx.xxx.xxx ip твоего компютра/
c этим уже все в порядке, разобрался, теперь новая грабля, телнетом заходит, почту видит, а когда клиентом пытаешься получить, пишет писем на сервере 1, получено 1, во входящих 0, в логах все чисто, письмо из папки new перелетает в папку cur, и тишина... вот с этим до сих пор бьюсь, почему бат не может получить почту?
А что было то? Я уже несколько дней с этим парюсь, весь инет уже перерыл вроде сделал authdaemon стартует:authdaemond: modules="authmysql", daemons=5
authdaemond: Installing libauthmysql
authdaemond: Installation complete: authmysqlно при попытке забрать почту, в логах:
Connection, ip=[::ffff:192.168.0.12]
authdaemon: s_connect() failed: No such file or directory
LOGIN FAILED, user=slyab@rez.ru, ip=[::ffff:192.168.0.12]
authentication error: No such file or directory
Я уже не знаю в чем дело..... Помогите люди знающие....
Делал по статье http://www.opennet.me/base/net/postfix_tls.txt.html[07.10.2005 10:23:17] >> mail# telnet localhost 25
Trying ::1...
telnet: connect to address ::1: Connection refused
Trying 127.0.0.1...
Connected to localhost.gkm.su.
Escape character is '^]'.
220 mail.firma.ru ESMTP Postfix
ehlo aol.com
250-mail.firma.ru
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-AUTH NTLM LOGIN PLAIN GSSAPI DIGEST-MD5 CRAM-MD5
250 8BITMIME
#вроде работает... но строчки типа:
#AUTH PLAIN bWVAcmF2ZW4uZWxrLnJ1AG1lQHJhdmVuLmVsay5ydQBwYXNzd29yZDop
#235 Authentication successful
не выдаёт
В чём может быть грабля?
AUTH PLAIN набираешь сам ручками, bWVAcmF2ZW4uZWxrLnJ1AG1lQHJhdmVuLmVsay5ydQBwYXNzd29yZDop вводишь тоже, получив командой perl -MMIME::Base64 -e 'print encode_base64("test@domain\0test@domain\0password");', только после этого он тебе может написать #235 Authentication successful
теперь новая грабля, телнетом заходит, почту видит, а когда клиентом пытаешься получить, пишет писем на сервере 1, получено 1, во входящих 0, в логах все чисто, письмо из папки new перелетает в папку cur, и тишина... вот с этим до сих пор бьюсь, почему бат не может получить почту?
Такая проблема:
Authentication successful выдаётся в любом случае не зависимо от того правильный ли ключ или нет как поправить?
У меня была такая же проблема решена заменой sufficient на required
в /etc/pam.confsmtp auth required pam_mysql.so user=mailer passwd=mailer_password db=mail table=users usercolumn=login passwdcolumn=password crypt=1 where=expired=0
smtp account required pam_mysql.so user=mailer passwd=mailer_password db=mail table=users usercolumn=login passwdcolumn=password crypt=1 where=expired=0
Все делаю, как написано в данном руководстве (с учетом замечаний форума).
telnet localhost 110
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
+OK Hello there.
user me@raven.elk.ru
+OK Password required.
pass password:)
-ERR Temporary problem, please try again later
Connection closed by foreign host./var/log/etc/maillog
Mar 9 14:46:12 pop3d: LOGIN FAILED, user=me@raven.elk.ru, ip=[127.0.0.1]
Mar 9 14:46:12 pop3d: authentication error: Input/output error
> Все делаю, как написано в данном руководстве (с учетом замечаний форума).
> telnet localhost 110
> Trying 127.0.0.1...
> Connected to localhost.
> Escape character is '^]'.
> +OK Hello there.
> user me@raven.elk.ru
> +OK Password required.
> pass password:)
> -ERR Temporary problem, please try again later
> Connection closed by foreign host.
> /var/log/etc/maillog
> Mar 9 14:46:12 pop3d: LOGIN FAILED, user=me@raven.elk.ru, ip=[127.0.0.1]
> Mar 9 14:46:12 pop3d: authentication error: Input/output errorSorry! Вопрос снят. Ранее все ставилось под FreeBSD 6.0, при этом MySQL ставился из tar архива. Переставил все под FreeBSD 5.3 (весь софт из портов), и все получилось.
>> Все делаю, как написано в данном руководстве (с учетом замечаний форума).
>> telnet localhost 110
>> Trying 127.0.0.1...
>> Connected to localhost.
>> Escape character is '^]'.
>> +OK Hello there.
>> user me@raven.elk.ru
>> +OK Password required.
>> pass password:)
>> -ERR Temporary problem, please try again later
>> Connection closed by foreign host.
>> /var/log/etc/maillog
>> Mar 9 14:46:12 pop3d: LOGIN FAILED, user=me@raven.elk.ru, ip=[127.0.0.1]
>> Mar 9 14:46:12 pop3d: authentication error: Input/output error
>
>Sorry! Вопрос снят. Ранее все ставилось под FreeBSD 6.0, при этом MySQL
>ставился из tar архива. Переставил все под FreeBSD 5.3 (весь софт
>из портов), и все получилось.Я тоже встретился с такой поблемой. Оказалось все очень просто я не добавил
courier_authdaemond_enable="YES" в /etc/rc.conf
>>> Все делаю, как написано в данном руководстве (с учетом замечаний форума).
>>> telnet localhost 110
>>> Trying 127.0.0.1...
>>> Connected to localhost.
>>> Escape character is '^]'.
>>> +OK Hello there.
>>> user me@raven.elk.ru
>>> +OK Password required.
>>> pass password:)
>>> -ERR Temporary problem, please try again later
>>> Connection closed by foreign host.
>>> /var/log/etc/maillog
>>> Mar 9 14:46:12 pop3d: LOGIN FAILED, user=me@raven.elk.ru, ip=[127.0.0.1]
>>> Mar 9 14:46:12 pop3d: authentication error: Input/output error
>>
>>Sorry! Вопрос снят. Ранее все ставилось под FreeBSD 6.0, при этом MySQL
>>ставился из tar архива. Переставил все под FreeBSD 5.3 (весь софт
>>из портов), и все получилось.
>
>Я тоже встретился с такой поблемой. Оказалось все очень просто я не
>добавил
>courier_authdaemond_enable="YES" в /etc/rc.conf
Народ помогите плиз, парюсь 3 день ну не пашет pop
в логах только
Dec 10 03:08:26 maindomain pop3d: LOGIN FAILED, method=PLAIN, ip=[172.16.6.126]
Dec 10 03:08:31 maindomain pop3d: LOGIN FAILED, method=LOGIN, ip=[172.16.6.126]
Dec 10 03:08:36 maindomain pop3d: LOGIN FAILED, user=neo, ip=[172.16.6.126]перечитал все, нечего не помагает
Умоляю помогите
Здравствуйте уважаемый ALL!
Если кто-нибудь ещё посещает данную ветку, не откажите в помощи (сами мы не местные :))!Пытаюсь настроить предложенную здесь систему, и как-то не получается, возможно я что-то просто не понимаю, но тем не менее.
Порядок установки: поставлено до момента "пункт 5. настройка POP3 сервера". Ранее устанавливалось всё полностью, но в какой-то момент отказалось работать, из-за чего принял решение переустановить всё (3 раза переустанавливал "с самого начала очень внимательно читая это howto"... :) ) проверяя работоспособность на каждом этапе.
Итак. Хреновая ситуация такая:
----------------------------------------------------------
ОС: FreeBSD 6.2Установленные пакеты:
mysql-serever-5.0.27
cyrus-sasl-2.1.22
cyrus-sasl-saslauthd-2.1.22
pam-mysql-0.6.2
postfix-2.3.3,1---
/etc/pam.conf:
smtp auth required pam_mysql.so user=postfix passwd=postfix
db=mail table=users usercolumn=login passwdcolumn=password crypt=1 where=expired=0
smtp account required pam_mysql.so user=postfix passwd=postfix
db=mail table=users usercolumn=login passwdcolumn=password crypt=1 where=expired=0
---
[/usr/lib/sasl2 -> /usr/local/lib/sasl2]/smtpd.conf (пробовался в двух вариантах)
Вар1
pwcheck_method: saslauthd
mech_list: LOGIN PLAINВар2
pwcheck_method: saslauthd
mech_list: LOGIN PLAIN
log_level: 3
sql_engine: mysql
sql_database: mail
sql_user: postfix
sql_passwd: postfix
sql_select: SELECT password FROM users WHERE login=('%u'+'%r');
---
P.S. Насколько я понимаю 2-ой - кривой поскольку предназначен для auxprop (?)
---
/usr/local/etc/postfix/main.cf дописан до фраз
# использовать transport layer security для отправки почты
# (пока все оставляем закомментаренным, ибо ключей у нас ещё нет)
То что закомментировано далее - закомментировано.
-------------------------------------------------------------
Присутствуют следующие строки в списке процессов:
ps -ax | grep sasl: saslauthd -a pam
ps -ax | grep post: /usr/.../postfix/master
ps -ax | grep sqld: /bin/.../mysqld_safe --[options]
ps -ax | grep sqld: /usr/.../mysqld --defaults-Тест 'telnet localhost 25' + 'mail from:' проходит.
Тест 'telnet localhost 25' + 'AUTH PLAIN' проходит.Но, при попытке отправить письмо с клиента вылазит суть проблемы:
1. auth.log
---
...
...: pam_mysql - SELECT returned no result.
...: do_auth: auth failure: [user=test] [service=smtp] [realm=] [mech=pam] [reason=PAM auth error]
*** после добавления ключика -r ***
...: pam_mysql - SELECT returned no result.
...: do_auth:auth failure: [user=test] [service=smtp] [realm=test.ru] [mech=pam] [reason=PAM auth error]
---Насколько я понимаю, собственно, проблема уже поднималась, сопоставляя auth.log и debug.log
... postfix/smtpd[7865]: sql plugin Parse the username test@test.ru
... postfix/smtpd[7865]: sql plugin try and connect to a host
... postfix/smtpd[7865]: sql plugin trying to open db 'mail' on host ''
... saslauthd[7928]: DEBUG: auth_pam: pam_authenticate failed: unknown user
- проблема в том, что при проверке pam-mysql обрезает доменное имя по самую собаку :(
В ветке приводились решения для ухода от этой проблемы:
---
Q: 1. pam_mysql не понимает @. В упор. Вместо собаки(и всех символов до следующей точки) мы получаем пустоту. Адрес me@raven.elk.ru при запросе превращается в me.elk.ru
-
A1: Все просто: "@" = "\@"
-
A2: эээ.... man saslauthd на предмет ключика -r
---
Я пытался экспериментировать с переменными '%u' и '%r', с ключом '-r' у saslauthd, с написанием '@'... Ну, в общем, обратиться сюда я решил не при появлении первых трудностей... Выхода пока не вижу. :(2. Несмотря на "auth failure" письма, таки, уходят и складываются в нужный ящик... Почему?
-------------------------Уважаемые если у кого-нибудь найдётся пара минут свободного времени! Объясните идиоту - что я делаю неправильно?
P.S.S Про кривые руки можете не сообщать, я, к сожалению, в курсе. :)
Ребят, у меня проблема такого плана... При попытке авторизоваться вылазиет в auth.log:Sep 10 10:26:20 dmz-uln01 postfix/smtpd[43297]: sql_select option missing
Sep 10 10:26:20 dmz-uln01 postfix/smtpd[43297]: auxpropfunc error no mechanism available
Sep 10 10:26:20 dmz-uln01 saslauthd[43153]: pam_mysql - required option "user" is not set
Sep 10 10:26:20 dmz-uln01 saslauthd[43153]: do_auth : auth failure: [user=snaut@mail.ucc.ru] [service=smtp] [realm=mail.ucc.ru] [mech=pam] [reason=PAM auth error]
В чем грабли не знаете?