[Dovecot] multiple passdbs and auth sockets
Hello, I want to use different authentication arguments for smtp and imap/pop3. In the dovecot list I found this: http://www.dovecot.org/list/dovecot/2013-August/091960.html I tried to follow these instructions but dovecot refuses to find the auth executable: Dec 12 10:36:18 jlaptop postfix/smtpd[7302]: connect from localhost[127.0.0.1] Dec 12 10:36:18 jlaptop dovecot: auth-10: Error: doveconf: Fatal: execvp(/usr/local/var/run/dovecot/dovecot/auth) failed: No such file or directory Dec 12 10:36:18 jlaptop dovecot: master: Error: service(auth-10): command startup failed, throttling for 2 secs Dec 12 10:36:18 jlaptop dovecot: auth-10: Fatal: master: service(auth-10): child 7304 returned error 89 (Fatal failure) Dec 12 10:36:18 jlaptop postfix/smtpd[7302]: fatal: no SASL authentication mechanisms Dec 12 10:36:19 jlaptop postfix/master[7046]: warning: process /usr/lib/postfix/smtpd pid 7302 exit status 1 Dec 12 10:36:19 jlaptop postfix/master[7046]: warning: /usr/lib/postfix/smtpd: bad command startup -- throttling My settings for postfix and dovecot are as follows: root@jlaptop:/usr/local/etc/dovecot/conf.d# postconf -n alias_database = hash:/etc/aliases alias_maps = hash:/etc/aliases append_dot_mydomain = no biff = no config_directory = /etc/postfix default_transport = error home_mailbox = Maildir/ inet_interfaces = loopback-only mailbox_command = mailbox_size_limit = 0 myhostname = jlaptop mynetworks = 127.0.0.0/8 [:::127.0.0.0]/104 [::1]/128 queue_directory = /var/spool/postfix readme_directory = no recipient_delimiter = + relay_transport = error relayhost = smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu) smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination smtpd_sasl_auth_enable = yes smtpd_sasl_path = private/auth-10 smtpd_sasl_type = dovecot smtpd_tls_cert_file = /etc/ssl/certs/ssl-cert-snakeoil.pem smtpd_tls_key_file = /etc/ssl/private/ssl-cert-snakeoil.key smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache smtpd_use_tls = yes virtual_gid_maps = static:8 virtual_mailbox_base = /var/mail/smtp virtual_mailbox_domains = jlaptop.com virtual_mailbox_maps = hash:/etc/postfix/vmaps virtual_minimum_uid = 100 virtual_uid_maps = static:124 root@jlaptop:/usr/local/etc/dovecot/conf.d# doveconf -n # 2.2.9: /usr/local/etc/dovecot/dovecot.conf # OS: Linux 3.11.0-13-generic x86_64 Ubuntu 13.10 auth_debug = yes auth_debug_passwords = yes auth_verbose = yes first_valid_uid = 124 mail_gid = mail mail_home = /var/mail/imap/%n mail_location = maildir:~/mail mail_plugin_dir = /usr/local/lib/dovecot/ mail_plugins = gpgfuse_umount mail_uid = vmail namespace inbox { inbox = yes location = mailbox Drafts { special_use = \Drafts } mailbox Junk { special_use = \Junk } mailbox Sent { special_use = \Sent } mailbox "Sent Messages" { special_use = \Sent } mailbox Trash { special_use = \Trash } prefix = } passdb { args = session=yes dovecot driver = pam } protocols = imap pop3 lmtp imap pop3 service auth-10 { executable = auth -c /usr/local/etc/dovecot-auth-smtp.conf process_limit = 1 unix_listener /var/spool/postfix/private/auth-10 { group = postfix mode = 0666 user = postfix } } ssl_cert =
Re: [Dovecot] multiple passdbs and auth sockets
On 8.8.2013, at 18.53, Marco d'Itri wrote: > I have a few systems which run dovecot 1.x as the authentication backend > for Postfix, with multiple auth { } sections like this one, each one > with a different passdb and its own socket: > > auth ldap-10 { > passdb ldap { >args = /etc/dovecot/dovecot-ldap-10.conf > } > socket listen { >client { > path = /var/spool/postfix/private/auth-10 > mode = 0666 >} > } > } > > I need multiple sockets tied to multiple dbs because there are duplicated > accounts, but after switching to dovecot 2.1.7 apparently *all* passdbs > are checked and dovecot reports this message: > > Warning: Obsolete setting in /etc/dovecot/conf.d/auth-local.conf.ext:91: add > auth_ prefix to all settings inside auth {} and remove the auth {} section > completely > > doveconf shows that all my custom sockets are now part of a single > "service auth { }" section, while all the passdbs appear at the top > level. > > How can I update my configuration for dovecot 2.x? I didn't think there was any point in having multiple auth {} sections the way they worked in v1.x, but looks like you've managed to find one way to use them. I'm not sure if it's possible to convert them to v2.x configuration currently. You could try this though: service auth-10 { executable = auth -c /etc/dovecot-auth-10.conf unix_listener /var/spool/postfix/private/auth-10 { mode = 0666 } process_limit = 1 } So the master process would be starting multiple auth processes, each reading their own (passdb) configuration from a different config file.
[Dovecot] multiple passdbs and auth sockets
I have a few systems which run dovecot 1.x as the authentication backend for Postfix, with multiple auth { } sections like this one, each one with a different passdb and its own socket: auth ldap-10 { passdb ldap { args = /etc/dovecot/dovecot-ldap-10.conf } socket listen { client { path = /var/spool/postfix/private/auth-10 mode = 0666 } } } I need multiple sockets tied to multiple dbs because there are duplicated accounts, but after switching to dovecot 2.1.7 apparently *all* passdbs are checked and dovecot reports this message: Warning: Obsolete setting in /etc/dovecot/conf.d/auth-local.conf.ext:91: add auth_ prefix to all settings inside auth {} and remove the auth {} section completely doveconf shows that all my custom sockets are now part of a single "service auth { }" section, while all the passdbs appear at the top level. How can I update my configuration for dovecot 2.x? -- ciao, Marco