Tout d’abord, comment doit-on définir ce qu’est un message non sollicité ou SPAM ?
Il ne faut pas confondre les Emails utilisés à des fins marketings tels que définis par la loi sur l’économie numérique et les SPAMs. En effet, la loi française encadre et permet l’envoi de « publicité » par le biais de la messagerie sous deux conditions principales : le destinataire doit avoir la possibilité de se désinscrire pour ne plus être sollicité, l’adresse utilisée pour remettre le message doit être celle d’une personne dite « morale », c'est-à-dire utilisée dans le cadre de sa profession.
Dès lors, il est difficile pour un fournisseur de services de messagerie de faire le tri entre les publicités « légales » et les SPAMs.
Nous avons choisi de lutter contre les SPAMs d’un point de vue technique : pour qu’un client puisse recevoir un Email, ce dernier doit être transmis à nos serveurs en respectant les normes en vigueur (RFC).
Première analyse : le serveur qui communique avec le notre doit disposer d’un enregistrement inverse sur son adresse IP et d’une entrée MX en DNS.
Traduction : les serveurs SMTP disposent de leur propre enregistrement afin d’être reconnus comme tel. Si le serveur qui tente de communiquer avec le notre n’est pas répertorié en DNS, il est plus que probable que ce soit une machine servant exclusivement à la remise de messages souvent non sollicités.
Deuxième analyse : l’adresse IP utilisée par le serveur ne doit pas être en liste noire (blacklist). Si tel est le cas, le serveur incriminé a été répertorié comme représentant une menace. Nos serveurs mettent immédiatement fin aux communications avec ces serveurs.
Troisième analyse : la technique dite du GreyListing qui permet de déterminer avec une fiabilité proche de 95 % si le serveur qui communique avec le notre est conforme aux opérations demandées à un serveur de messagerie (SMTP). Lors de la communication avec nos serveurs, une application forme un triplet composé :
de l’adresse IP du serveur de l’expéditeur.
de l’adresse Email de l’expéditeur.
de l’adresse Email du destinataire.
Le triplet est daté puis stocké dans une base de données puis notre serveur met fin à la communication, invitant le serveur de l’expéditeur à réitérer sa tentative de remise du message*.
Cas numéro 1 : le serveur ne représente pas le message. Il est probable dans 99% des cas qu’il s’agissait d’un serveur utilisé par des SPAMEURS, ceux-ci ne procédant pas au stockage des messages pour une remise ultérieur, dans le but de ne pas être reconnus trop rapidement.
Cas numéro 2 : le serveur représente le message après quelques instants**. Nos serveurs accepteront le message pour la remise au destinataire.
Notez que tous les messages formés par le même triplet seront acceptés sans délais d’attente et ce pour une période d’au moins 30 jours entre deux messages formant des triplets équivalents.
Quatrième analyse : le dictionnaire. Quelques termes précis sont récurant dans les messages (viagra, vi@gra, vi@gr@, etc….) et les messages les contenant sont immédiatement refusés.
Ces dispositions permettent de ne pas générer de faux positifs ou de les limiter aux serveurs « mals » configurés.
Notes :
* TOUS les serveurs SMTP doivent être configurés pour permettre une mise en file d’attente de leur message pour les cas suivants : ils n’ont plus accès à l’internet (ligne coupée), le serveur avec lequel ils tentent de communiquer est temporairement indisponible (maintenance ou surcharge), un problème est survenu lors de la transmission.
** Dans certains cas, le temps d’attente entre deux remises de messages peut être supérieur à 15 minutes, voir plusieurs heures ! La raison incombe à l’administrateur DU SERVEUR DE L’EXPEDITEUR dont la durée de file d’attente est beaucoup trop longue. Nous ne sommes dès lors pas responsable de cette configuration qui ralenti la remise du message.
D'autres informations sur :
Le Greylisting
http://fr.wikipedia.org/wiki/Greylisting
http://www.greylisting.org
Les RFC
http://fr.wikipedia.org/wiki/RFC
SMTP
http://fr.wikipedia.org/wiki/SMTP