From 81c9632f5ab6a370e0d581c5edcddd2109779c72 Mon Sep 17 00:00:00 2001 From: fliu <10025-fliu@users.noreply.salsa.debian.org> Date: Wed, 30 Jun 2021 21:19:55 +0000 Subject: [PATCH] email: dovecot: Support user lookup by UID number Dovecot refuses to open the root user's mail box Need (!(uidNumber=0)) to correctly return status code --- .../freedombox-ldap-userdb-aliases.conf.ext | 20 +++++++++++++++++++ .../dovecot/freedombox-ldap-userdb.conf.ext | 2 +- 2 files changed, 21 insertions(+), 1 deletion(-) create mode 100644 plinth/modules/email_server/data/etc/dovecot/freedombox-ldap-userdb-aliases.conf.ext diff --git a/plinth/modules/email_server/data/etc/dovecot/freedombox-ldap-userdb-aliases.conf.ext b/plinth/modules/email_server/data/etc/dovecot/freedombox-ldap-userdb-aliases.conf.ext new file mode 100644 index 000000000..c7eb3c369 --- /dev/null +++ b/plinth/modules/email_server/data/etc/dovecot/freedombox-ldap-userdb-aliases.conf.ext @@ -0,0 +1,20 @@ +# Direct edits to this file will be lost! +# Manage your settings on Plinth https://localhost/plinth/apps/email_server + +uris = ldap://127.0.0.1 +base = dc=thisbox + +user_attrs = \ + =home=%{ldap:homeDirectory}, \ + =uid=%{ldap:uidNumber}, \ + =gid=%{ldap:gidNumber}, \ + =user=%{ldap:uid}, \ + =mail=maildir:~/Maildir:LAYOUT=index + +user_filter = \ + (&(objectClass=posixAccount)(!(uidNumber=0))(uidNumber=%n)(!(uid=%n))) + +# doveadm -A + +iterate_attrs = =user=%{ldap:uid} +iterate_filter = (objectClass=posixAccount) diff --git a/plinth/modules/email_server/data/etc/dovecot/freedombox-ldap-userdb.conf.ext b/plinth/modules/email_server/data/etc/dovecot/freedombox-ldap-userdb.conf.ext index c115853ed..d6e464def 100644 --- a/plinth/modules/email_server/data/etc/dovecot/freedombox-ldap-userdb.conf.ext +++ b/plinth/modules/email_server/data/etc/dovecot/freedombox-ldap-userdb.conf.ext @@ -10,7 +10,7 @@ user_attrs = \ =gid=%{ldap:gidNumber}, \ =mail=maildir:~/Maildir:LAYOUT=index -user_filter = (&(objectClass=posixAccount)(uid=%Ln)) +user_filter = (&(objectClass=posixAccount)(uid=%Ln)(!(uidNumber=0))) # For doveadm