Quel port SMTP devrais-je utiliser : le port 25, 465, 587 ou 2525 ?
Les personnes configurant une application ou un système de messagerie pour envoyer (ou relayer) des e-mails ont souvent une question commune : « Quel port SMTP devrais-je utiliser ? » Vous pourriez voir des informations qui vous disent d'utiliser les ports 25, 465, 587 ou 2525 pour le relais SMTP. Alors, lequel de ces ports devrait être votre port SMTP standard ? Voici ce que vous devez savoir, et pourquoi.
Qu'est-ce qu'un port SMTP ?
SMTP (Simple Mail Transfer Protocol) est la norme de base que les serveurs de messagerie utilisent pour envoyer des e-mails les uns aux autres à travers Internet. SMTP est également utilisé par des applications telles qu'Apple Mail ou Outlook pour télécharger des e-mails vers des serveurs de messagerie qui les relaient ensuite vers d'autres serveurs de messagerie. (D'un autre côté, les applications de messagerie s'appuient généralement sur d'autres normes comme IMAP ou POP3 pour récupérer des e-mails depuis les serveurs.)
Comme d'autres services Internet tels que les sites web, le courrier SMTP s'appuie sur des noms de domaine et des adresses Internet pour savoir où envoyer les messages. Aujourd'hui, nous sommes tous familiers avec la version textuelle de ces adresses, comme www.sparkpost.com. La plupart d'entre nous savons que l'adresse textuelle représente une adresse IP numérique comme 107.21.246.67. Mais beaucoup d'entre nous ne savent pas que ces adresses réseau comprennent également des « numéros de port » spécifiques. Un « port SMTP » fait référence à la partie spécifique de l'adresse Internet utilisée pour transférer des e-mails.
Le web et HTTP utilisent le numéro de port 80. Pour le courrier électronique et SMTP, ce numéro de port est… eh bien, cela dépend.
En quoi le SMTP est-il différent de SSL et TLS ?
Les deux technologies facilitent l'envoi d'e-mails. Bien que le SMTP puisse être le muscle et les os du processus, le Secure Sockets Layer (SSL) forme la peau pour garder vos e-mails sécurisés. SSL fonctionne avec n'importe quel port disponible.
SSL était le protocole de sécurité standard incontournable pour les ports de messagerie courants dans un passé récent. Avec l'adoption de son descendant amélioré, le Transport Layer Security (TLS), les communications électroniques sont devenues encore plus sécurisées.
Bien que les deux protocoles créent un canal privé entre l'ordinateur d'envoi et celui de réception pour sécuriser les transmissions, TLS offre plus d'alertes que son ancêtre et peut exécuter plus de fonctions de hachage pour améliorer la communication cryptée. Aujourd'hui, de nombreux e-mails utilisent la convention la plus à jour, STARTTLS, qui se combine avec les protocoles SSL ou TLS pour une sécurité maximale.
Le protocole SMTP à lui seul n'est pas aussi sécurisé qu'il pourrait l'être. L'utilisation de la méthode de transfert en conjunction avec l'un des protocoles de sécurité permet d'offrir plus de protection par cryptage. Pour l'envoi d'e-mails, SSL et d'autres protocoles améliorent la transmission SMTP.
Comment pouvez-vous savoir quel est votre port SMTP ?
Si vous êtes abonné à un service de relais de messagerie hébergé, vous pouvez obtenir le nom d'hôte du serveur SMTP et le numéro de port sur la page de support de votre service de messagerie.
Si vous gérez votre propre serveur SMTP, vous pouvez trouver le numéro de port SMTP configuré et l'adresse à partir de la configuration du serveur SMTP. Dans PowerMTA, vous pouvez trouver cette information à partir de la directive « smtp-listener » configurée dans le fichier de configuration. Le fichier de configuration se trouve dans /etc/pmta/config sur un serveur Linux et C:\pmta\config.dat sur Windows Server.
smtp-listener 10.0.1.22:587 # écoute sur le port 587 et l'IP 10.0.1.22
Quel port devriez-vous utiliser pour SMTP ?
Les ports 25, 465, 587 ou 2525 pour SMTP ont tous été considérés comme des ports SMTP standards à un moment donné, mais seuls 587 ou 2525 devraient vraiment être envisagés pour une utilisation moderne.
Si vous configurez vos systèmes pour utiliser SparkPost en tant que relais SMTP, vous devriez utiliser le port 587 comme votre port SMTP standard, avec le port 2525 comme alternatif au cas où le port 587 ne serait pas disponible.
Je vais expliquer pourquoi en parcourant les différents ports couramment utilisés pour envoyer des e-mails aujourd'hui.
Port 25 : le port SMTP standard original
Le port 25 est le port SMTP original standard et le plus ancien, puisqu'il a été introduit pour la première fois en 1982. Aujourd'hui, le Internet Assigned Numbers Authority (IANA), le groupe responsable du maintien du schéma d'adressage Internet, reconnaît toujours le port 25 comme le port SMTP standard par défaut. SMTP a été désigné pour utiliser le port 25 dans l'IETF Request For Comments (RFC) 821. Mais en pratique, ce n'est pas aussi simple qu'il y paraît.
Bien que le port 25 continue d'être utilisé pour le relais SMTP de serveur à serveur, la plupart des clients SMTP modernes ne devraient pas être configurés pour utiliser ce port. Le port 25 est généralement bloqué par les FAI résidentiels et les hébergeurs cloud d'entreprise car il a acquis une mauvaise réputation en tant que port préféré des spammeurs envoyant des quantités massives de communications non sollicitées.
Pourquoi le port 25 est-il généralement bloqué ? Comment pouvez-vous vérifier s'il l'est ?
Le port 25 est bloqué sur de nombreux réseaux pour freiner la quantité de spam qui est relayée depuis des ordinateurs ou serveurs compromis. À moins que vous ne gériez spécifiquement un serveur de messagerie, vous ne devriez avoir aucun trafic traversant ce port sur votre ordinateur ou serveur.
Pour vérifier si le port 25 est bloqué par un FAI :
Si vous utilisez Windows, ouvrez votre invite de commandes. Si vous utilisez un Mac, ouvrez votre Terminal. Et, si vous utilisez Linux, ouvrez votre émulateur de terminal.
Tapez la commande suivante : telnet examplemailserver.com 25
Si le port 25 n'est pas bloqué, vous devriez recevoir un message comme celui-ci :
user@localhost:~# telnet gmail-smtp-in.l.google.com 25 Tentative de connexion à 1.2.3.4... Connecté à gmail-smtp-in.l.google.com. Le caractère d'échappement est '^]'. 220 mx.google.com ESMTP 123si3448417qkd.359 - gsmtp
Si vous recevez un message similaire à celui ci-dessous, le port 25 est probablement bloqué :
telnet : échec de la connexion à l'adresse XX.XX.XX.XX : Connexion refusée telnet : impossible de se connecter à l'hôte distant
Quand utiliseriez-vous le port 25 ?
Le port 25 est le port par défaut pour le relais des e-mails sur Internet. Cependant, vous pouvez spécifier n'importe quel numéro de port (à condition qu'il soit dans la plage acceptable des numéros de port personnalisés) pour soumettre des e-mails à votre serveur SMTP.
Il existe des cas particuliers où vous devez utiliser le port 25 sur votre serveur SMTP. L'un de ces cas est de recevoir des rebonds hors bande/asynchrones. Ce type de rebonds se produit après le fait. Cela signifie que le domaine destinataire accepte un message de votre serveur SMTP mais renvoie ensuite le message. Les rebonds hors bande sont envoyés de manière asynchrone à l'adresse de retour (MAIL FROM) du message original. Le domaine destinataire tentera d'envoyer ces rebonds au serveur MX de l'adresse de retour et sur le port 25 (car le port 25 est le port par défaut pour le relais de courrier sur Internet). Un autre exemple est de recevoir des boucles de retour (FBL).
Vous pouvez activer le port 25 pour recevoir des messages sur un serveur PowerMTA en configurant la directive « smtp-listener »
smtp-listener 10.0.1.22:25 # écoute sur le port 25 et l'IP 10.0.1.22
Port 465 : Port SMTP obsolète et dépassé
Le port 465 n'est plus un standard accepté pour SMTP. Cependant, il existe des systèmes hérités qui utilisent encore le port 465 pour SMTP, et certaines pages d'aide sur Internet suggèrent encore le port 465 comme configuration recommandée. Le port a gagné en redondance à la fin des années 1990 mais repose toujours sur la méthode passive SSL implicite pour établir une transmission sécurisée. Notre conseil ? Ne le faites pas à moins que votre application ne l'exige absolument.
L'IANA avait initialement attribué le port 465 pour une version cryptée de SMTP appelée SMTPS. Au départ, il était proposé d'envoyer des e-mails en utilisant le Secure Sockets Layer (SSL). Cependant, l'IANA a depuis réattribué ce port à un usage différent, il ne devrait donc plus être utilisé pour SMTP. C'est pourquoi SparkPost n'accepte pas les connexions sur le port 465.
Port 587 : Le port SMTP sécurisé standard
Les serveurs de messagerie modernes utilisent le port 587 pour la soumission sécurisée d'e-mails pour la livraison. Par exemple, si vous utilisez un logiciel de client de messagerie comme Outlook ou Apple Mail, il est très probable qu'il soit configuré pour utiliser ce port pour envoyer vos messages. Ce n'est pas seulement un logiciel de client de messagerie personnel, cependant. Les systèmes qui transmettent des messages à un service de livraison de courrier électronique comme SparkPost doivent également être configurés pour utiliser ce port.
Tous les clients SparkPost doivent utiliser le port 587 par défaut, à moins que vous ne soyez explicitement bloqué par votre réseau en amont ou votre fournisseur d'hébergement. L'utilisation du port 587, associée au cryptage TLS, est le meilleur moyen de garantir que les e-mails sont soumis de manière sécurisée et fiable à SparkPost (ou presque tout autre fournisseur).
Port 2525 : Un port SMTP alternatif courant
Le port 2525 n'est pas un port SMTP officiel, et il n'est pas sanctionné par l'IETF ni l'IANA. Cependant, SparkPost et de nombreux autres fournisseurs de services de messagerie prennent en charge l'utilisation du port 2525 comme alternative au port 587 pour SMTP, dans le cas où les ports ci-dessus sont bloqués. (Un exemple notable où cela est requis est pour les services hébergés sur Google Compute Engine.) Si vous avez essayé le port 587 mais rencontrez des problèmes de connectivité, essayez le port 2525. Tout comme le port 587, la plupart des implémentations qui écoutent sur le port 2525 prennent également en charge le cryptage TLS.
Le port SMTP est-il important ?
Apart des défis de connectivité, vous verrez que l'utilisation du port incorrect impacte la délivrabilité. La communication par e-mail ne peut être efficace que si elle trouve son chemin entre l'expéditeur et le destinataire, et le bon port garantit une livraison réussie.
Pour la majorité des utilisateurs, votre fournisseur de messagerie configurerait les ports pour vous afin que vous n'ayez pas à choisir. Pour d'autres, cependant, il est important de comprendre qu'il existe différentes fonctions assignées à différents ports, principalement divisées en soumission et relais.
Soumission et Relai
La soumission est l'action de remettre votre communication électronique fraîchement mintée dans votre boîte d'envoi auprès de votre fournisseur de services de messagerie. Si vous et votre fournisseur êtes sur des ports différents, c'est là que le processus s'arrête — votre e-mail ne progressera pas plus loin. Lorsque vous êtes sur le même port, votre serveur de messagerie accepte la communication sortante et se serre la main avec l'ordinateur à l'autre bout. Lorsque tout est sécurisé et en accord, la transmission a lieu. Ce processus est connu sous le nom de relais.
Qu'est-ce qu'un serveur SMTP ?
Un serveur SMTP est un ordinateur qui alimente le protocole que votre client de messagerie utilise lors de l'envoi, de la réception et/ou du relai des messages sortants. Dans le cadre du processus, un serveur SMTP vérifie qu'un expéditeur est autorisé à envoyer par le biais de SMTP et, si l'expéditeur est autorisé à envoyer et que le message est jugé non livrable, le serveur SMTP le renverra à l'adresse MAIL FROM. PowerMTA est l'un des serveurs SMTP les plus performants car il permet aux expéditeurs d'adopter les dernières spécifications d'authentification pour l'envoi d'e-mails en volume et de respecter les nouvelles politiques d'authentification.
Comment configurer votre serveur SMTP
Lorsqu'il s'agit de configurer un serveur SMTP, il existe deux options à explorer. Vous pouvez vous abonner à un service d'hébergement de relais de messagerie. SparkPost est un fournisseur de services de livraison d'e-mails et d'analytique de premier plan. Alternativement, vous pouvez configurer votre serveur SMTP « sur site » pour un contrôle plus granulaire. Un exemple est PowerMTA.
Pour établir un serveur PowerMTA, contactez support@port25.com pour un package d'installation, une licence et des instructions d'installation. Toute la configuration de PowerMTA se fait dans le fichier de configuration qui se trouve dans /etc/pmta/config sur un serveur Linux et C:\pmta\config.dat sur Windows Server.
Pour une configuration de base de votre serveur SMTP, il y a quelques considérations et étapes à prendre.
Quelle adresse IP et quel numéro de port souhaitez-vous que votre serveur SMTP reçoive des e-mails ? Le port 25 est le port par défaut pour le relais d'e-mail. Dans PowerMTA, vous pouvez changer ce numéro de port par défaut en modifiant la directive « smtp-listener » dans le fichier de configuration.
smtp-listener 0/0:25 # écoute sur le port 25 de toutes les IP locales. Vous pouvez également spécifier une plage d'adresses IP CIDR
ou
smtp-listener 10.0.1.22:25 # écoute sur le port 25 et l'IP 10.0.1.22
Vous devez permettre le relais des messages de votre client de messagerie à votre serveur SMTP. Votre serveur SMTP ne devrait JAMAIS être un relais ouvert. Cela signifie que vous devez d'une manière ou d'une autre permettre sélectivement le relais. Dans PowerMTA, il existe plusieurs façons de le faire. Vous pouvez vous authentifier avec un nom d'utilisateur et un mot de passe. PowerMTA prend en charge l'authentification par LOGIN, PLAIN ou le mécanisme CRAM-MD5 pour les connexions entrantes. Cela est configuré dans le bloc smtp-user et source du fichier de configuration. Pour un utilisateur « foo » et le mot de passe « barbaz » <smtp-user foo> mot de passe barbaz méthode d'authentification mot de passe # certificat (TLS) ou système (utilisateur Linux) sont d'autres options </smtp-user> # Ensuite, exigez l'authentification au niveau du bloc source <source 0/0> require-auth true </source>
Vous pouvez également autoriser sélectivement le relais à partir d'une adresse IP spécifique ou d'une plage CIDR. Cela serait l'adresse IP de votre client de messagerie.
<source 10.0.5.20> always-allow-relaying yes # autoriser le passage de 10.0.5.20 </source>
Vous pouvez également définir un nom d domaine/ adresse destinataire (ou modèle) pour lequel PowerMTA acceptera les e-mails.
# autoriser le relais du courrier à some.domain relay-domain some.domain relay-address bounce@bounce.yourdomain.com relay-address /@foo(bar)?\.com$/ # modèle regex
Une autre considération est de savoir si vous souhaitez relayer en toute sécurité des e-mails de votre client de messagerie à votre serveur SMTP (TLS entrant). Si votre réponse est oui, alors vous devez activer STARTTLS pour les connexions entrantes et configurer un certificat TLS. Dans PowerMTA, TLS est pris en charge de TLSv1 à TLSv1.3. smtp-server-tls-certificate /etc/pmta/yourcert.pem # Activer TLS sur les connexions entrantes <source 0/0> allow-starttls true require-starttls-before-auth true # garantit que les informations d'authentification sont envoyées uniquement par tls </source>
Souhaitez-vous que votre serveur SMTP délivre les e-mails de manière sécurisée aux serveurs distants (TLS sortant) ? Dans PowerMTA, vous avez la possibilité d'utiliser TLS si le serveur distant le prend en charge ou d'imposer TLS et de couper la connexion si le TLS n'est pas pris en charge par le serveur distant.
<domain *> # (*) est un caractère générique pour tous les domaines destinataires use-starttls true # utilise TLS si disponible require-starttls true # impose TLS </domain>
Définissez l'adresse IP et le nom d'hôte depuis lesquels votre serveur SMTP doit initier des connexions SMTP sortantes. Dans PowerMTA, cela est défini avec la directive smtp-source-host.
smtp-source-host 192.168.0.10 mail10.yourserver.com # Vous pouvez également spécifier une plage CIDR
Enfin, une fonctionnalité très unique de PowerMTA est la possibilité de séparer votre flux de courriers en construisant un hôte multi-hébergé. La technologie VirtualMTA dans PowerMTA permet aux utilisateurs de définir et de contrôler l'adresse IP source, le nom d'hôte et les paramètres de livraison des messages pour chaque flux de courriers. Cela permet de créer des campagnes, clients ou départements distincts et spécifiques, tout en exécutant une seule instance de PowerMTA.
<virtual-mta mta1> smtp-source-host 1.2.3.4 mta1.yourserver.com <domain *> use-starttls true require-starttls true retry-after 10m </domain> </virtual-mta> <virtual-mta mta2> smtp-source-host 2.3.4.5 mta2.yourserver.com <domain *> use-starttls false require-starttls false retry-after 45m </domain> </virtual-mta>
Lorsque la configuration de base est terminée, vous pouvez soumettre des messages à votre serveur SMTP configuré par nom d'hôte/IP et numéro de port (10.0.1.22:25 dans l'exemple ci-dessus) et, en fonction de la façon dont vous permettez la soumission d'e-mails, vous authentifier avec le nom d'utilisateur configuré (foo) et le mot de passe (barbaz).
En résumé, le port SMTP 587 est le meilleur choix pour presque tous les cas d'utilisation pour se connecter à SparkPost et autres services de livraison d'e-mails.
J'espère que ces informations vous ont aidé à en apprendre un peu plus sur le port SMTP à utiliser !
~ Lade