Existem dois métodos comuns para usar o postfix SASL com o MySQL:
- Usando o serviço saslauthd combinado com o pam_mysql
- Usando o auxprop sasl com o plugin sql
Infelizmente, o segundo método tem grave inconveniente de segurança : você deve armazenar a senha em texto sem formatação < formato / strong>. Então, no seu caso, você precisa usar o saslauthd e o pam_mysql.
Na sua configuração acima, você misturou esses dois métodos: em pwcheck_method
você colocou o saslauthd, mas configurou o sasl para usar auxprop_plugin
com o sql. O pwcheck_method
irá sobrescrever isso, então o parâmetro auxprop_plugin (e todos os seus parâmetros sql_*
) se tornam inúteis. Isso explica por que você recebe uma consulta incorreta. Em vez disso, o SASL executará a consulta fornecida /etc/pam.d/smtp
. Para satisfazer sua necessidade, coloque o parâmetro adicional where
na configuração pam
... passwdcolumn=crypt crypt=1 debug where=enabled=1
... passwdcolumn=crypt crypt=1 debug where=enabled=1
E, para o problema do domínio em falta ( %r
), tente definir smtpd_sasl_local_domain
como seu domínio padrão.