LINUX.ORG.RU
ФорумAdmin

Dovecot авторизация не работает


0

0

Вот конвиг dovecot.conf

base_dir = /var/run/dovecot/

protocols = imap pop3

listen = * ssl_disable = yes

disable_plaintext_auth = no

shutdown_clients = yes

log_timestamp = "%b %d %H:%M:%S "

syslog_facility = mail

login_chroot = yes

login_user = dovecot

login_process_size = 64

login_process_per_connection = yes

login_processes_count = 3

login_max_processes_count = 64

login_greeting = dovecot MUA ready

login_log_format_elements = user=<%u> method=%m rip=%r lip=%l %c

login_log_format = %$: %s

verbose_proctitle = yes

first_valid_uid = 25

first_valid_gid = 0

auth_verbose = yes

auth_debug = yes

auth_debug_passwords = yes

mail_location = maildir:/mail/%d/%n

umask = 0077

protocol imap {

imap_client_workarounds = delay-newmail outlook-idle netscape-eoh tb-extra-mailbox-sep

}

protocol pop3 {

pop3_uidl_format = %08Xu%08Xv pop3_client_workarounds = outlook-no-nuls oe-ns-eoh

}

protocol lda {

postmaster_address = support@lissyara.su

auth_socket_path = /var/run/dovecot/auth-master

}

auth default {

mechanisms = plain login

socket listen {

master {

path = /var/run/dovecot/auth-master

mode = 0600

user = Debian-exim

}

client {

path = /var/run/dovecot/auth-client

mode = 0777

user = vmail

group = Debian-exim

}

}

passdb sql {

args = /etc/dovecot/dovecot-sql.conf

}

userdb sql {

args = /etc/dovecot/dovecot-sql.conf

}

user = root

}

plugin {

}

Вот dovecot-sql.conf

driver = mysql

connect = host=localhost dbname=exim user=root password=******

default_pass_scheme = PLAIN

password_query = SELECT `username` as `user`, `password` FROM `mailbox` WHERE `username` = '%n' AND `domain`='%d'

user_query = SELECT '/mail/%d/%n' AS home, 102 AS uid, 104 AS gid FROM users WHERE username = '%n' AND `domain` = '%d'

Таблица exim:

username(admin) password(*****) name maildir quota domain (exam.com)

Вот что в логах:

client in: AUTH#0111#011PLAIN#011service=POP3#011lip=192.168.0.16#011rip=192.168.0.100#011 resp=AGFkbWluQHppbW$

Sep 10 15:45:20 zimbra dovecot: auth-worker(default): sql(admin@exam.com,192.168.0.100): query: SELECT password, '/mail//admin' $

Sep 10 15:45:20 zimbra dovecot: auth(default): client out: OK#0111#011user=admin@exam.com

Sep 10 15:45:20 zimbra dovecot: auth(default): master in: REQUEST#0111#01125663#0111

Sep 10 15:45:20 zimbra dovecot: auth-worker(default): sql(admin@exam.com,192.168.0.100): SELECT home, uid, gid FROM users WHERE userid = 'admin@ex$

Sep 10 15:45:20 zimbra dovecot: auth-worker(default): sql(admin@zimbra.gulliver.ru,192.168.0.100): User query failed: Table 'exim.users' doesn't exist

Sep 10 15:45:20 zimbra dovecot: auth(default): master out: FAIL#0111

Sep 10 15:45:20 zimbra dovecot: pop3-login: Internal login failure: user=<admin@exam.com>, method=PLAIN, rip=192.168.0.100, lip=192.168.0.16

Не работает авторизация. И не понятно от куда берется таблица Table 'exim.users' doesn't exist .

Подскажите куда капнуть?

Написано же Table 'exim.users' doesn't exist

Нету у тебя такой таблички.

sabonez ★☆☆☆
()

Если уж делаешь по лисяриному мануалу, то делай до конца

> user_query = SELECT '/mail/%d/%n' AS home, 102 AS uid, 104 AS gid FROM users WHERE username = '%n' AND `domain` = '%d'

Править надо эту строчку. Сам подумай, как.

undertaker ★★
()
Ответ на: комментарий от undertaker

>Написано же Table 'exim.users' doesn't exist

Да в чем все и дело, я нигде её в конфигах не указываю, откуда она берется?

Я именно хочу переделать лесяравский способ, а именно, что бы было не пользователь %n@%d, а пользователь %n домен %d, чтобы %n брало из username а domain %d.

CheGev80
() автор топика
Ответ на: комментарий от undertaker

Ну да тупанул, с утра посмотрел внимательно.

CheGev80
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.