Dovecot starting and running, but not listening on any port

Solution 1:

You're missing a protocols directive to tell Dovecot which protocols to serve.

An example:

protocols = imap imaps pop3 pop3s

Solution 2:

I realize this is an old question with an equally old answer, but on Ubuntu and Debian installs there is /usr/share/dovecot/protocols.d/ directory that should contain .protocol files. These are separate packages that one can install outside of the main Dovecot install. As explained here on the official Ubuntu page for Dovecot:

The installation is extremely simple, just install the following packages:

  1. dovecot-imapd
  2. dovecot-pop3d

For example, using apt-get:

sudo apt-get install dovecot-imapd dovecot-pop3d

So I recommend that you just go ahead and install those packages like this:

sudo apt-get install dovecot-imapd dovecot-pop3d

Pretty sure after you do that and then check the /usr/share/dovecot/protocols.d/ directory you will see some .protocol files in there. Just restart Dovecot after doing that and you should be good. And feel free to install other .protocol files as needed.