Fix multiple hard-coded vmail

This commit is contained in:
Spitap
2023-01-23 19:24:28 +01:00
parent 6144f7967c
commit 7cae12b32e
5 changed files with 12 additions and 14 deletions

View File

@@ -256,7 +256,7 @@ ConfigDictTemplate = [
}, },
{ {
"option": "user", "option": "user",
"default": "vmail", "default": "dovecot",
}, },
{ {
"option": "home_dir", "option": "home_dir",

View File

@@ -91,6 +91,7 @@ class Dovecot(base.Installer):
"db_driver": self.db_driver, "db_driver": self.db_driver,
"mailboxes_owner_uid": pw_mailbox[2], "mailboxes_owner_uid": pw_mailbox[2],
"mailboxes_owner_gid": pw_mailbox[3], "mailboxes_owner_gid": pw_mailbox[3],
"mailbox_owner": self.mailboxes_owner,
"modoboa_user": self.config.get("modoboa", "user"), "modoboa_user": self.config.get("modoboa", "user"),
"modoboa_dbname": self.config.get("modoboa", "dbname"), "modoboa_dbname": self.config.get("modoboa", "dbname"),
"modoboa_dbuser": self.config.get("modoboa", "dbuser"), "modoboa_dbuser": self.config.get("modoboa", "dbuser"),
@@ -125,10 +126,7 @@ class Dovecot(base.Installer):
utils.exec_cmd("chmod +x /usr/local/bin/postlogin.sh") utils.exec_cmd("chmod +x /usr/local/bin/postlogin.sh")
# Add mailboxes user to dovecot group for modoboa mailbox commands. # Add mailboxes user to dovecot group for modoboa mailbox commands.
# See https://github.com/modoboa/modoboa/issues/2157. # See https://github.com/modoboa/modoboa/issues/2157.
system.add_user_to_group( system.add_user_to_group(self.mailboxes_owner, 'dovecot')
self.config.get("dovecot", "mailboxes_owner"),
'dovecot'
)
def restart_daemon(self): def restart_daemon(self):
"""Restart daemon process. """Restart daemon process.

View File

@@ -104,8 +104,8 @@ namespace inbox {
# System user and group used to access mails. If you use multiple, userdb # System user and group used to access mails. If you use multiple, userdb
# can override these by returning uid or gid fields. You can use either numbers # can override these by returning uid or gid fields. You can use either numbers
# or names. <doc/wiki/UserIds.txt> # or names. <doc/wiki/UserIds.txt>
#mail_uid = mail_uid = %{mailboxes_owner_uid}
#mail_gid = mail_gid = %{mailboxes_owner_gid}
# Group to enable temporarily for privileged operations. Currently this is # Group to enable temporarily for privileged operations. Currently this is
# used only with INBOX when either its initial creation or dotlocking fails. # used only with INBOX when either its initial creation or dotlocking fails.

View File

@@ -92,14 +92,14 @@ service postlogin {
service stats { service stats {
# To allow modoboa to access available cipher list. # To allow modoboa to access available cipher list.
unix_listener stats-reader { unix_listener stats-reader {
user = vmail user = %{mailboxes_owner}
group = vmail group = %{mailboxes_owner}
mode = 0660 mode = 0660
} }
unix_listener stats-writer { unix_listener stats-writer {
user = vmail user = %{mailboxes_owner}
group = vmail group = %{mailboxes_owner}
mode = 0660 mode = 0660
} }
} }
@@ -120,7 +120,7 @@ service auth {
# permissions (e.g. 0777 allows everyone full permissions). # permissions (e.g. 0777 allows everyone full permissions).
unix_listener auth-userdb { unix_listener auth-userdb {
#mode = 0666 #mode = 0666
user = vmail user = %{mailboxes_owner}
#group = #group =
} }
@@ -154,7 +154,7 @@ service dict {
# For example: mode=0660, group=vmail and global mail_access_groups=vmail # For example: mode=0660, group=vmail and global mail_access_groups=vmail
unix_listener dict { unix_listener dict {
mode = 0600 mode = 0600
user = vmail user = %{mailboxes_owner}
#group = #group =
} }
} }

View File

@@ -78,7 +78,7 @@ scache unix - - - - 1 scache
# Also specify in main.cf: maildrop_destination_recipient_limit=1 # Also specify in main.cf: maildrop_destination_recipient_limit=1
# #
maildrop unix - n n - - pipe maildrop unix - n n - - pipe
flags=DRhu user=vmail argv=/usr/bin/maildrop -d ${recipient} flags=DRhu user=%{dovecot_mailboxes_owner} argv=/usr/bin/maildrop -d ${recipient}
# #
# ==================================================================== # ====================================================================
# #