Dizendo o sendmail para auth?

6

Estou aqui há algumas horas tentando fazer com que o sendmail envie os e-mails por meio de um servidor SMTP externo. Eu cheguei muito perto, mas agora estou completamente preso. Parece que o sendmail não está enviando as informações de autenticação que eu configurei. Existe alguma linha de configuração que está faltando?

Por favor ajude. : (

Executando o CentOS 5.7

EDITAR :

Como solicitado, adicionarei algumas coisas do meu sendmail aqui.

Onde especifiquei para usar informações de autenticação:

FEATURE(authinfo',hash -o /etc/mail/auth/client-info.db')dnl

/ etc / mail / auth / client-info:

AuthInfo:in.mailjet.com "U:myusername" "P:mypassword" "M:PLAIN"

Tentando enviar um email:

# sendmail -AM -t -v
to:[email protected]
from:[email protected]
.
[email protected]... Connecting to in6.mailjet.com. via relay...
220 in6.mailjet.com ESMTP Mailjet
>>> EHLO mydomain.com
250-in6.mailjet.com
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-AUTH PLAIN LOGIN DIGEST-MD5 CRAM-MD5
250-AUTH=PLAIN LOGIN DIGEST-MD5 CRAM-MD5
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
>>> STARTTLS
220 2.0.0 Ready to start TLS
>>> EHLO mydomain.com
250-in6.mailjet.com
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-AUTH PLAIN LOGIN DIGEST-MD5 CRAM-MD5
250-AUTH=PLAIN LOGIN DIGEST-MD5 CRAM-MD5
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
>>> MAIL From:<[email protected]> SIZE=37
250 2.1.0 Ok
>>> RCPT To:<[email protected]>
>>> DATA
554 5.7.1 <[email protected]>: Relay access denied
554 5.5.1 Error: no valid recipients
>>> RSET
250 2.0.0 Ok
/root/dead.letter... Saved message in /root/dead.letter
Closing connection to in6.mailjet.com.
>>> QUIT
221 2.0.0 Bye
    
por Rob 15.02.2012 / 10:53

4 respostas

1

eu tive o mesmo problema. Finalmente fiz isso com várias configurações.

/etc/mail/sendmail.mc
    define('SMART_HOST','smtp.yourdomain.com')dnl
    define('confAUTH_OPTIONS','A')dnl
    FEATURE('authinfo','hash -o /etc/mail/authinfo.db')dnl
    MASQUERADE_AS('yourdomain.com')dnl
    FEATURE(masquerade_envelope)dnl
    FEATURE(masquerade_entire_domain)dnl
    MASQUERADE_DOMAIN('yourdomain.com.')dnl
    FEATURE('relay_based_on_MX')dnl
    FEATURE('genericstable')dnl
    GENERICS_DOMAIN('localhost.localdomain')dnl

/etc/mail/authinfo (660 permissions)
    Authinfo:yourdomain.com "U:yoursmtpuserid" "P:yourpassword" "M:PLAIN"
    Authinfo: "U:yoursmtpuserid" "P:yourpassword" "M:PLAIN"

>makemap hash /etc/mail/authinfo < /etc/mail/authinfo

/etc/mail/access (660 permissions)
    connect:localhost.localdomain RELAY
    connect:localhost RELAY
    connect:127.0.0.1 RELAY

>makemap hash /etc/mail/access < /etc/mail/access


/etc/genericstable
    root [email protected]

>makemap hash /etc/mail/genericstable < /etc/mail/genericstable


/etc/named.conf
    options{
          listen-on port 53 {127.0.0.1;};
    };

>cp -f /etc/named.conf /var/named/chroot/etc/

/etc/resolve.conf
    nameserver  127.0.0.1
    nameserver  youriplocal
    domain      localdomain

>chkconfig -> named on
          -> saslauthd on
          -> sendmail on

>service named restart
>service saslauthd restart
>service sendmail restart

Para testá-lo, você pode executar:

sendmail -Am -t -v to:emaildestination from:youremail

Espero que funcione para você.

    
por 09.05.2013 / 11:10
0

Para o sendmail, geralmente gerencio a autenticação SMTP adicionando uma entrada em /etc/mail/access . Um exemplo rápido para sua configuração está aqui:

# /etc/mail/access
# by default we allow relaying from localhost...
localhost.localdomain           RELAY
localhost                       RELAY
127.0.0.1                       RELAY
AuthInfo:in.mailjet.com "U:smmsp" "I:myusername" "P:mypassword" "M:PLAIN"

Salve e reinicie o daemon do sendmail, /sbin/service sendmail restart .

    
por 15.02.2012 / 23:20
0

Você executou:

makemap hash client-info < client-info

A menos que você construa o arquivo client-info.db a partir do texto que usa o comando acima, a informação que está lá não é lida pelo sendmail

EDIT # 1:

Do livro de morcegos eu copio isso:

When sendmail connects to another host, and that other host offers to authenticate, that connected-to host’s IP address, hostname, and domain are looked up in the database.

If the IP address, host, or domain is not found, the connection is allowed, but sendmail will not attempt to authenticate it. Otherwise, the information in the matching right column is returned for sendmail to use.

Você está se conectando ao in6.mailjet.com, que é um MX do in.mailjet.com. Então talvez você tenha que mudar sua linha AuthInfo: para:

AuthInfo:mailjet.com "U:myusername" "P:mypassword" "M:PLAIN"

EDIT # 2:

Você parece ter um erro de digitação menor na declaração FEATURE (authinfo):

FEATURE('authinfo', 'hash -o /etc/mail/auth/client-info.db')dnl
    
por 19.02.2012 / 03:18
0

Remova -o (opcional) do recurso authinfo e reinicie / recarregue o sendmail. Isso fará com que o sendmail se recuse a iniciar sem acesso ao authinfo map / file.

FEATURE('authinfo','hash ...')

Repita o envio de e-mails de teste com pesquisas de mapa de rastreamento (inclui rastreamento de pesquisas de mapas authinfo)

sendmail -d60.5 -AM -t -v

O sendmail procura por entradas authinfo? [A resposta deve estreitar lista de possíveis problemas]

    
por 13.03.2013 / 15:05