Tuesday, November 18, 2025

Dovecot upgrade from 2.3 to 2.4

  •  see link for detail guideline, Archlinux provide dovecot23 as alternative
  • add two new configuration, see link
    • dovecot_config_version = 2.4.2
    • dovecot_storage_version = 2.4.2
  • delete empy dict
#dict {
#quota = mysql:/etc/dovecot/dovecot-dict-sql.conf.ext
#expire = sqlite:/etc/dovecot/dovecot-dict-sql.conf.ext
#}

  • change "disable_plaintext_auth = yes" to "auth_allow_cleartext = no", see link
  • rename userdb and passdb. 
    • passdb authenticated the user. 
    • userdb lookup then retrieves post-login information specific to the authenticated user
userdb passwd {
          #driver = passwd
}
passdb pam {
          #driver = pam
          passdb_driver=pam
}

#mail_location = mbox:~/mail:INBOX=/var/mail/%u
#mail_location = mbox:~/mail:INBOX=/var/mail/%{user}

mail_driver = mbox
mail_path = ~/mail
mail_inbox_path = /var/mail/%{user}

  • update ssl, see linklink.
#ssl_cert = </etc/letsencrypt/live/hongy19.net/fullchain.pem
#ssl_key =  </etc/letsencrypt/live/hongy19.net/privkey.pem
#ssl_dh =   </etc/dovecot/dh.pem
ssl_server_cert_file = /etc/letsencrypt/live/hongy19.net/fullchain.pem
ssl_server_key_file = /etc/letsencrypt/live/hongy19.net/privkey.pem
ssl_server_dh_file = /etc/dovecot/dh.pem

  • rename "service_count = 1" to "service_restart_request_count = 1", see link.

/var/permission

 

from link, /var/mail should have correct permissions 2775 root:mail

The first digit "2" represents the setgid (Set Group ID) special permission:

  • 2 = setgid bit enabled
  • When set on a directory, new files created within inherit the directory's group ownership
  • This ensures all mail files created in /var/mail automatically belong to the mail group

The s represents the setgid bit. It appears in the group execute position:
  • Normal group permissions: rwx (read, write, execute)
  • With setgid: rws (read, write, setgid)
  • With setgid but no execute: rwS (capital S)