Dovecot 2.4 and Debian 13

I found that the Dovecot service does not start after a fresh install Debian 13 + Virtualmin. The errors come from the file /etc/dovecot/dovecot.conf

At the end there are two directives that are no longer valid in version 2.4:

default_mail_env = maildir:~/Maildir
disable_plaintext_auth = no

I commented them and a new error related to pop3 appeared. I saw that several issues are reported in the forum, more or less solved. As a solution I removed the dovecot packages and reinstalled them. Obviously the service started and the dovecot.conf file no longer contains those directives. I was able to create a virtual server and added ssl paths at the end.

Is there a list of changes in Virtualmin files to ensure compatibility with dovecot 2.4?

Debian 13 is not officially supported yet I believe
Quick search resulted: https://forum.virtualmin.com/t/debian-13-and-dovecot/135899
Maybe not you’re specific problem but maybe if you search here you will find answer

I have read the entire forum looking for reported issues with Dovecot v2.4, including your link. I know it is not supported, what I am doing now is testing and reporting issues as I have done in the past before using some new operating systems in production. With the exception of a few identified issues, Virtualmin runs on Debian 13 so far, but I can’t say that there couldn’t be others.

ok well that is about all I can help with as I run Rocky Linux 9.x And Debian 12 that is currently supported.
How did you install Virtualmin? with the current 7.x installer? or the not yet released 8.x installer?

I installed Virtuamin as a novice would, using the command from the official page. This way if errors appear, they will appear on others as well. When version 8 is officially released, I will dedicate a separate machine for testing. Maybe Ilya or Joe will take the time to inform us what changes are needed for Dovecot 2.4. I have searched outside this forum and the upgrade to this new version has generated trouble.

Understood
Well Virtualmin is pretty clear on instruction for current installations: https://www.virtualmin.com/docs/os-support/
But yes hopefully others will reply to assist more.

I wish you best of luck and welcome to Virtualmin

Thank you. Virtualmin is not new to me is the panel I am using with different Linux distributions for a long time. I am one of the older contributors, I think for about 11 years.

1 Like

Ok, well you like me and many others here are the same but you said you installed Virtualmin like a novice would.
I guess I’m confused but help you get answers to help you :grin:

I think there was mention of Dovecot 2.4 making some config changes and I ā€˜think’ VM 8 (coming soon to a server near you) fixes it (on new installs). I could be wrong but threads don’t stay too clean sometimes so things get confused.

@ID10T
I believe you are correct
Yes so many threads on this problem it can get confusing.
I’m just not sure I understand if OP used the Virtualmin 8 pre release installer or current installer

That conflicts with this:

There’s no reason to test the Virtualmin 7 installer on unsupported distros or report issues. It isn’t expected to work on unsupported distros.

Ilia has posted links to the development repo and installer (that will become Virtualmin 8 as soon as we’re happy with it), which does mostly work on Debian 13 (but is not recommended for production). It is at a point where ā€œtestingā€ is a reasonable thing to do with it.

We all know the Virtualmin 7 installer on the download page that regular users would use does not work on Debian 13, and we make that clear in the supported OS page and in the supported OS list in the installer. There are no surprises to find there, and no useful testing to do on a version of the installer that explicitly does not support Debian 13.

1 Like

I removed the Dovecot packages then re-installed. I ran into an issue where emails were correctly delivered to local Maildir mailboxes (they appeared in Maildir/new/), but Roundcube did not show any messages in INBOX. The root cause was where and how the mail storage was configured.

In Dovecot 2.4, the recommended and correct place to configure mail storage is conf.d/10-mail.conf, not dovecot.conf.

Reasons:

  • dovecot.conf is mainly a loader that includes files from conf.d/
  • Mail storage settings are expected to be defined in 10-mail.conf
  • Settings defined elsewhere may be overridden or ignored depending on load order
  • Dovecot 2.4 introduces a clearer separation using mail_driver and mail_path

If Maildir is not configured correctly here, Dovecot may not properly process messages from new/ into cur/, which results in IMAP clients (like Roundcube) showing an empty INBOX.

By default, 10-mail.conf contains commented fallback settings for mbox, for example:

mail_driver = mbox
mail_home = /home/%{user | username}
mail_path = %{home}/mail
mail_inbox_path = /var/mail/%{user}

If Maildir is used but these defaults are not adjusted, Dovecot may still assume an mbox-based layout or fail to initialize the mailbox correctly.

Working configuration (Maildir)

In conf.d/10-mail.conf, I explicitly set Maildir and commented out the mbox defaults:

#mail_driver = mbox
#mail_home = /home/%{user | username}
#mail_path = %{home}/mail
#mail_inbox_path = /var/mail/%{user}

mail_driver = maildir
mail_path   = ~/Maildir

After reloading Dovecot: systemctl reload dovecot, Dovecot immediately started processing messages correctly:

  • mails moved from new/ to cur/
  • INBOX became visible in Roundcube
  • no permission or index issues remained

To confirm the active configuration: doveadm config | grep -E "mail_(driver|path)"

PS - I personally encourage the use of non-A grade versions in testing environments. This is the way we all can contribute identifing issues and not let the whole pressure on the Virtualmin team shoulders.

1 Like

Another issue is related to dovecot.conf. In Dovecot 2.4, it is not recommended to define local_name {} SSL/SNI blocks directly in dovecot.conf.

This file is intended mainly as a top-level loader which includes the configuration files from conf.d/, and changes made there are more likely to be overridden by control panels such as Virtualmin or to be missed during upgrades.

Since local_name is strictly related to SSL handling, it should be placed in a dedicated configuration file under conf.d/, ideally alongside other SSL settings. Using a clearly named file such as 10-virtualmin-ssl.conf (or 15-ssl-sni.conf) keeps the configuration clean, predictable, and easier to maintain, especially in multi-domain Virtualmin environments where SNI-based certificates are common.

Again, why are you reporting on a not yet supported Grade A OS?
Did you see @Joe response above?

I think it is about identify issues that the staff may, or may not, find helpful. Also, some have already started moving to 13 so they don’t have to upgrade for 5 years. Me? I’m not that adventurous anymore. I wait for ā€˜the stable version’. :wink:

@ID10T
Same Here
Debian 12 EOL Mainstream June 2026 LTS EOL 2028, I’m good for now
Stable is my main goal from a OS

I probably fell behind with the rules of this forum, when problems could be reported and solutions proposed. I’m sorry for that. Where is the best place for such discussions? Thank you.

@ADDISON74
Are you reporting problems for Debian 13 using the not yet released Virtualmin 8? or using the current Virtualmin release?
@Joe explained it clearly in his post above

I’m not sure what problem you are trying to help with?

In the past, such posts helped us make a new OS version faster ready for Virtualmin. If I remember correctly, there were situations when it took between 9 months and 1,5 years for an OS to be declared ā€œstableā€. I am software engineer and from my experience I appreciate feedback, so I considered it positive to contribute to solving issues. In a Google search, or a chatbot conversation related to Virtualmin problems with Debian 13, I found a short list. If I did not respect the forum rules, you may delete the topic.

Well, I’m a software developer ā€œengineerā€ also but take a very different path as to current shipping products and soon to be released products.

You do realize you are giving feedback on a product currently shipping that is stable and there is a soon to be released new version that has been tested?

again I’m not certain what you’re feedback intent is meant to help.

If you would install what @Joe mentioned Virtualmin 8 I’m sure it would be much more valuable to Debian 13 future supported installs