IMAP and POP3 have nothing to do with Postfix. Those are MDA protocols, while Postfix is MTA and it only supports SMTP (and LMTP, think simplified version). What you seem to need instead is to set up Postfix's smtpd_*_restrictions
properly.
You have a properly set up submission
service (in master.cf
), which enforces TLS (it has smtpd_tls_security_level=encrypt
). This is for MUAs. This is the only place in the whole Postfix configuration where you may need user authentication.
Your MUAs shouldn't connect to port 25 over SMTP (if they do, you should update their configuration to use dedicated submission
port 587 instead). Other MTAs who deliver mail to you won't authenticate. So, remove any occurrence of permit_sasl_authenticated
from main.cf
and set smtpd_sasl_auth_enable=no
in it. Then Postfix will not support any form of authentication on port 25. It will be dedicated to only receive mail from other MTAs.
Also, usually you want to have permit_mynetworks
first in smtpd_*_restrictions
, because usually you want systems in mynetworks
to be unrestricted in where they can send mail. Keep mynetworks
as narrow as possible (probably localhost
only), better to set up many accounts and authenticate everything.
Strictly speaking plaintext authentication is orthogonal to the TLS support; there are zero knowledge proof authentication schemes (e.g. CHAP, DIGEST, SRP) which don't transmit password over the wire, either in plain text or encrypted form. They provide resilient authentication even when there is no transport encryption. This is configured outside of Postfix, in the SASL configuration. I don't have any experience with Dovecot SASL library. You don't need it very much, because your submission
configuration enforces TLS.