[Dovecot] Lost in configuration
forumer at smartmobili.com
forumer at smartmobili.com
Sun Feb 12 15:52:54 EET 2012
Hi,
I am trying to configure dovecot/postfix with virtual users and sasl
auth but there are so many tutorials
with mistakes and subtle differences that at the end I am lost.
So I am running Ubuntu server 11.04 (natty) and when I installed my
server I had followed
the following guide http://workaround.org/ispmail/etch
Then I have migrated to dovecot 2.1 and now I am trying to allow
authenticated user to use my smtp server because
for the moment I get : Relay access denied
Here is my configuration (first is file hierarchy followed by file
contents) and I would like to know
what I need to do to allow authenticated user send email.
In this tutorial
http://library.linode.com/email/postfix/dovecot-mysql-ubuntu-10.04-lucid#sph_configure-saslauthd-to-use-mysql
it seems I have to add some configuration lines inside /etc/pam.d/smtp
and add database configuration inside /etc/postfix/sasl/smtpd.conf.
But what I find weird is the fact I have to configure some sql queries
from smtpd.conf while normally dovecot has already all the information
to do this kind of query.
So before to keep on modifying my config I would like to be sure I am
following the right way.
Thanks
###########################
/etc/postfix
###########################
drwxr-xr-x 3 root root 4096 2012-02-12 13:33 ./
drwxr-xr-x 116 root root 4096 2012-02-12 13:21 ../
-rw-r--r-- 1 root root 373 2011-07-24 11:50 dynamicmaps.cf
-rw-r--r-- 1 root root 1928 2012-02-12 12:45 main.cf
-rw-r--r-- 1 root root 5762 2011-08-03 22:06 master.cf
-rw-rw---- 1 root postfix 140 2011-07-24 11:43
mysql-virtual-alias-maps.cf
-rw-rw---- 1 root postfix 132 2011-07-24 11:47
mysql-virtual-mailbox-domains.cf
-rw-rw---- 1 root postfix 128 2011-07-24 11:47
mysql-virtual-mailbox-maps.cf
-rw-r--r-- 1 root root 19509 2011-04-05 06:07 postfix-files
-rwxr-xr-x 1 root root 8729 2011-04-05 06:07 postfix-script*
-rwxr-xr-x 1 root root 25752 2011-04-05 06:07 post-install*
drwxr-xr-x 2 root root 4096 2012-02-12 12:41 sasl/
root at xa-12345:/etc/postfix# ll sasl/
drwxr-xr-x 2 root root 4096 2012-02-12 12:41 ./
drwxr-xr-x 3 root root 4096 2012-02-12 13:33 ../
-rw-r--r-- 1 root root 26 2012-02-12 12:41 smtpd.conf
###########################
/etc/dovecot
###########################
drwxr-xr-x 3 root root 4096 2011-09-24 11:42 ./
drwxr-xr-x 116 root root 4096 2012-02-12 13:21 ../
drwxr-xr-x 2 root dovecot 4096 2012-02-12 12:03 conf.d/
-rw-r--r-- 1 root dovecot 3693 2011-09-23 15:11 dovecot.conf
-rw-r--r-- 1 root dovecot 410 2011-09-23 15:11 dovecot-db.conf.ext
-rw-r--r-- 1 root dovecot 782 2011-09-23 15:11
dovecot-dict-sql.conf.ext
-rw-r--r-- 1 root dovecot 5508 2011-09-23 15:38 dovecot-sql.conf
-rw-r--r-- 1 root dovecot 5348 2011-09-23 15:11 dovecot-sql.conf.ext
-rw-r--r-- 1 root dovecot 116 2011-09-23 15:11 README
###########################
/etc/default/saslauthd
###########################
-rw-r--r-- 1 root root 2043 2012-02-12 11:57 /etc/default/saslauthd
###########################
/var/spool/postfix/var/run/
###########################
drwxr-xr-x 3 root root 4096 2012-02-12 12:35 ./
drwxr-xr-x 3 root root 4096 2012-02-12 12:35 ../
drwxr-xr-x 2 root sasl 4096 2012-02-12 12:35 saslauthd/
I have added postfix to the sasl group (don't know if it was necessary
but I found this instruction on a website)
/etc/group:
sasl:x:45:postfix
/etc/default/saslauthd:
----------------------
START=yes
PWDIR="/var/spool/postfix/var/run/saslauthd"
PARAMS="-m ${PWDIR}"
PIDFILE="${PWDIR}/saslauthd.pid"
DESC="SASL Authentication Daemon"
NAME="saslauthd"
MECHANISMS="pam"
MECH_OPTIONS=""
THREADS=5
OPTIONS="-c -m /var/spool/postfix/var/run/saslauthd"
mkdir -p /var/spool/postfix/var/run/saslauthd
chown -R root.sasl /var/spool/postfix/var/run/saslauthd
Then I have checked saslauth is running after restart:
root at xa-12345:/home/vmail# ps -ef | grep saslauthd
root 6123 1 0 13:21 ? 00:00:00 /usr/sbin/saslauthd -a
pam -c -m /var/run/saslauthd -n 5
root 6124 6123 0 13:21 ? 00:00:00 /usr/sbin/saslauthd -a
pam -c -m /var/run/saslauthd -n 5
root 6125 6123 0 13:21 ? 00:00:00 /usr/sbin/saslauthd -a
pam -c -m /var/run/saslauthd -n 5
root 6127 6123 0 13:21 ? 00:00:00 /usr/sbin/saslauthd -a
pam -c -m /var/run/saslauthd -n 5
root 6128 6123 0 13:21 ? 00:00:00 /usr/sbin/saslauthd -a
pam -c -m /var/run/saslauthd -n 5
Then when I check after restarting if saslauthd socket is created I
don't see anything (don't know if it's normal)
root at xa-12345:/home/vmail# ls -lh /var/spool/postfix/var/run/saslauthd
total 0
/etc/postfix/sasl/smtpd.conf:
-----------------------------
pwcheck_method: saslauthd
/etc/postfix/main.cf:
---------------------
myorigin = /etc/mailname
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = no
append_dot_mydomain = no
# TLS parameters
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database =
btree:${queue_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${queue_directory}/smtp_scache
myhostname = mail.foobar.com
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = foobar.com
mydestination = xa-12345.dadibox.com, localhost.dadibox.com, localhost
relayhost =
mynetworks = 127.0.0.0/8 80.190.190.190
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
#virtual domains
virtual_mailbox_domains =
mysql:/etc/postfix/mysql-virtual-mailbox-domains.cf
virtual_mailbox_base = /home/vmail
virtual_mailbox_maps = mysql:/etc/postfix/mysql-virtual-mailbox-maps.cf
virtual_uid_maps = static:5000
virtual_gid_maps = static:5000
virtual_alias_maps = mysql:/etc/postfix/mysql-virtual-alias-maps.cf
# Dovecot LDA
virtual_transport = dovecot
dovecot_destination_recipient_limit = 1
debug_peer_level = 2
debug_peer_list = 127.0.0.1
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes
smtpd_recipient_restrictions =
permit_mynetworks,permit_sasl_authenticated,reject_unauth_destination
smtpd_sasl_application_name = smtpd
broken_sasl_auth_clients = yes
/etc/dovecot/conf.d/10-auth.conf:
--------------------------------------
disable_plaintext_auth = no
!include auth-sql.conf.ext
!include auth-static.conf.ext
/etc/dovecot/conf.d/auth-static.conf.ext:
----------------------------------------
userdb {
driver = static
args = uid=5000 gid=5000 home=/home/vmail/%d/%n allow_all_users=yes
}
/etc/dovecot/conf.d/auth-sql.conf.ext:
--------------------------------------
passdb {
driver = sql
args = /etc/dovecot/dovecot-sql.conf
}
/etc/dovecot/dovecot-sql.conf:
------------------------------
driver = mysql
connect = host=127.0.0.1 dbname=mailserver user=myuser
password=mypassword
default_pass_scheme = CRAM-MD5
password_query = SELECT email as user, password FROM view_users WHERE
email='%u';
/etc/dovecot/conf.d/10-master.conf:
----------------------------------
service imap-login {
inet_listener imap {
}
inet_listener imaps {
}
}
service pop3-login {
inet_listener pop3 {
}
inet_listener pop3s {
}
}
service lmtp {
unix_listener lmtp {
}
}
service imap {
}
service pop3 {
}
service auth {
unix_listener auth-userdb {
mode = 0600
user = vmail
#group =
}
# Postfix smtp-auth
unix_listener /var/spool/postfix/private/auth {
mode = 0777
}
}
service auth-worker {
}
service dict {
unix_listener dict {
mode = 0600
#user =
group = vmail
}
}
More information about the dovecot
mailing list