[Dovecot] Create userdir on dovecot login --- solved
Andreas Cieslak
andreas at kado-web.de
Tue Sep 27 17:32:20 EEST 2011
Sorted out the problem, which was already solved in an older forum post of
dovecot.
In the file
/usr/local/etc/dovecot/conf.d/auth-system.conf.ext
I set
Passdb {
Driver = pam
args = session=yes dovecot
}
Unfortunately this didnt work because when I log in with a user xy, the
user dovecot became the owner of the userdir.
When I modified the file /usr/local/etc/dovecot/conf.d/auth-system.conf.ext
like this:
Passdb {
Driver = pam
# args = session=yes dovecot
}
And gave anyone (for testing) the permission to write to home. That worked!
At least put the ldap-users in a group and gave that group writing
permissions to home. Finished!
-----Ursprüngliche Nachricht-----
Von: dovecot-bounces at dovecot.org [mailto:dovecot-bounces at dovecot.org] Im
Auftrag von Andreas Cieslak
Gesendet: Donnerstag, 22. September 2011 15:41
An: dovecot at dovecot.org
Betreff: [Dovecot] Create userdir on dovecot login
Hi List,
I am trying to set up automated userdir-creation on login via squirrelmail
or email-client with a dovecot backend.
The users are first imported on an openldap directory on the same server as
the dovecot runs on.
Authentication on the dovecot mail system via pam_ldap works properly.
Tried already to integrate some advices from the dovecot wiki like
Passdb {
Driver = pam
args = session=yes dovecot
}
But the homedir creation works only when the user logs onto the machine.
When I try to log in via Squirrel on the dovecot no homedir is created and
there is following message in the logs:
auth: Error: pam(cieslak,193.175.157.121): pam_open_session() failed:
Permission denied
I think its something about the user rights, but dont really know where to
search for the needle
Here is the config of my environment
root at server:/home# dovecot -n
# 2.0.13: /usr/local/etc/dovecot/dovecot.conf
# OS: Linux 2.6.32-5-686 i686 Debian 6.0.2
auth_debug = yes
auth_mechanisms = login plain
auth_verbose = yes
first_valid_uid = 1000
hostname = server
info_log_path = /var/log/dovecot-info
last_valid_uid = 10000
listen = *
log_path = /var/log/dovecot
mail_access_groups = mail
mail_debug = yes
mail_full_filesystem_access = yes
mail_location = maildir:~/Maildir
mbox_write_locks = fcntl
passdb {
args = session=yes dovecot
driver = pam
}
postmaster_address = mailaddress
service auth-worker {
group = shadow
user = $default_internal_user
}
service auth {
user = $default_internal_user
}
service imap-login {
inet_listener imap {
port = 143
}
inet_listener imaps {
port = 993
ssl = yes
}
process_min_avail = 0
service_count = 0
vsz_limit = 256 M
}
service lmtp {
unix_listener lmtp {
mode = 0666
}
}
service pop3-login {
inet_listener pop3s {
port = 995
ssl = yes
}
}
ssl_ca = </usr/local/etc/dovecot/ca
ssl_cert = </usr/local/etc/dovecot/crt
ssl_key = </usr/local/etc/dovecot/key
userdb {
driver = passwd
}
protocol pop3 {
pop3_uidl_format = %08Xu%08Xv
}
dovecot --version
2.0.13
The configuration of the pam module /etc/pam.d/dovecot looks like
@include common-auth
@include common-account
@include common-session
The common session has the line
session required pam_mkhomedir.so skel=/etc/skel umask=0077
I would appreciate any hints.
Andreas
More information about the dovecot
mailing list