Partage
  • Partager sur Facebook
  • Partager sur Twitter

protocole smtp

    6 avril 2019 à 16:05:59

    bonjour

    j'ai une question par rapport au format des messages dans le protocole smtp.

    quand on ecrit le message apres DATA, il faut finir notre message par \r\n.\r\n

    du coup ca veut dire que si j'envoie au serveur encore du contenu apres le \r\n.\r\n , le serveur ignorera le reste du message et garde que ce qui est avant le \r\n.\r\n.

    -
    Edité par Luzwitz 6 avril 2019 à 16:06:20

    • Partager sur Facebook
    • Partager sur Twitter
      6 avril 2019 à 18:26:33

      Le serveur ne va pas ignorer ce que tu envoie, mais il va renvoyer un message d'erreur à moins que le texte envoyé ne corresponde à une commande SMTP. Parce qu'une fois qu'il reçoit le point sur une ligne vide, pour lui le message est terminé, donc ce que tu appelle "le reste du message", du point de vue du serveur, ce sera une commande.

      Il y a un exemple sur Wikipédia : https://fr.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol#Syntaxe_type_d'une_session_SMTP

      On voit qu'après la fin de message, le serveur reçoit encore du texte, mais QUIT est une commande valide, donc le serveur répond avec un code indiquant qu'il a bien compris (et ferme la connexion, puisque c'est ce qu'on lui demande).

      • Partager sur Facebook
      • Partager sur Twitter

      Blond, bouclé, toujours le sourire aux lèvres...

        6 avril 2019 à 18:51:00

        d'accord, merci.

        et j'ai une autre question avec la commande starttls.

        si par exemple je veux envoyer un email à quelqu'un qui a une adresse gmail, il faut que je me connecte sur le serveur smtp.gmail.com sur le port 587.

        ensuite j'envoie la commande basique ehlo, puis je dois envoyer la commande starttls pour sécuriser les échanges.

        ensuite je dois envoyer la commande auth plain suivi de l'adresse mail et le mot de passe encodé en base 64.

        mais c'est l'adresse email et le mot de passe de MON compte (celui de l'expediteur), donc si le compte de l'expediteur n'est pas un compte gmail, ça sert à quoi au serveur de gmail d'avoir mon adresse mail et mot de passe ?

        • Partager sur Facebook
        • Partager sur Twitter
          17 avril 2019 à 22:02:53

          Pour envoyer un mail à quelqu'un qui a une adresse gmail.com tu dois contacter non pas smtp.gmail.com sur le port 587 mais un des serveurs MX de gmail :

          Simon:~ simon$ dig mx gmail.com
          
          ; <<>> DiG 9.10.6 <<>> mx gmail.com
          ;; global options: +cmd
          ;; Got answer:
          ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 34639
          ;; flags: qr rd ra; QUERY: 1, ANSWER: 5, AUTHORITY: 0, ADDITIONAL: 1
          
          ;; OPT PSEUDOSECTION:
          ; EDNS: version: 0, flags:; udp: 4096
          ;; QUESTION SECTION:
          ;gmail.com.			IN	MX
          
          ;; ANSWER SECTION:
          gmail.com.		3599	IN	MX	5 gmail-smtp-in.l.google.com.
          gmail.com.		3599	IN	MX	10 alt1.gmail-smtp-in.l.google.com.
          gmail.com.		3599	IN	MX	20 alt2.gmail-smtp-in.l.google.com.
          gmail.com.		3599	IN	MX	30 alt3.gmail-smtp-in.l.google.com.
          gmail.com.		3599	IN	MX	40 alt4.gmail-smtp-in.l.google.com.


          Ici par exemple : gmail-smtp-in.l.google.com sur le port 25

          • Partager sur Facebook
          • Partager sur Twitter
          https://doyoucheck.com monitore vos sites/services web
            23 avril 2019 à 14:51:02

            dac merci

            je fais un programme en python mais du coup je ne sait pas sur quel ip et quel port ouvrir ma socket ?

            • Partager sur Facebook
            • Partager sur Twitter
              1 mai 2019 à 19:35:09

              Et bien tu fais un reverse DNS de gmail-smtp-in.l.google.com pour obtenir l'IP du serveur, et tu ouvres ta connexion sur le port 25, qui est le port par défaut pour les livraisons de mails.
              • Partager sur Facebook
              • Partager sur Twitter
              https://doyoucheck.com monitore vos sites/services web

              protocole smtp

              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
              • Editeur
              • Markdown