03
Nov

Problème de relai smtp sur une gentoo ovh release 2

Written by Stephane Montagnon. Posted in Astuces Linux

Ceux qui ont déjà eut se problème vont me bénir moi et les dix prochaines générations… rien que ça !!!

si vous avez le problème d’envoie de mail en smtp en utilisant votre serveur dédié et que vous avez ce type d’erreur dans /var/log/qmailsmtp587 :

qmail-smtpd: pid  999 from 99.99.99.99 Invalid RELAY client: MAIL from: , RCPT TO: 

Cela vient simplement d’un dysfonctionnement du système…

Lors d’une connexion POP, votre ip est enregistré dans le système et vous pouvez utiliser le serveur en tant que relai smtp.
En imap, cela ne se passe pas de la même manière, votre ip n’est pas enregistré et vous ne pouvez pas utiliser le serveur smtp.

La solution est de mettre en place le script suivant qui va aller chercher dans les logs les ip qui ont fait des connexions imap afin de les ajouter dans le listes des ip qui peuvent envoyer des mails

#!/bin/sh
# check mail.log for courier imap logins and add the IP to open-smtp
rm -f /tmp/tmpfile1
rm -f /tmp/tmpfile2
tail -n 300 /var/log/mail.log | grep "imapd: LOGIN" > /tmp/tmpfile1
while read line
do
IP=`echo $line | cut -d ' ' -f 8 | sed s/[^0-9.]//g`
echo $IP:allow,RELAYCLIENT=\"\",RBLSMTPD=\"\" >> /tmp/tmpfile2
done < /tmp/tmpfile1
IPS=(`cat /tmp/tmpfile2 | sort | uniq`)
for IP in "${IPS[@]}"; do
echo -e $IP "\t" `date +%s` >> /etc/vpopmail/open-smtp
done
# clearopensmtp: tcp.smtp + open-smtp - expired = tcp.smtp.cdb
/home/vpopmail/bin/clearopensmtp

Ensuite il suffit de faire une tache cron pour exécuter ce script régulièrement.

/xxx/xxx/imap-opensmtp.sh 2>&1 >/dev/null

J’ai trouvé les infos ici :
http://forum.ovh.com/showthread.php?32031-pop-before-smtp-avec-connexion-imap-%28release2%29

Mots-clefs :

Trackback from your site.

Laisser un commentaire