Busca


imprimir pdf

Servidores de e-mail : Problemas e Soluções


Sobre os servidores dedicados, pré-instalámos um servidor de e-mail qmail
http://www.qmail.org

Qmail tem os seguintes patchs:

  • patch tls que permite enviar os e-mails com um encriptação ssl,
  • patch spamcontrol.

Antes de começar


O servidor de e-mail é um software que têm por objectivo aceitar os e-mails sobre o porto 25 via protocolo SMTP. Para saber como funciona o protocolo SMTP, eis o url do RFC http://www.ietf.org/rfc/rfc0821.txt.

Eis um exemplo de comunicação em SMPT no porto 25 :

$ telnet mx3.ovh.net 25 Resolution du mx3.ovh.net
Trying 213.186.33.73...
Connected to mx3.ovh.net.
Escape character is ']'.
220 Welcome ! You are on server 8 called mx3.ovh.net, spam protected: www.spam-rbl.com ESMTP
HELO ping.ovh.net On se presente
250 Welcome ! You are on server 8 called mx3.ovh.net, spam protected: www.spam-rbl.com
MAIL FROM: On dit qui envoit l'email
250 ok
RCPT TO: On dit vers qui on veut envoyer l'email
250 ok acceptation
DATA
354 go ahead
test le corps de l'email. habituellement il faut mettre les champs FROM, TO, SUBJECT
.
250 ok 1065864990 qp 27338
QUIT on quitte
221 Welcome ! You are on server 8 called mx3.ovh.net, spam protected: www.spam-rbl.com
Connection closed by foreign host.


2 comentários :

  • o email foi aceite pelo servidor mx3.ovh.net. porque ? 2 soluções : quer porque o ip de onde fizemos a ligação sabe que ping.ovh.net 213.186.33.13 pode fazer relay dos e-mails via mx3.ovh.net, quer porque mx3.ovh.net é o servidor MX d'ovh.net,
  • as informações em DATA devem ser normalmente o e-mail em si, ou seja ter a forma de um e-mail :

From: oles@ovh.net
To: oles@ovh.net
Subject: test

test


Relay


A função a mais simples do servidor de e-mail é o relay (reenvio) que consiste :

  • em aceitar o e-mail e então enviar 250 ok's depois de RCPT TO,
  • em pôr o e-mail no spool ou na queue,
  • em reenviar o e-mail para o servidor MX do destinatário.

É um servidor SMTP que vai tratar de distribuir os e-mails para Internet.

Os fornecedores de acesso propõem este género de servidores. Qualquer servidor SMTP também sabe distribuir os e-mails.

A primeira etapa foi apresentada na secção "antes de começar". Isto consiste simplesmente em aceitar o e-mail. O problema fica complexo com a gestão do spam que será apresentado a seguir.

É o processo qmail-smtp que trata desta função. O seu papel é de saber comunicar em SMTP e saber guardar o e-mail sob a forma de um ficheiro no disco rígido.

A segunda etapa consiste em armazenar os e-mails nos discos esperando a terceira etapa. Para ver o estado do spool :

# /var/qmail/bin/qmail-qstat
queue
messages in queue: 360
messages in queue but not yet preprocessed: 0


Isto quer dizer que há 360 e-mails que o servidor de e-mail enviou 1 vez mas visivelmente, que o destinatário não existe ou que o servidor MX do destinatário não funciona correctamente.

Devemos assinalar que existe muitas vezes problemas de tempo de resposta do servidor relay quando há muitos e-mails no spool. O qmail fica muito lento com mais de 25000 e-mails no spool. Neste caso, a preparação do e-mail fica cada vez mais lenta e as "messages in queue but not yet preprocessed" aumentam.

Para ver os e-mails:

# /var/qmail/bin/qmail-qread | grep remote | grep -v done
remote dr_adams@sm66.com
remote 66-2434019-directway.com?amysummers@trailerr.trailblazernews.com
remote 2245031-5-reply@msgbnc.tgtrewards.net
remote response@sleekzine.com
remote larhondabeirne@hushmail.com
...


Porque estes e-mails estão aqui ? Estes e-mails podem estar aqui porque :

  • o servidor de relay aceitou em revezar (reenviar), mas o destinatário não existe RCPT TO,
  • o servidor de relay aceitou em revezar (reenviar), mas o servidor MX do destinatário não existe,
  • o servidor de relay aceitou em revezar (reenviar), mas o servidor MX do destinatário não funciona,
  • o servidor MX aceitou o e-mail mas a conta pop3 local não existe e então tentamos reenviar o e-mail para o expedidor com o erro mas :
  • o destinatário não existe (MAIL FROM do e-mail inicial),
  • o servidor MX do destinatário não existe.

É qmail-send que trata da gestão da queue para todo qmail. O seu papel é de guardar os ficheiros que o qmail-smtp deixou e distribui-los. Ele tem a escolha entre utilizar uma distribuição local (no caso em que o destinatário se encontra sobre a maquina ela-mesmo, ou seja que o servidor é o servidor MX do e-mail e existe uma conta pop3/imap por exemplo sobre a maquina ou remote (distante ; ou seja revezar(reenviar) o e-mail para o destinatário do e-mail)).

A terceira etapa consiste em enviar o e-mail ao destinatário. O e-mail é então pegado do spool para saber qual é o destinatário. Qmail procura os servidores MX do domínio e liga-se sobre o porte 25 para enviar o e-mail. Esta operação é a mesma que ao principio.

Podemos ter vários MX num domínio com o mesmo peso ou um peso diferente. Neste caso, o servidor SMTP tenta num primeiro tempo ligar-se sobre o servidor MX com um peso mais fraco. Se 2 MX têm o mesmo peso então o que saiu primeiro no pedido DNS vai ser utilizado em primeiro.

Ao nível dos erros, veja a secção erro.

Cada operação de relay é guardada nos cabeçalhos do e-mail (header). Podemos ver aqui, de onde e por qual servidor de e-mail foi enviado o e-mail :

Delivered-To: ovh.net-60gp@ovh.net
Received: (qmail 15496 invoked by uid 505); 11 Oct 2003 09:22:30 -0000
Received: from unknown (HELO 200-102-028-198.fnsce7005.dsl.brasiltelecom.net.br) (200.102.28.198)
by mx4.ovh.net with SMTP; 11 Oct 2003 09:22:28 -0000


A leitura faz-se de baixo para cima. Vemos que o e-mail foi enviado desde 200.102.28.198 que se ligou sobre mx4.ovh.net e que o e-mail chegou a conta 60gp@ovh.net.

Ver os cabeçalhos forjados na secção spam.

Para ver o funcionamento do seu servidor e-mail pode ver os logs. Por defeito só tem os logs da terceira etapa :

# tail -f /var/log/qmail/current
@400000003f87e06f3172d234 end msg 195408
@400000003f87e07005d90c24 delivery 3534821: deferral: Sorry,4_I_wasn't_able_to_establish_an_SMTP_connection._(#4.4.1)/
@400000003f87e07005d91fac status: local 0/15 remote 1/120
@400000003f87e0740c22b274 new msg 195408
@400000003f87e0740c22be2c info msg 195408: bytes 1580 from qp 30987 uid 503
@400000003f87e0740c7fb6f4 starting delivery 3534823: msg 195408 to local hfifi-geefnie.com-studio@hiffi-gefenie.com
@400000003f87e0740c7fc694 status: local 1/15 remote 1/120
@400000003f87e0741c7b34d4 delivery 3534823: success: did_0+0+1/
@400000003f87e0741c7b4474 status: local 0/15 remote 1/120
@400000003f87e0741c7b485c end msg 195408


status: local 0/15 remote 1/120 quer que a distribuição spool->local (as contas pop3)
qmail utiliza 0 ligação sobre 15 e sobre spool->remote (a terceira etapa) 1 sobre 120

Atenção : o ficheiro move-se ou seja, se ele atinge um certo tamanho, deveremos voltar a fazer tail para ter os logs.
"Também pode utilizar o comando tail -f que reabre o ficheiro quando ele se move"

Quem pode revezar ?


Para gerir a função relay, tem que se gerir os ip dos utilizadores que podem utilizar esta função. Se permite a todos os ip que reenviem, num momento a sua maquina será utilizada como um servidor de relay para os spammers.

Para gerir isto, tem um ficheiro que se chama /etc/tcp.smtp

# cat /etc/tcp.smtp
127.0.0.:allow,RELAYCLIENT=" "
:allow


Isto quer dizer que :

todos os e-mails que chegam dosIP 127.0.0.X são reenviados.
todos os e-mails que chegam de outros ip são aceites unicamente se o destinatário estiver configurado sobre a maquina (ver o servidor MX).

Pode então adicionar um IP á sua escolha (por exemplo se tem um ip fixo da sua empresa ou Ip fixo em adsl) e compilar tcp.smtp :

# tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp


As modificações feitas são assim implementadas no ficheiro /etc/tcp.smtp.cdb que é utilizado pelo servidor smtp. Não precisa de reiniciar o servidor smtp. O ficheiro é lido a cada ligação smtp.

No caso dos fornecedores de acesso, as classes IP são postas em duro sobre os servidores smtp o que permite aos clientes do fornecedor de acesso, de utilizar automaticamente o servidor smtp de relay sem mais nenhuma configuração.

A opção open-smtp consiste em utilizar o servidor de pop3/imap para identifica-lo sobre o servidor pop3. O facto de utilizar login e password permite-lhe estar seguro que se trata de uma pessoa de confiança e então permitir-lhe fazer o relay. Durante a operação de pop3/imap o servidor pop3 grava o IP de ligação, actualiza-lo em /etc/tcp.smtp e compila /etc/tcp.smtp.cdb.

# cd /etc/vpopmail/
  1. ls -l
total 696
-rw-r-r- 1 vpopmail vchkpw 25 fév 24 2003 inc_deps
-rw-r-r- 1 vpopmail vchkpw 32 fév 24 2003 lib_deps
-rw-r-r- 1 root root 700229 oct 11 13:22 open-smtp
-rw-r-r- 1 root root 0 oct 11 13:22 open-smtp.lock


Todos os IP temporários são armazenados em open-smtp :

# head -n 5 open-smtp
213.41.188.249:allow,RELAYCLIENT=" ",RBLSMTPD=" " 1029581749
213.41.184.98:allow,RELAYCLIENT=" ",RBLSMTPD=" " 1029782162
213.41.184.135:allow,RELAYCLIENT=" ",RBLSMTPD=" " 1029880909
213.41.186.107:allow,RELAYCLIENT=" ",RBLSMTPD=" " 1029960881
213.41.186.122:allow,RELAYCLIENT=" ",RBLSMTPD=" " 1030146813


O último número é a hora em segundos desde 1970 e permite saber quando o IP utilizou o pop3/imap pela utiltima vez. E então isto permite a outro script /home/vpopmail/bin/clearopensmtp de ver todos os IP mais antigos que 3 horas e de os tirar do /etc/tcp.smtp.

# cat /etc/crontab
...
40 * * * * root /home/vpopmail/bin/clearopensmtp 2>&1 >/dev/null


Atenção : o utilizador deve estar bem indicado e então pôr

40 * * * * root /home/vpopmail/bin/clearopensmtp 2>&1 >/dev/null

e não

40 * * * * /home/vpopmail/bin/clearopensmtp 2>&1 >/dev/null

A proposito, neste caso, vemos que sobre esta maquina o ficheiro open-smtp é particularmente grande.

# wc -l open-smtp
11859 open-smtp


11859 IP é muito. É devido ao facto que não ha utilizador indicado no crontab. Corrigimos o erro em crontab e executamos clearopensmtp.

# ls -l open-smtp
-rw-r--r-- 1 root root 700229 oct 11 13:29 open-smtp
  1. /home/vpopmail/bin/clearopensmtp
  2. ls -l open-smtp
-rw-r--r-- 1 vpopmail vchkpw 529 oct 11 13:29 open-smtp
  1. wc -l open-smtp
9 open-smtp
  1. cp /etc/crontab /etc/crontab.OLD
  2. pico /etc/crontab
  3. /etc/rc.d/init.d/crond restart
Arrêt de crond : OK
Démarrage de crond : OK
  1. diff -u /etc/crontab.OLD /etc/crontab
- /etc/crontab.OLD Sat Oct 11 13:31:15 2003
+ /etc/crontab Sat Oct 11 13:31:24 2003 42 4 1 * * root run-parts /etc/cron.monthly
  1. vpopmail
-40 * * * * /home/vpopmail/bin/clearopensmtp 2>&1 >/dev/null
+40 * * * * root /home/vpopmail/bin/clearopensmtp 2>&1 >/dev/null

Assim está melhor. As permissões do open-smtp também mudaram. Não é grave.

Se têm o servidor pop3/imap muito carregado com mais de 3000-4000 ligações/hora, aconselhamos-lhe de utilizar o patch osd (Open-Smtp-Dir) que se pode encontrar em ftp://ftp.ovh.net/made-in-ovh/vpopmail. Este patch foi realizado pela OVH e consiste em não utilizar o ficheiro open-smtp com o sistema de lock (bloqueio do IP). Se muitas pessoas se ligam sobre o servidor pop3/imap têm de esperar cada uma a sua vez para ter acesso ao ficheiro para gravar o IP, o que abranda o servidor. Em vez de isso, tivemos a ideia de utilizar um directorio com as gravações dos ficheiros com o nome do IP e um tamanho 0. A cada nova ligação, actualizamos a data do ficheiro e um tmpwatch apaga os ficheiros mais velhos do que 3 horas. Outro script actualiza /etc/tcp.smtp cada segundos.

Para evitar de utilizar pop3 antes de poder enviar os e-mails podemos patchar qmail com o patch smtp-auth. Este patch permite enviar via uma ligação smtp login e password de uma conta pop3 e então permitir o envio dos e-mails :

# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is '
]'.
220 Welcome ! You are on server 1 called mx1.ovh.net, spam protected: www.spam-rbl.com ESMTP
EHLO ping.ovh.net
250-Welcome ! You are on server 1 called mx1.ovh.net, spam protected: www.spam-rbl.com

250-AUTH LOGIN CRAM-MD5 PLAIN
250-AUTH=LOGIN CRAM-MD5 PLAIN
250-PIPELINING
250-STARTTLS
250-8BITMIME
250 SIZE 10000000
AUTH LOGIN
334 VXNlcm5hbWU6
cG9zdG1gregreRlciVtbC5vdmgubmV0
334 UGFzc3dvcmQ6
errrob3Zo
235 ok, go ahead (#2.0.0)
MAIL FROM:
250 ok
RCPT TO:
250 ok
DATA
354 go ahead
truc
.
250 ok 1065758232 qp 5296
QUIT
221 Welcome ! You are on server 1 called mx1.ovh.net, spam protected: www.spam-rbl.com
Connection closed by foreign host.


Vimos que em vez de HELO, enviamos EHLO o que permite utilizar os comandos evoluidos de ESMTP descritos em http://www.ietf.org/rfc/rfc2821.txt. O servidor responde a EHLO com todas as opções que aceita ou seja ;
250-AUTH LOGIN CRAM-MD5 PLAIN trata-se de smtp-auth
250-AUTH=LOGIN CRAM-MD5 PLAIN
250-PIPELINING define o tipo de dialogo
250-STARTTLS ssl ou tls ou ligação encriptada
250-8BITMIME aceitação dos e-mails em 8bits e não 7bit como smtp
250 SIZE 10000000 o tamnho maximo do e-mail é de 10Mb


O login e a password são enviados em base64. Não é preciso inverter as correntes enviadas para conhecer as minhas password, elas estão erradas.

A instalação deste patch é complexo e necessita algumas astucias que estão aqui fora do assunto Agradecemos que não contacte o suporte para as ter, mas fale nisso na mailing-list.

Também pode implementar os IP das maquinas destinatário em duro na configuração de qmail. Isto é muito util quando, por exemplo o servidor MX em frente não está acessível (como por exemplo caramail.com). Neste caso, podemos dizer ao servidor de utilizar um servidor smtp especial cujo papel é de reenviar os e-mails para caramail.com unicamente.

  1. cat /var/qmail/control/smtproutes
caramail.com:213.186.33.9

Assim, todos os e-mails para caramail vão ser redencaminhados para 213.186.33.9 que vai tratar, ele, da distribuição dos e-mails para caramail.com. Assim, evitamos de ter um spool de e-mail demasiados importantes e descarregamos as maquinas. Claro que 213.186.33.9 tem de aceitar os e-mails a partir do e-mail de onde reenviamos os e-mails mas confiamos no administrador para ter configurado como deve ser os servidores. Não é preciso reiniciar o servidor após uma modificação.

É o process qmail-remote que trata de ligar os servidores sobre o porto 25 e reenviar os emails.

Servidor MX


Os e-mails, mais cedo ou mais tarde, devem chegar ao servidor MX de destino. Ou seja o que vai armazenar o e-mail esperando de ser consultado em servidor pop3 ou servidor imap. Neste caso, o servidor e-mail aceita o e-mail e faz exactamente a mesma coisa no caso de relay. E a terceira etapa que muda.

Na terceira etapa, o processo qmail-sent detectou que o destinatário existe sobre a maquina. Recordamos que é o processo qmail-sent que trata aa segunda etapa de gerir o spool. Ele carrega então as listas de todos os dominios que se encontram sobre a maquina. Estas linhas estão em :

# ls -l /var/qmail/users/assign
-rw-r--r-- 1 root root 24546 oct 9 10:32 /var/qmail/users/assign


Sobretudo NÃO modifique estes ficheiros a mão. Eles têm uma forma especial e ha sempre um ficheiro cdb que deve ser compilado.

# head -n 4 /var/qmail/users/assign
+00-00l0-00l00l-0-0.com-:00-00l0-00l00l-0-0.com:508:503:/home/vpopmail/domains/00-00l0-00l00l-0-0.com:-
+00h01.com-:00h01.com:508:503:/home/vpopmail/domains/00h01.com:-
+01emarket.com-:01emarket.com:508:503:/home/vpopmail/domains/01emarket.com:-::

E então, se o destinatario se encontra sobre a maquina, qmail-sent utiliza qmail-local para distribuir o e-mail que se encontra localmente para o directorio correcto. Dentro, devemos encontrar um ficheiro .qmial-default onde é o wpopmail que se encarrega da distribuição do e-mail com todo o sistema de reencaminhamentos, alias, mailing-lists, catch-all e contas pop3 com uma gestão de quota.

Configuração MX


Têm estas informações neste guia : VpopmailEAdministracao.

Parametrizar Qmail


Tamanho do ficheiro maximo

# echo "10000000" > /var/qmail/control/databytes

Todos os e-mails que têm o tamanho maior que 10Mb vão ser rejeitados.

Tempo de vida de um e-mail no spool :

# echo "846000" > /var/qmail/control/queuelifetime

Se o e-mail fica no spool durante 10 dias e que ainda não foi reenviado então ele é devolvido com um erro duplo para a conta do postmaster da maquina, então o e-mail é retornado ao cabo de 5 dias.

Refusar os e-mails um certo MAIL FROM :

# echo "spammeur@spam" > /var/qmail/control/badmailfrom

No momento do dialogo SMTP, o servidor smtp em frente comunica por MAIL FROM. Podemos recusar certos MAIL FROM o que evita a recepção de certos spam ou virus que têm um expeditor fixo.
Atenção : não tem nada a ver com os campos From: To: Subject: do e-mail.

Erros


Sorry,_I_wasn't_able_to_establish_an_SMTP_connection=

Uma tentativa de envio para dr_adams@sm66.com.
Interrogamos os servidores dns para conhecer o MX :

# dig sm66.com mx

; <<>> DiG 9.2.1 <<>> sm66.com mx
; global options
printcmd

;; Got answer:
; ->>HEADER<<- opcode
QUERY, status: NOERROR, id: 32527

; flags
qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0


;; QUESTION SECTION:
;sm66.com. IN MX

;; ANSWER SECTION:
sm66.com. 86400 IN MX 10 mail.sm66.com.

; Query time
396 msec

; SERVER
127.0.0.1#53(127.0.0.1)

; WHEN
Sat Oct 11 12:09:00 2003

; MSG SIZE rcvd
47


Se utiliza djbdns, podemos utilizar directamente dnsmx.

# dnsmx sm66.com
10 mail.sm66.com


O servidor de e-mails que gere todos os e-mail @sm66.com é mail.sm66.com Vamos então tentar enviar o e-mail :

# telnet mail.sm66.com 25
Trying 66.239.204.101...
Connected to mail.sm66.com.
Escape character is '
]'.
421 newd1.sm66.com out of connection slots
Connection closed by foreign host.


Ai ! Visivelmente o servidor não funciona correctamente. Podemos ver a mensagem de erro (seria simpático de o dar) : out of connection slots, o que nos deixa pensar que há demasiadas ligações sobre este servidor neste momente. Qmail vai voltar a tentar enviar o e-mail mais tarde.

Outro exemplo : 66-2434019-directway.com?amysummers@trailerr.trailblazernews.com
Hmmm... é parecido com um e-mail de spam.

# dnsmx trailerr.trailblazernews.com
10 stdin-mv-01.trailblazernews.com
  1. telnet stdin-mv-01.trailblazernews.com 25
Trying 206.131.244.8...
telnet: connect to address 206.131.244.8: Ligação recusada


O servidor MX esta presente na Internet mas não há servidor SMTP que funcione e então não podemos ligar-nos ao porto 25.

# ping stdin-mv-01.trailblazernews.com
PING stdin-mv-01.trailblazernews.com (206.131.244.8) from xxxxxxx : 56(84) bytes of data.
64 bytes from news1mv.trailblazernews.com (206.131.244.8): icmp_seq=0 ttl=240 time=83.048 msec
64 bytes from news1mv.trailblazernews.com (206.131.244.8): icmp_seq=1 ttl=240 time=81.381 msec

stdin-mv-01.trailblazernews.com ping statistics

3 packets transmitted, 2 packets received, 33% packet loss
round-trip min/avg/max/mdev = 81.381/82.214/83.048/0.881 ms
  1. telnet stdin-mv-01.trailblazernews.com
Trying 206.131.244.8...
Connected to stdin-mv-01.trailblazernews.com.
Escape character is '
093~'.
Red Hat Linux release 7.2 (Enigma)
Kernel 2.4.7-10 on an i686
login:
Login incorrect

login:
Login incorrect

login:
Login incorrect

login:
Connection closed by foreign host.


Outro exemplo: response@sleekzine.com

# dnsmx sleekzine.com
20 mail2.sleekzine.com
30 mail3.sleekzine.com
10 mail1.sleekzine.com


Ha 3 servidores MX com um peso diferente para cada servidor. Qmail vai então tentar mail1.sleekzine.com que têm o peso mais fraco, e mail2.sleekzine.com, e mail3.sleekzine.com.

# telnet mail1.sleekzine.com 25
Trying 216.93.189.135...
telnet: connect to address 216.93.189.135: Ligação acabado por expiração do prazo de espera
  1. telnet mail1.sleekzine.com 25
Trying 216.93.189.135...
telnet: connect to address 216.93.189.135: Ligação acabado por expiração do prazo de espera
  1. telnet mail3.sleekzine.com 25
Trying 216.93.189.133...
telnet: connect to address 216.93.189.133: Ligação recusada


Vamos ver o que vai fazer qmail com um e-mail como este ;

# echo "test" | mail -s "test" response@sleekzine.com
  1. ps auxw
...
qmailr 7066 0.0 0.5 2568 736 ? S 15:04 0:00 qmail-remote sleekzine.com root@nsxxxx.ovh.net response@sleekzine.com
...
  1. tail -f /var/log/qmail/current
@400000003f880003024f7034 new msg 66208
@400000003f880003024fbe54 info msg 66208: bytes 229 from qp 7065 uid 0
@400000003f88000303f530f4 starting delivery 67496: msg 66208 to remote response@sleekzine.com
@400000003f88000303f5447c status: local 0/10 remote 1/20
@400000003f88003f221f1d74 delivery 67496: deferral: Sorry,7_I_wasn't_able_to_establish_an_SMTP_connection._(#4.4.1)/
@400000003f88003f221f30fc status: local 0/10 remote 0/20


553 sorry, that domain isn't allowed to be relayed thru this MTA

Se o servidor não reenvia o e-mail isto quer dizer que :

  • o ip de ligação não esta em /etc/tcp.smtp (ver secção relay),
  • o destinatario não têm conta sobre a maquina (ver secção mx).

$ telnet mx1.ovh.net 25
Trying 213.186.33.29...
Connected to mx1.ovh.net.
Escape character is '
]'.
220 Welcome ! You are on server 2 called mx1.ovh.net, spam protected: www.spam-rbl.com ESMTP
HELO ping.ovh.net
250 Welcome ! You are on server 2 called mx1.ovh.net, spam protected: www.spam-rbl.com
MAIL FROM:
250 ok
RCPT TO:
553 sorry, that domain isn't allowed to be relayed thru this MTA (#5.7.1)
QUIT
221 Welcome ! You are on server 2 called mx1.ovh.net, spam protected: www.spam-rbl.com
Connection closed by foreign host.


Neste caso, podemos adivinhar com facilidade que a conta wanadoo.fr não é gerida sobre mx1.ovh.net e que se trata simplesmente de um problema de relay : o IP de ligação não está declarado em /etc/tcp.smtp (ver secção relay).

Se a conta deve ser declarada sobre o servidor de e-mails e têm este erro, verifique se o domínio está bem em /var/qmail/bin/assign e então reinicia qmail-send com

# killall -HUP qmail-send

Isto pode ser devido a uma falsa declaração sobre o servidor dns onde indicou um servidor de e-mail que não têm nada a ver com o seu domínio e então ele não conhece ou então não quer reenviar os seus e-mails.

qmail_has_prog_delivery_but_has_x_bit_set._(#4.7.0)

Isto quer dizer que as permissões no directorio /home/vpopmail têm permissões de execução, então não deveria ser o caso (chmod 700 em vez de chmod 600 sobre um .qmail-alias)

Eis um script para corrigir as permissões :

#!/bin/sh
cd /home/vpopmail/domains
chown -R vpopmail.vchkpw .
for file in `find . `
do
if -d $file
then
chmod 700 $file
else
chmod 600 $file
fi
done


553 sorry, that domain isn't in my list of allowed rcpthosts (#5.7.1)

Isto quer simplesmente dizer que o seu domínio não esta configurado em /var/qmail/control/rcpthosts

Exemplo o domínio 'test.com' foi instalado mas apagado por acidente de /var/qmail/control/rcpthosts.
Eis o que obtemos quando tentamos enviar um e-mail para postmaster@test.com :

$ telnet nsXXXX.ovh.net 25
Trying 213.186.XX.XX...
Connected to nsXXXX.ovh.net.
Escape character is '
]'.
220 nsXXXX.ovh.net ESMTP
HELO ping.ovh.net
250 nsXXXX.ovh.net
MAIL FROM:
250 ok
RCPT TO:
553 sorry, that domain isn't allowed to be relayed thru this MTA (#5.7.1)
QUIT
Connection closed by foreign host
$^

warning: trouble injecting bounce message, will try later

Isto quer dizer que a queue de qmail está corrompida. Para fixar o problema existe uma única possibilidade, para já, conhecida, que é recriar a queue de qmail. Siga para isso o guia : QueueQmailFull.

Voltar a fazer o directorio queue

Ver o guia : QueueQmailFull.

Spam


A secção spam chega em breve.