Você precisa definir auth_advertise_hosts
de tal forma:
. . . . . .
daemon_smtp_ports = 25 : 465 : 587
tls_advertise_hosts = *
tls_on_connect_ports = 465 : 587
auth_advertise_hosts = localhost : ${if eq{$tls_cipher}{}{nope}{*}}
. . . . . .
Se o remetente usar o TLS auth_advertise_hosts
será expandido para o localhost : *
. Caso contrário, auth_advertise_hosts
será expandido para o localhost : nope
. Localhost será convidado a autenticar de qualquer maneira, enquanto outros hosts somente quando eles forem usados TLS (porque o padrão nope
não corresponderá a nenhum host real).