<source>set by the Hub
The PLAIN authentication mechanism transmits the login and password in an encoding, not a cipher: reading them from intercepted traffic takes one command. The line decides whether it can be used on an unencrypted connection.
The default is false, that is, not allowed by default. This is the right default, and it is usually turned on for compatibility with a platform that otherwise does not connect.
The other side of the same hole is require-starttls-before-auth. One line forbids a specific mechanism without encryption, the other requires encryption before any authentication. They should be looked at together.
The value is boolean, and it has to be read together with its neighbor:
| This line | require-starttls-before-auth | Password in the clear |
|---|---|---|
| no (default) | not set | no for PLAIN, possible for other mechanisms |
| yes | not set | yes |
| yes | true | no: authentication only over an encrypted connection |
| no | true | no, with a margin |
If you had to turn it on — turn it on together with the requirement for encryption before authentication. Then the permission applies to connections that are encrypted anyway.
# compatibility plus protection: the permission works only inside encryption <source 0/0> allow-starttls true require-starttls-before-auth true allow-unencrypted-plain-auth yes</source>
what people get wrong and how it ends1 mistake▶
our experience
2 relations
printf 'EHLO test\r\nQUIT\r\n' | nc localhost 25 | grep -i "AUTH"
3 articles
◇Who is allowed to submit mail and for whom to accept itOut of the box, the node accepts submission only from the machine itself; two different questions — “who can send through us” and “for whose addresses we accept mail” — are answered by different directives.◇The group that grants management rightsMembership in the pmta group gives an unprivileged user the right to call the node’s commands and use submission.◇How the node selects a source and combines its settingsA connection falls under all source blocks whose addresses cover it, and they act merged — the narrow one overrides the wide one; named blocks are attached only by direct reference.