autenticación smtp de sendmail simple, ¿por qué falla la autenticación?

autenticación smtp de sendmail simple, ¿por qué falla la autenticación?

En sendmail hice esto para que smtp auth sasl se esté ejecutando

root      1609     1  0 05:16 ?        00:00:00 /usr/sbin/saslauthd -a pam -c -m /var/run/saslauthd -n 5
root      1610  1609  0 05:16 ?        00:00:00 /usr/sbin/saslauthd -a pam -c -m /var/run/saslauthd -n 5
root      1611  1609  0 05:16 ?        00:00:00 /usr/sbin/saslauthd -a pam -c -m /var/run/saslauthd -n 5
root      1612  1609  0 05:16 ?        00:00:00 /usr/sbin/saslauthd -a pam -c -m /var/run/saslauthd -n 5
root      1613  1609  0 05:16 ?        00:00:00 /usr/sbin/saslauthd -a pam -c -m /var/run/saslauthd -n 5

Sasl sendmail está configurado (/usr/lib/sasl2/sendmail.conf)

pwcheck_method: saslauthd
mech_list: LOGIN PLAIN

He configurado sendmail smtp como este

define(`confAUTH_MECHANISMS', `LOGIN PLAIN DIGEST-MD5 CRAM-MD5')dnl
TRUST_AUTH_MECH(`LOGIN PLAIN DIGEST-MD5 CRAM-MD5')dnl

Por supuesto, compilé el archivo y reinicié Sendmail. La autenticación SMTP parece estar funcionando (telnet localhost).

250-ENHANCEDSTATUSCODES
250-PIPELINING
250-8BITMIME
250-SIZE 2097152
250-DSN
250-ETRN
250-AUTH LOGIN PLAIN
250-STARTTLS
250-DELIVERBY
250 HELP

Cuando lo hago, el inicio de sesión de autenticación solicita un usuario codificado en base64, lo pongo, luego la contraseña, la pongo y doy

535 5.7.0 authentication failed

para convertir a base64 uso este script

#!/usr/bin/perl
use strict;
use MIME::Base64;
print encode_base64("$ARGV[0]");
exit 0;

Por supuesto, el usuario saslpasswd2 recibió primero ¿Alguna sugerencia?

Respuesta1

Solución encontradaaquí

En lugar de usar -a pam para saslauthd, use -a sasldb como este

saslauthd  -a sasldb

información relacionada