Eu posso - com alguns futzing - obter a autenticação SMTP de texto sem formatação desabilitada via Server.app, embora ela não fique muito bem (certamente não sobrevive a uma reinicialização ou reinicialização do serviço Mail, e às vezes até se perde enquanto cutucando no Server.app). Percebi que, como uma solução temporária, posso pelo menos notificar automaticamente se o 'PLAIN' & A autenticação SMTP de texto simples 'LOGIN' é reativada.
Preparei o seguinte script rápido que faz o trabalho:
#!/bin/bash
#
# smtp_plaintext_auth_check - check to see if plaintext auth is supported by SMTP service and warn if it is
#
# v0.1 2015-03-12 - Morgan Aldridge <http://serverfault.com/users/13496/morgant>
# Initial version.
#
admin_emails="[email protected]"
debug=false
host=$(hostname)
date=$(date +%Y-%m-%d-%H%M)
plaintext_auth_enabled=false
# check via serveradmin to see if plaintext auth is allowed by the SMTP server
if $debug; then echo "Checking Mail service to see if SMTP plaintext auth is supported..."; fi
while IFS= read -r line; do
if [[ "$line" =~ (plain|login) ]]; then
if $debug; then echo " Found '${BASH_REMATCH[1]}' SMTP auth method which is plaintext!"; fi
plaintext_auth_enabled=true
fi
done <<< "$(serveradmin settings mail:postfix:smtpd_pw_server_security_options)"
# if plaintext auth is enabled, notify admins
if $plaintext_auth_enabled; then
if $debug; then echo "Notifying admins via email that SMTP plaintext auth IS supported. That's bad!"; fi
mail -s "Error on $host: SMTP plaintext auth is allowed! $date" $admin_emails <<-EOM
ERROR on $host: SMTP plaintext auth appears to be allowed by the Mail service! This is a security risk and against PCI DSS compliance!
Please resolve ASAP!
EOM
else
if $debug; then echo "Phew, SMTP plaintext auth doesn't appear to be supported. That's good."; fi
fi
Novamente, é uma solução alternativa e eu prefiro muito mais desativar programaticamente a autenticação em texto sem formatação SMTP.