Создание пользователей / паролей Dovecot Master не работает

Я ломаю голову над этим в течение нескольких часов. Я хочу создать главного пользователя, у которого будет доступ ко всем учетным записям dovecot . Я Мы следовали руководству на веб-сайте dovecot , однако он по-прежнему либо говорит «Ошибка аутентификации», либо «Ожидание ответа от процесса аутентификации», и он никогда не работает. Что я здесь делаю не так? Спасибо

// dovecot.conf

# 2.0.16: /usr/local/etc/dovecot/dovecot.conf
# OS: FreeBSD 8.2-RELEASE amd64  
auth_master_user_separator = *
disable_plaintext_auth = no
mail_location = maildir:~/Maildir
namespace {
  inbox = yes
  location = 
  prefix = INBOX.
  separator = .
  type = private
}

passdb {
  args = /usr/local/etc/dovecot/dovecot-sql.conf
  driver = sql
}
passdb {
  args = /usr/local/etc/dovecot/passwd.master
  driver = passwd-file
  master = yes
}
protocols = imap pop3
service auth {
  client_limit = 6000
}
service imap {
  process_limit = 2048
  vsz_limit = 1256 M
}
service pop3 {
  process_limit = 2048
}

userdb {
  args = /usr/local/etc/dovecot/dovecot-sql.conf
  driver = sql
}
userdb {
  driver = passwd
}
protocol pop3 {
  pop3_uidl_format = UID%u-%v
}
    --> as instructed from http://wiki.dovecot.org/Authentication/MasterUsers

cat passwd.master

master:{SHA}E9RIKlmYWisBS3ObR16GwKUZNZg=  

telnet localhost 143

 Trying 127.0.0.1...
    Connected to localhost.
    Escape character is '^]'.
    a login loginuser*master mypassword
    * OK Waiting for authentication process to respond..
    * OK Waiting for authentication process to respond..                                                                                                                   
    * BYE Disconnected for inactivity.                                                                                                                                     
    Connection closed by foreign host.

или

telnet localhost 143                                                                                                         
Trying 127.0.0.1...                                                                                                                                                    
Connected to localhost.                                                                                                                                                
Escape character is '^]'.                                                                                                                                              
* OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE STARTTLS AUTH=PLAIN                                                
1 login loginuser*master mypassword                                                                                                                      
1 NO [AUTHENTICATIONFAILED] Authentication failed.                                                                                                                     
* BYE Disconnected for inactivity.                                                                                                                                     
Connection closed by foreign host.  

// dovecot -n

# 2.0.16: /usr/local/etc/dovecot/dovecot.conf
# OS: FreeBSD 8.2-RELEASE amd64  
auth_master_user_separator = *
disable_plaintext_auth = no
login_greeting = CFI mail server ready.
mail_location = maildir:~/Maildir
namespace {
  inbox = yes
  location = 
  prefix = INBOX.
  separator = .
  type = private
}

passdb {
  args = /usr/local/etc/dovecot/dovecot-sql.conf
  driver = sql
}
passdb {
  args = /usr/local/etc/dovecot/passwd.master
  driver = passwd-file
  master = yes
}
protocols = imap pop3
service auth {
  client_limit = 6000
}
service imap {
  process_limit = 2048
  vsz_limit = 1256 M
}
service pop3 {
  process_limit = 2048
}

userdb {
  args = /usr/local/etc/dovecot/dovecot-sql.conf
  driver = sql
}
userdb {
  driver = passwd
}
protocol pop3 {
  pop3_uidl_format = UID%u-%v
}
1
задан 11 April 2016 в 18:50
1 ответ

Наконец-то все заработало! Во-первых, мне пришлось использовать auth_master_user_separator = + вместо * . Это устранило жалобу dovecot на то, что символ имени пользователя запрещен auth_username_chars: 0x2a (username: loginuser * master)

Затем я понял, что добавляю записи мастер-пароля с помощью команды htpasswd в неправильный файл / usr / local /etc/dovecot/dovecot.master, но в моих конфигах это правильный файл /usr/local/etc/dovecot/passwd.master . Не знаю, как мне не удалось это быстро увидеть.

Наконец, я плохо тестировал логины главного пользователя с помощью telnet. Я использовал 1 логин пользователя + главный mypassword вместо 1 логин (скрытый) mypassword

Наконец, мои конфигурации в dovecot.conf выглядят примерно так

auth_master_user_separator = +                                                                                                                            
#auth_username_chars = *  #dovecot complains about the “*” character                                                                                                                               
auth_verbose = yes                                                                                                                                             
auth_debug = yes                                                                                                                                               
auth_debug_passwords = yes                                                                                                                                     
passdb {                                                                                                                                                       
        driver = passwd-file                                                                                                                                   
        args = /usr/local/etc/dovecot/passwd.master                                                                                                            
        master = yes                                                                                                                                           
        #pass = yes                                                                                                                                            

}                                                                                                                                                              
passdb {                                                                                                                                          
        #driver = shadow                                                                                                                                       
        driver = pam                                                                                                                                           
}                                                                                                                                                              
userdb {                                                                                                                                                       
  driver = passwd                                                                                                                                              
}
3
ответ дан 3 December 2019 в 18:35

Теги

Похожие вопросы