Проблема:www# telnet 127.0.0.1 110
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
+OK Hello there.
user user@test.com
+OK Password required.
pass password
-ERR Temporary problem, please try again later
Connection closed by foreign host.В логах:
www authdaemond: failed to connect to mysql server (server=localhost, userid=exim): Access denied for user 'exim'@'localhost' (using password: YES)
Mar 9 14:46:12 www pop3d: LOGIN FAILED, user=user@test.com, ip=[::1]
Mar 9 14:46:12 www pop3d: authentication error: Input/output errorВ Mysql ессно есть база mail, exim имеет на нее все права ...
FreeBSD 6.0, MySQL 5. Уже и не знаю куда бится, короче ПЛИЗ ХЕЛП
www# less /usr/local/etc/authlib/authdaemonrc
authmodulelist="authmysql"
authmodulelistorig="authuserdb authvchkpw authpam authldap authmysql authpgsql"
daemons=5
authdaemonvar=/var/run/authdaemond
subsystem=mail
DEBUG_LOGIN=0
DEFAULTOPTIONS="wbnodsn=1"
LOGGEROPTS=""www# less /usr/local/etc/authlib/authmysqlrc
MYSQL_SERVER localhost
MYSQL_USERNAME exim
MYSQL_PASSWORD xxx
MYSQL_SOCKET /tmp/mysql.sock
MYSQL_USER_TABLE users
MYSQL_UID_FIELD 1002
MYSQL_GID_FIELD 6
MYSQL_PORT 3306
MYSQL_OPT 0
MYSQL_DATABASE mail
MYSQL_SELECT_CLAUSE SELECT CONCAT(id,'@',mbox_host), crypt, "", 1002, 6, home, CONCAT(home,'/Maildir'), "", id, "" FROM users WHERE CONCAT(id,'@', mbox_host) = '$(local_p
art)@$(domain)'
У меня было что-то подобное с dovecot. В ихнем списке рассылки сказали, что эта проблема MySQL. Они при переходе к 5-й ветке поменяли метод шифрования паролей для mysql. Попробуйте задать пароль для юзера exim, используя OLD_PASSWORD().
А еще подозрительно выглядит IP, с которого пришел коннект. Похоже на IPv6. MySQL о нем знает?
насколько понимаю у вас стоит Courier-Imap. Хотелось бы увидеть логи, как он стартует - ощущение, чтор не подгрузились модули авторизации. Да неплохо бы и версию указать - новые через pam общаются, старые без оного.
>насколько понимаю у вас стоит Courier-Imap. Хотелось бы увидеть логи, как он
>стартует - ощущение, чтор не подгрузились модули авторизации. Да неплохо бы
>и версию указать - новые через pam общаются, старые без оного.
>
Чтото не пойму в чем глюк ..... И что не так творю
Courier-imap -- 4.0.4
Courier-authlib -- 0.57
Mysql --4.1
telnet localhost 110
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
+OK Hello there.
user user@test.com
+OK Password required.
pass password
-ERR Temporary problem, please try again later
Connection closed by foreign host./var/log/maillog
r 15 01:47:14 www authdaemond: modules="authmysql", daemons=5
Mar 15 01:47:14 www authdaemond: Installing libauthmysql
Mar 15 01:47:14 www authdaemond: Installation complete: authmysql
Mar 15 01:47:37 www authdaemond: failed to connect to mysql server (server=local
host, userid=exim): Access denied for user 'exim'@'localhost' (using password: Y
ES)
Mar 15 01:47:37 www pop3d: LOGIN FAILED, user=user@test.com, ip=[127.0.0.1]
Mar 15 01:47:37 www pop3d: authentication error: Input/output errorauthmysqlrc
MYSQL_SERVER localhost
MYSQL_USERNAME exim
MYSQL_PASSWORD xxx
#MYSQL_SOCKET /tmp/mysql.sock
MYSQL_PORT 3306
MYSQL_OPT 0
MYSQL_DATABASE mail
MYSQL_SELECT_CLAUSE SELECT CONCAT(id,'@',mbox_host), crypt, "", 1001, 6, home, CONCAT(home,'/Maildir'), "", id, "" FROM users WHERE CONCAT(id,'@', mbox_host) = '$(local_part)@$(domain)'authdaemond
authmodulelist="authmysql"
authmodulelistorig="authuserdb authvchkpw authpam authldap authmysql authpgsql"
daemons=5
authdaemonvar=/var/run/authdaemond
subsystem=mail
DEBUG_LOGIN=2
DEFAULTOPTIONS="wbnodsn=1"
LOGGEROPTS=""
>Courier-imap -- 4.0.4
>Courier-authlib -- 0.57
>Mysql
> --4.1
>Гуд
>
>telnet localhost 110
>Trying 127.0.0.1...
>Connected to localhost.
>Escape character is '^]'.
>+OK Hello there.
>user user@test.com
>+OK Password required.
>pass password
>-ERR Temporary problem, please try again later
>Connection closed by foreign host.
>
>
>
>/var/log/maillog
>
>r 15 01:47:14 www authdaemond: modules="authmysql", daemons=5
>Mar 15 01:47:14 www authdaemond: Installing libauthmysql
>Mar 15 01:47:14 www authdaemond: Installation complete: authmysql
>Mar 15 01:47:37 www authdaemond: failed to connect to mysql server (server=local
>^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Ключ ко всему. Смотри /etc/hosts, как у тебя localhost обозван.
Разумнее попробовать по прямой 127.0.0.1>host, userid=exim): Access denied for user 'exim'@'localhost' (using password: Y
>ES)
>Mar 15 01:47:37 www pop3d: LOGIN FAILED, user=user@test.com, ip=[127.0.0.1]
>Mar 15 01:47:37 www pop3d: authentication error: Input/output error
>
>
>
>authmysqlrc
>
>MYSQL_SERVER localhostЧитай выше. 127.0.0.1 попробуй
>MYSQL_USERNAME exim
>MYSQL_PASSWORD xxx
>#MYSQL_SOCKET
>/tmp/mysql.sock
>MYSQL_PORT 3306
>MYSQL_OPT 0
>MYSQL_DATABASE mail
>MYSQL_SELECT_CLAUSE SELECT CONCAT(id,'@',mbox_host), crypt, "", 1001, 6, home, CONCAT(home,'/Maildir'), "", id, ""
> FROM users WHERE CONCAT(id,'@', mbox_host) = '$(local_part)@$(domain)'
>
>authdaemond
>
>authmodulelist="authmysql"
>authmodulelistorig="authuserdb authvchkpw authpam authldap authmysql authpgsql"
>daemons=5
>authdaemonvar=/var/run/authdaemond
>subsystem=mail
>DEBUG_LOGIN=2
>DEFAULTOPTIONS="wbnodsn=1"
>LOGGEROPTS=""
Если ходить на 127.0.0.1 тоже самое ...
И если в authmysqlrc сказать ходить через mysql.sock то тоже облом ...
какие еще мысли ?www# telnet 127.0.0.1 110
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
+OK Hello there.
user user@test.com
+OK Password required.
pass password
-ERR Temporary problem, please try again later
Connection closed by foreign host.Mar 15 05:42:59 www authdaemond: modules="authmysql", daemons=5
Mar 15 05:42:59 www authdaemond: Installing libauthmysql
Mar 15 05:42:59 www authdaemond: Installation complete: authmysql
Mar 15 05:43:11 www authdaemond: failed to connect to mysql server (server=localhost, userid=exim): Can't connect to local MySQL server through socket '/tmp/mysql.sock ' (2)
Mar 15 05:43:11 www pop3d: LOGIN FAILED, user=test, ip=[127.0.0.1]
Mar 15 05:43:11 www pop3d: authentication error: Input/output error
да не telnet 127.0.0.1 110 , а в конфиге пропиши вместо localhost 127.0.0.1 !!!!Проверь в конце концов, правильность записи для localhost в /etc/hosts
>да не telnet 127.0.0.1 110 , а в конфиге пропиши вместо localhost
> 127.0.0.1 !!!!
>
>Проверь в конце концов, правильность записи для localhost в /etc/hosts
MYSQL_SERVER localhost
MYSQL_USERNAME user
MYSQL_PASSWORD password
MYSQL_SOCKET /tmp/mysql.sock
MYSQL_PORT 3306
MYSQL_OPT 0
MYSQL_DATABASE mailserver
MYSQL_USER_TABLE aliases
MYSQL_CLEAR_PWFIELD password
DEFAULT_DOMAIN domain.ua
MYSQL_UID_FIELD id
MYSQL_GID_FIELD gid
MYSQL_LOGIN_FIELD alias
MYSQL_HOME_FIELD maildir
MYSQL_NAME_FIELD info
MYSQL_MAILDIR_FIELD maildirЕсли у вас не работает, что видно по логам, коннект к localhost замените
MYSQL_SERVER localhost
на
MYSQL_SERVER 127.0.0.1
еще проверьте
mysql -u user -p -h localhost mailнормально ли коннектиться, у верен, что нет.
проверьте, как будет, если вместо localhost прописать 127.0.0.1сделать под root-ом MySQL
GRAND ALL on mail.* to user@localhost IDENTIFITIED BY 'password';
И проверить опять
mysql -u user -p -h localhost mail
если все Ok, тогда, можно localhost прописывать в конфиг
>>Проверь в конце концов, правильность записи для localhost в /etc/hosts
Проверил, в порядке>mysql -u user -p -h localhost mail
Проверил пускает,
>сделать под root-ом MySQLВКлючил лог запросов. У меня Exim юзеров берет из той же базы без проблем. А вот authdaemon не может аутентифицироваться нормально,
060316 22:05:55 5 Connect exim@localhost on mail
5 Query SELECT domain FROM domains WHERE domain='test.com' AND (type='LOCAL' OR type='VIRTUAL')
5 Query SELECT recipients FROM aliases WHERE local_part='user' AND domain='test.com'
5 Query SELECT recipients FROM userforward WHERE local_part='user' AND domain='celticdance.ru'
5 Query SELECT home FROM users WHERE id='user' AND mbox_host='test.com' AND active='Y'
5 Quit
6 Connect exim@localhost on mail
6 Query SELECT quota FROM users WHERE id='user' AND mbox_host='test.com'
6 Query SELECT CONCAT(home, "/Maildir") FROM users WHERE id='user' AND mbox_host='celticdance.ru'
6 Quit
060316 22:07:45 7 Connect Access denied for user 'exim'@'localhost' (using password: YES)
060316 22:09:11 8 Connect Access denied for user ''exim''@'localhost' (using password: YES)чтото меня пугают кавычки 'exim'@'localhost' , может у меня то нетак с запросом ?
MYSQL_SERVER 127.0.0.1
MYSQL_USERNAME exim
MYSQL_PASSWORD stribog
MYSQL_SOCKET /tmp/mysql.sock
#MYSQL_PORT 3306
MYSQL_OPT 0
MYSQL_DATABASE mail
MYSQL_SELECT_CLAUSE SELECT CONCAT(id,'@',mbox_host), crypt, "", 1001, 6, home, CONCAT(home,'/Maildir'), "", id, "" FROM users WHERE CONCAT(id,'@', mbox_host) = '$(local_part)@$(domain)'
>>>Проверь в конце концов, правильность записи для localhost в /etc/hosts
>Проверил, в порядке
>
>>mysql -u user -p -h localhost mail
>Проверил пускает,Ok
>>сделать под root-ом MySQL> 5
>Query SELECT domain FROM domains
>WHERE domain='test.com' AND (type='LOCAL' OR type='VIRTUAL')
>
> 5
>Query SELECT recipients FROM aliases
>WHERE local_part='user' AND domain='test.com'
>
> 5
>Query SELECT recipients FROM userforward
>WHERE local_part='user' AND domain='celticdance.ru'
>
> 5
>Query SELECT home FROM users
>WHERE id='user' AND mbox_host='test.com' AND active='Y'
>
> 5
>Quit
>
> 6
>Connect exim@localhost on mail
>
> 6
>Query SELECT quota FROM users
>WHERE id='user' AND mbox_host='test.com'
>
> 6
>Query SELECT CONCAT(home, "/Maildir") FROM
>users WHERE id='user' AND mbox_host='celticdance.ru'
>
> 6
>Quit
>060316 22:07:45 7 Connect
> Access denied for user 'exim'@'localhost' (using password: YES)
>060316 22:09:11 8 Connect
> Access denied for user ''exim''@'localhost' (using password: YES)
>
>чтото меня пугают кавычки 'exim'@'localhost' , может у меня то нетак с
>запросом ?
>
>MYSQL_SERVER
>127.0.0.1
>MYSQL_USERNAME exim
>MYSQL_PASSWORD stribog
>MYSQL_SOCKET
>/tmp/mysql.sock
>#MYSQL_PORT
> 3306
>MYSQL_OPT
> 0
>MYSQL_DATABASE mail
>MYSQL_SELECT_CLAUSE SELECT CONCAT(id,'@',mbox_host), crypt, "", 1001, 6, home,
>CONCAT(home,'/Maildir'), "", id, "" FROM users WHERE CONCAT(id,'@', mbox_host) =
>'$(local_part)@$(domain)'show columns from users;
Пароль, насколько я понимаю, закриптован?
>
>show columns from users;
>Пароль, насколько я понимаю, закриптован?
Database changed
mysql> show columns from users;
+-----------+------------------+------+-----+---------------------------------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------+------------------+------+-----+---------------------------------+-------+
| id | varchar(64) | | PRI | | |
| crypt | varchar(64) | | | | |
| passwd | varchar(64) | | | | |
| uid | int(10) unsigned | YES | | 8 | |
| gid | int(10) unsigned | YES | | 12 | |
| mbox_host | varchar(128) | | PRI | test.com | |
| shell | varchar(32) | YES | | /sbin/nologin | |
| home | varchar(128) | YES | | /usr/local/vmail/test.com | |
| quota | tinyint(4) | YES | | 30 | |
| active | enum('Y','N') | YES | | Y | |
+-----------+------------------+------+-----+---------------------------------+-------+
10 rows in set (0.01 sec)
>>
>>show columns from users;
>>Пароль, насколько я понимаю, закриптован?
>Что находиться в полях crypt и passwd . id login@domain или как?
>>>
>>>show columns from users;
>>>Пароль, насколько я понимаю, закриптован?
>>
>
>Что находиться в полях crypt и passwd . id login@domain или как?
>
SELECT CONCAT(id,'@',mbox_host), crypt, "", 1001, 6, home, CONCAT(home,'/Maildir'), "", id, "" FROM users WHERE CONCAT(id,'@', mbox_host) = '$(local_part)@$(domain)'Разобрался. Что мешает объединить id в такой вид user@domain (CONCAT не потребуется), после crypt идет "" - что это значит, не понял. CONCAT(home,'/Maildir') = почему так? не проще ли например просто home, а в его значения /path/domain/user/ создавать папки maildirmake ? Кстати, а можешь объяснить = '$(local_part)@$(domain)' что это такое, понять не могу
в ваших настройках authmysqlrc что то я не увидел где поля задаются в которых хранится имя и пароль пользователяВозможно, это поможет?
http://postfixwiki.org/index.php?title=Virtual_Users_and_Dom...
99%, что ошибка в том запросе, который ты организуешь(см.MYSQL_SELECT_CLAUSE).
Попробуй закомментить его.
Для того, чтобы авторизация выполнялась согласно твоему запросу, но без него, раскомментируй и измени опцию# DEFAULT_DOMAIN example.com
Ибо, как было сказано:
##NAME: MYSQL_DEFAULT_DOMAIN:0
#
# If DEFAULT_DOMAIN is defined, and someone tries to log in as 'user',
# we will look up 'user@DEFAULT_DOMAIN' instead.
#
#
# DEFAULT_DOMAIN example.com
То есть 100% проблема в твоем запросе. Ты переменные в нем взял из Exim.
И еще! Сделай
mysql -u root -p mysql
SELECT user,host FROM user WHERE 1;Результат сюда.
>И еще! Сделай
>mysql -u root -p mysql
>SELECT user,host FROM user WHERE 1;
>
>Результат сюда.
mysql> SELECT user,host FROM user WHERE 1;
+------+-----------+
| user | host |
+------+-----------+
| exim | localhost |
| root | localhost |
+------+-----------+
2 rows in set (0.02 sec)
См. мои сообщения чуть выше!"Проблема в твоем запросе. Ты переменные в нем взял из Exim."
Не товарищи чтото тут не с запростом криво .... Cудя по логам до запросов не доходит, c правами тоже все в порядке, так как exim использует этого пользователя, чтото видимо с самим authdaemond, что я еще раскопал:
Еще раз вся хронология событий:
root@www# telnet 127.0.0.1 110
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
+OK Hello there.
user user
+OK Password required.
pass password
-ERR Temporary problem, please try again later
Connection closed by foreign host.Теперь логи:
/var/log/debug
Mar 19 05:20:10 www pop3d: Connection, ip=[127.0.0.1]
Mar 19 05:20:17 www authdaemond: received auth request, service=pop3, authtype=login
Mar 19 05:20:17 www authdaemond: authmysql: trying this module
Mar 19 05:20:17 www authdaemond: authmysql: TEMPFAIL - no more modules will be tried/var/log/maillog
Mar 19 05:20:17 www authdaemond: failed to connect to mysql server (server=localhost, userid=exim): Access denied for user 'exim'
@'localhost' (using password: YES)
Mar 19 05:20:17 www pop3d: LOGIN FAILED, user=user, ip=[127.0.0.1]
Mar 19 05:20:17 www pop3d: authentication error: Input/output error/usr/local/database/mysql/mysql.log
060319 5:20:17 1 Connect Access denied for user 'exim'@'localhost' (using password: YES)
При этом я повторяю что Exim с этим пользователем работает нормально
3 Connect exim@localhost on mail
3 Query SELECT domain FROM domains WHERE domain='test.com' AND (type='LOCAL' OR type='VIRЧто еще раскопал, при сборке в config.log нашлось, может изза этого он не может в mysql договорится о логине?
configure:24905: checking crypt.h usability
configure:24917: cc -c -I/usr/local/include/mysql -fno-strict-aliasing -pipe -O2 -fno-strict-aliasing -pipe -Wall -I.. -I./.. -I
/usr/local/include conftest.c >&5
conftest.c:70:19: crypt.h: No such file or directory
configure:24923: $? = 1
configure: failed program was:
| /* confdefs.h. */Я уже просто в отчаянии, не могу понят что делаю не так ... Помогите плиз...
>Не товарищи чтото тут не с запростом криво ....Молодой, человек, прежде чем спорить, взгляните на это:
MYSQL_SELECT_CLAUSE SELECT CONCAT(id,'@',mbox_host), crypt, "", 1002, 6, home, CONCAT(home,'/Maildir'), "", id, "" FROM users WHERE CONCAT(id,'@', mbox_host) = '$(local_p
art)@$(domain)'
И объясните мне, откуда у вас в запросе authmysqlrc взялись "local_part" и "domain"? Это переменные Exim, и никакого отношения к Courier-IMAP не имеют. И, в конце-концов, обратите внимание на мои слова(ответ #14). А то вы пытаетесь "изобрести велосипед" своим запросом.
>>Не товарищи чтото тут не с запростом криво ....
>
>Молодой, человек, прежде чем спорить, взгляните на это:
>MYSQL_SELECT_CLAUSE SELECT CONCAT(id,'@',mbox_host), crypt, "", 1002, 6, home,
>CONCAT(home,'/Maildir'), "", id, "" FROM users WHERE CONCAT(id,'@', mbox_host) =
>'$(local_p
>art)@$(domain)'
>И объясните мне, откуда у вас в запросе authmysqlrc взялись "local_part" и
>"domain"? Это переменные Exim, и никакого отношения к Courier-IMAP не имеют.
>И, в конце-концов, обратите внимание на мои слова(ответ #14). А то
>вы пытаетесь "изобрести велосипед" своим запросом.Журнал Системный Администратор 01-2006
http://www.samag.ru/source/source1(38).txt
строка 1129,
>>>Не товарищи чтото тут не с запростом криво ....
>>
>>Молодой, человек, прежде чем спорить, взгляните на это:
>>MYSQL_SELECT_CLAUSE SELECT CONCAT(id,'@',mbox_host), crypt, "", 1002, 6, home,
>>CONCAT(home,'/Maildir'), "", id, "" FROM users WHERE CONCAT(id,'@', mbox_host) =
>>'$(local_p
>>art)@$(domain)'
>>И объясните мне, откуда у вас в запросе authmysqlrc взялись "local_part" и
>>"domain"? Это переменные Exim, и никакого отношения к Courier-IMAP не имеют.
>>И, в конце-концов, обратите внимание на мои слова(ответ #14). А то
>>вы пытаетесь "изобрести велосипед" своим запросом.Если эту строку закоментировать что пишутся те же ошибки в логи
Попробуй рестартнуть MySQL.
>Попробуй рестартнуть MySQL.только это и делаю, все перегружал тоже, странно то что еxim то работает, причем поставил тут на новую систему все, тот же эффект ... Может у freebsd6 чтото с этим портом (authdaemond)?
Беру свои слова обратно, мой косяк, кривой запрос, пытаюсь составить корректные. Интересно в Системном Администраторе это проверяли ?
ошибка в синтаксисе этой строки: MYSQL_SELECT_CLAUSE SELECT CONCAT(id,'@',mbox_host), crypt, "", 1001, 6, home, CONCAT(home,'/Maildir'), "", id, "" FROM users WHERE CONCAT(id,'@', mbox_host) = ''$(local_part)@$(domain)'', а именно ''$(local_part)@$(domain)'', должно быть не два опострафа (''), а ковычки (").
>Беру свои слова обратно, мой косяк, кривой запрос, пытаюсь составить корректные.
>Интересно в Системном Администраторе это проверяли ?А в чём собственно косяк? Так и не увидели решения проблемы. ;)
"local_part" и "domain" - это также переменные Courier-IMAP...Если вы внимательно смотрели файл authmysqlrc.dist, в нем есть упоминания про эти переменные.
>"local_part" и "domain" - это также переменные Courier-IMAP...Если вы внимательно смотрели файл
>authmysqlrc.dist, в нем есть упоминания про эти переменные.У меня переменная $(domain) не хочит передавать имя домена с которого конектиться пользователь (например john@xxx1.ua) а передает только домен по умолчанию указаный в authmysqlrc
DEFAULT_DOMAIN xxx.ua
MYSQL_SERVER localhost
MYSQL_USERNAME exim
MYSQL_PASSWORD 123
MYSQL_PORT 3306
MYSQL_OPT 0
MYSQL_DATABASE mail
MYSQL_USER_TABLE users
MYSQL_CRYPT_PWFIELD crypt
MYSQL_UID_FIELD 26
MYSQL_GID_FIELD 6
MYSQL_LOGIN_FIELD id
MYSQL_HOME_FIELD home
MYSQL_SELECT_CLAUSE SELECT CONCAT(id,'@',mbox_host), crypt, "", 26, 6, home, CONCAT(home,'/Maildir'), "", id, "" FROM users WHERE CONCAT(id,'@',mbox_host) = '$(local_part)@$(domain)'Клиент зеБЕТ 3.0 адрес полльзователя john@xxx1.ua который пытаеться cоединиться по imap
ЛОГ всего этого
mail1 authdaemond: received auth request, service=imap, authtype=login
mail1 authdaemond: authmysql: trying this module
mail1 authdaemond: SQL query: SELECT CONCAT(id,'@',mbox_host), crypt, "", 26, 6, home, CONCAT(home,'/Maildir'), "", id, "" FROM users WHERE CONCAT(id,'@',mbox_host) = 'john@xxx.ua '
authdaemond: zero rows returned
authdaemond: no password available to compare
authdaemond: FAIL, all modules rejected
imapd: LOGIN FAILED, user=john, ip=[10.100.1.100]
Когда коментирую опцию домен по умолчанию в authmysqlrc#DEFAULT_DOMAIN xxx.ua
Клиент зеБЕТ 3.0 адрес полльзователя john@xxx1.ua который пытаеться cоединиться по imap
ТО ЛОГ ТАКОЙ
authdaemond: received auth request, service=imap, authtype=login
authdaemond: authmysql: trying this module
authdaemond: parse_select_clause failed (DEFAULT_DOMAIN not set?)
authdaemond: authmysql: TEMPFAIL - no more modules will be tried
inapd: LOGIN FAILED, user=john, ip=[xxx.xxx.xxx.xxx]
Хто что думает по этому поводу????
на чём всё сдохло.. таже проблема... кто нибудь решил ?
>на чём всё сдохло.. таже проблема... кто нибудь решил ?Сщгкшук не работает с mysql_crypt
Да, что-то ошибки никто и не решил. А у меня проблема таже но более забавнее. Была система все стояло нормально и все работало. После переустановки Debian и тех же самых настроек появилась эта ошибка. Кто знает что это?----------------------------------------------------------------------------------------------
Ставим:
courier-authlib-mysql courier-pop-ssl courier-imap-ssl courier-imap courier-pop------------------------
Изменяю в файле
client:/# mcedit /etc/courier/authdaemonrcauthmodulelist="authmysql"
------------------------
Изменяю файл
client:/# cat /etc/courier/authmysqlrcMYSQL_SERVER 127.0.0.1 // подключение к серверу по адресу
MYSQL_USERNAME postfix // имя пользователя mysql
MYSQL_PASSWORD postfix // пароль пользователя mysql
MYSQL_PORT 3306 // порт на котором висит mysql
MYSQL_OPT 0
MYSQL_DATABASE mail // Имя базы данных к которй подключаемся
MYSQL_USER_TABLE users // Имя таблицы
MYSQL_CRYPT_PWFIELD password // Столбец в которой находиться зашифрованный пароль
#MYSQL_CLEAR_PWFIELD password // Столбей в котором находиться не зашифрованный пароль
MYSQL_UID_FIELD 1001
MYSQL_GID_FIELD 1001
MYSQL_LOGIN_FIELD email // Столбец и именем пользователя (test@client)
MYSQL_HOME_FIELD "/home/vmail" // Каталог с письмами
MYSQL_MAILDIR_FIELD maildir // Директория пользователя в каталоге с письмамиОшибка в логах:
Feb 24 12:45:53 client courierpop3login: Connection, ip=[::ffff:127.0.0.1]
Feb 24 12:46:05 client authdaemond: failed to connect to mysql server (server=127.0.0.1.., userid=postfix..): Access denied for user 'postfix..'@'localhost' (using password: YES)
Feb 24 12:46:05 client courierpop3login: LOGIN FAILED, user=kate, ip=[::ffff:127.0.0.1]
Feb 24 12:46:05 client courierpop3login: authentication error: Input/output error
>Feb 24 12:45:53 client courierpop3login: Connection, ip=[::ffff:127.0.0.1]
>Feb 24 12:46:05 client authdaemond: failed to connect to mysql server (server=127.0.0.1..,
>userid=postfix..): Access denied for user 'postfix..'@'localhost' (using password: YES)
>Feb 24 12:46:05 client courierpop3login: LOGIN FAILED, user=kate, ip=[::ffff:127.0.0.1]
>Feb 24 12:46:05 client courierpop3login: authentication error: Input/output errorтут же четко видно что у тебя лишние длве точки в логине
Аccess denied for user 'postfix..'@'localhost'
Да видел я эти две точки в логах. Но самое интересное что в настройке их нет. Короче ситуацию исправил. Тупо конечно но исправил. Взял все убил и затем поставил заново. ТОЧНО ТАКЖЕ. И все заработало. Даже не знаю что это или действительно где-то небольшая опечатка или может что то с пакетами.
>[оверквотинг удален]
>>Feb 24 12:45:53 client courierpop3login: Connection, ip=[::ffff:127.0.0.1]
>>Feb 24 12:46:05 client authdaemond: failed to connect to mysql server (server=127.0.0.1..,
>>userid=postfix..): Access denied for user 'postfix..'@'localhost' (using password: YES)
>>Feb 24 12:46:05 client courierpop3login: LOGIN FAILED, user=kate, ip=[::ffff:127.0.0.1]
>>Feb 24 12:46:05 client courierpop3login: authentication error: Input/output error
>
>тут же четко видно что у тебя лишние длве точки в логине
>
>
>Аccess denied for user 'postfix..'@'localhost'client:/# cat /etc/courier/authmysqlrc
MYSQL_SERVER 127.0.0.1
MYSQL_USERNAME postfix
MYSQL_PASSWORD postfix
MYSQL_PORT 3306
MYSQL_OPT 0
MYSQL_DATABASE mail
MYSQL_USER_TABLE users
MYSQL_CRYPT_PWFIELD password
#MYSQL_CLEAR_PWFIELD password
MYSQL_UID_FIELD 1001
MYSQL_GID_FIELD 1001
MYSQL_LOGIN_FIELD email
MYSQL_HOME_FIELD "/home/vmail"
MYSQL_MAILDIR_FIELD maildirС логином все правильно.
>[оверквотинг удален]
>MYSQL_USER_TABLE users
>MYSQL_CRYPT_PWFIELD password
>#MYSQL_CLEAR_PWFIELD password
>MYSQL_UID_FIELD 1001
>MYSQL_GID_FIELD 1001
>MYSQL_LOGIN_FIELD email
>MYSQL_HOME_FIELD "/home/vmail"
>MYSQL_MAILDIR_FIELD maildir
>
>С логином все правильно.Мне помогло сменить пароль на тот же самый что и был заново для юзера, который привязан в БД