OVH Cloud OVH Cloud

serveurs smtp

2 réponses
Avatar
Jules de chez Schmit d'en face
Bonjour,

J'essaye un peu de comprendre comment fonctionne le mail.
Je vois déjà assez bien comment fonctionne le protocole SMTP.

Mon problème concerne plus le "routage" des mails.
Admettons que j'envoie un message via un serveur
smtp.domA.com à toto@domB.com

Le premier serveur smtp va recevoir le message, et va utiliser
l'info "domB.com" ainsi qu'un serveur DNS qui va lui dire
(via un enregistrement MX) a quel serveur SMTP envoyer
le message. Disons voir smtp.domB.com.

Je me pose deux questions.

1 -
Qd je regarde les details d'un mail, je me rends compte que
le mail a parcouru parfois plusieurs machine dans domA.
disons voir : smtp.domA.com puis mx-serv.domA.com.
Il y a-t-il qq part dans la configuration du serveur smtp
la possiblité de le faire simplement "forwarder" les messages
vers un autre serveur smtp (ici mx-serv) afin d'effectuer
un équilibrage de charge ou qq chose comme ça ??

2 -
Le message arrive finalement à smtp.domB.com
Il va falloir pour que je puisse récuperer mes messages
que je les telecharge via un serveur pop. Est-ce qu'un
serveur pop est forcément également un serveur smtp
(pour pouvoir recevoir les message) ?? Pourtant chez
mon provider, les deux serveurs sont bient distincts...

Autre question, qui est plus ou moins indépendante :
Lorsque j'écris un mail via une interface web. Le contenu
du formulaire est envoyé au serveur web et un script quelconque
sur le serveur web va envoyer le tout au serveur smtp.

Est-ce que la solution alternative qui serait de balancer les données
au serveur smtp directement à partir du client est possible (un
javascript peut-il créer une socket ?) ? ça se fait parfois ?

Merci d'avance,
J.

2 réponses

Avatar
F. Senault

[...]

Il y a-t-il qq part dans la configuration du serveur smtp
la possiblité de le faire simplement "forwarder" les messages
vers un autre serveur smtp (ici mx-serv) afin d'effectuer
un équilibrage de charge ou qq chose comme ça ??


Généralement, oui. Il existe pas mal de serveurs SMTP distincts, mais
la plupart des gros savent faire ça. Utilisé par exemple quand on a un
un petit réseau local avec une passerelle à IP dynamique, et qu'on veut
utiliser la passerelle pour faire relai (en cas de coupure de ligne,
c'est la passerelle qui conserve les mails et réessaie de temps en temps
de délivrer, ce qui est un avantage).

[...]

Est-ce qu'un
serveur pop est forcément également un serveur smtp
(pour pouvoir recevoir les message) ??


Non, pas du tout. Sur les serveurs que je connais, ce sont
systématiquement des programmes différents, et, souvent, qui font partie
d'un package différent. A partir du moment où le mail peut être écrit
sur un disque dur par une machine et lu par l'autre, tout peut être
distinct.

[...]

Est-ce que la solution alternative qui serait de balancer les données
au serveur smtp directement à partir du client est possible (un
javascript peut-il créer une socket ?) ? ça se fait parfois ?


Non, et non. Le javascript est exécuté en local sur le client, et
permettre à un client à peu près quelconque d'envoyer un mail en fixant
lui-même tous les paramètres est très dangereux (pour les risques
d'abus, spam, etc). De toutes manières, le javascript (et les solutions
équivalentes client-side) sont très très limitées au niveau des
communications pour des raisons de sécurtié - plus pour protéger les
clients que les serveurs, d'ailleurs.

A la limite, ce serait possible en Java (tout court), mais cela revient
à écrire un client mail complet, l'intérêt est assez limité...

Merci d'avance,
J.


Fred
--
printk("; corrupted filesystem mounted read/write - your computer
will explode within 20 seconds ... but you wanted it so!n");
(2.4.3 linux/fs/hpfs/super.c)

Avatar
Laurent Wacrenier
Jules de chez Schmit d'en face écrit:
1 -
Qd je regarde les details d'un mail, je me rends compte que
le mail a parcouru parfois plusieurs machine dans domA.
disons voir : smtp.domA.com puis mx-serv.domA.com.
Il y a-t-il qq part dans la configuration du serveur smtp
la possiblité de le faire simplement "forwarder" les messages
vers un autre serveur smtp (ici mx-serv) afin d'effectuer
un équilibrage de charge ou qq chose comme ça ??


Lorsqu'un utilisateur envoir un courrier, il l'envoie à un serveur de
soumission. Celui ci ne gère à priori pas le domaine, il sait comment
le router en fonction du domaine après avoir intérogé le DNS. Il
envoie le courrier à un serveur qui gère le domaine qui a un routage
sépcifique, via une table de routage des domaines qu'il gèrent. Il va
de serveurs SMTP en serveurs SMTP jusqu'à un serveur qui effectue la
livraison par un protocole quelquonque.


2 -
Le message arrive finalement à smtp.domB.com
Il va falloir pour que je puisse récuperer mes messages
que je les telecharge via un serveur pop. Est-ce qu'un
serveur pop est forcément également un serveur smtp
(pour pouvoir recevoir les message) ?? Pourtant chez
mon provider, les deux serveurs sont bient distincts...


SMTP ne fait pas de livraison, juste du transport.


Autre question, qui est plus ou moins indépendante :
Lorsque j'écris un mail via une interface web. Le contenu
du formulaire est envoyé au serveur web et un script quelconque
sur le serveur web va envoyer le tout au serveur smtp.

Est-ce que la solution alternative qui serait de balancer les données
au serveur smtp directement à partir du client est possible (un
javascript peut-il créer une socket ?) ? ça se fait parfois ?


En javascript, je ne crois pas. En java ça doit se faire.