Retour au blog

Installation et configuration de Postfix en tant que serveur SMTP d'envoi uniquement sur Ubuntu 20.04

Installation et configuration de Postfix en tant que serveur SMTP d'envoi uniquement sur Ubuntu 20.04

Postfix est un logiciel libre et open-source populaire qui agit comme un agent de transfert de courrier (MTA). Le rôle de Postfix est d'acheminer et de distribuer les e-mails. Outre l'usage classique, Postfix peut également être configuré pour envoyer des e-mails uniquement via des applications locales.

Cette application de Postfix est une astuce utile à déployer dans diverses situations. Par exemple, elle peut être utilisée pour envoyer régulièrement des notifications par e-mail, travailler avec un fournisseur de services de messagerie tiers ayant un trafic sortant limité, etc. Par rapport à n'importe quel serveur SMTP complet, Postfix est une alternative plus légère qui conserve en même temps les fonctionnalités nécessaires.

Dans ce tutoriel, découvrez comment installer et configurer Postfix en tant que serveur SMTP d'envoi uniquement sur Ubuntu.

Prérequis

Pour suivre ce guide, vous devez remplir les prérequis suivants :

Installation de Postfix

Une fois les conditions préalables remplies, le serveur est prêt à déployer Postfix. La manière la plus simple d'installer Postfix est d'installer le paquet mailutils . Il est directement disponible depuis les dépôts officiels d'Ubuntu.

Tout d'abord, lancez un terminal et mettez à jour la base de données des paquets APT :

Package Update

Ensuite, vous pouvez installer Postfix :

Install MailUtils

Pendant le processus d'installation, la fenêtre de configuration suivante s'affichera. L'option par défaut est Internet Site. Pour confirmer la sélection, appuyez sur TAB pour déplacer le curseur vers la section suivante. Ensuite, appuyez sur Enter:

Mail Server Config

L'étape suivante demandera le nom de messagerie du système (System mail name). Ce sera le nom attribué au serveur au moment de sa création. Comme décrit dans le script, si l'adresse e-mail de l'hôte local est « foo@example.org », alors le nom de messagerie du système sera example.org:

Mail Name Config

Notez que le script de configuration peut également être déclenché à tout moment ultérieurement à l'aide de la commande suivante :

Configuration de Postfix

À cette étape, Postfix sera configuré pour envoyer et recevoir des e-mails uniquement depuis localhost. Cela nécessite que Postfix écoute sur l'interface loopback. C'est l'interface réseau virtuelle que le serveur utilise pour la communication interne. Ensuite, ouvrez le fichier de configuration de Postfix à l'aide de l'éditeur de texte de votre choix :

Modifiez la valeur de inet_interface par loopback-only:

Inet Interface

Une autre directive que vous devez modifier est mydestination. Elle définit la liste des domaines qui sont distribués via le transport de distribution de courrier local_transport . La valeur par défaut ressemblera à ceci :

Mydestination Old

Modifiez sa valeur par la suivante :

Mydestination

Si votre domaine est en réalité un sous-domaine et que vous souhaitez que les e-mails semblent provenir du domaine principal, ajoutez la directive suivante à la fin de la configuration de Postfix. Cela supprimera le sous-domaine de l'adresse e-mail :

Postfix Masquerade Domains

Pour que les modifications prennent effet, redémarrez Postfix :

restart_postfix

Test du serveur SMTP

En supposant que le processus de configuration s'est déroulé avec succès, il est temps de le tester. Pour ce faire, vérifiez si Postfix peut envoyer un e-mail à un compte de messagerie externe à l'aide de la commande mail. Elle fait partie du paquet mailutils :

Le message devrait arriver à l'adresse e-mail spécifiée. À ce stade, tous les e-mails envoyés ne sont pas chiffrés. Les fournisseurs de services classeront généralement ces e-mails comme spam, veillez donc à vérifier la section spam pour l'arrivée de l'e-mail.

Si la commande mail signale une erreur ou si l'e-mail n'est pas arrivé après une période prolongée, vérifiez à nouveau la configuration de Postfix et assurez-vous que le nom du serveur et le nom d'hôte sont correctement définis. Avec cette configuration, les e-mails sembleront être envoyés depuis l'adresse suivante :

Ici, le nom d'utilisateur sera le nom d'utilisateur de l'utilisateur du serveur qui a exécuté la commande mail.

Redirection des e-mails système

Nous avons vérifié avec succès que le serveur de messagerie est correctement configuré et fonctionnel. Maintenant, il doit être configuré pour rediriger les e-mails pour root. Tous les messages générés par le système envoyés au serveur seront redirigés vers une adresse e-mail externe. Pour les destinataires d'e-mails, le fichier /etc/aliases contient la liste des noms alternatifs. Ouvrez-le en utilisant l'éditeur de texte de votre choix :

Par défaut, il ressemblera à ceci :

Postfix Aliases

À la fin du fichier, ajoutez la ligne suivante :

Postfix Newaliases

Cela indique que les e-mails envoyés à root seront redirigés vers une adresse e-mail. Pour que la modification prenne effet, exécutez la commande suivante. Elle reconstruira la base de données d'alias que la commande mail utilise :

sudo newaliases

Ensuite, vous devez tester si la modification a réussi. Envoyez un e-mail de test à root:

L'e-mail devrait arriver à l'adresse e-mail spécifiée. N'oubliez pas de vérifier le dossier spam car aucun chiffrement n'est encore configuré.

Activation du chiffrement SMTP

L'envoi d'e-mails au format non chiffré est une démarche risquée. Pour garantir la sécurité, il est nécessaire d'activer le chiffrement SMTP. Pour y parvenir, nous allons demander un certificat TLS gratuit auprès de Let’s Encrypt pour votre domaine.

Pour Ubuntu, c'est l'outil Certbot qui fait le travail. Heureusement, il est directement disponible dans le dépôt officiel d'Ubuntu. Installez Certbot avec la commande suivante :

Postfix Install certbot

En supposant que le serveur dispose d'UFW configuré, il est nécessaire d'avoir le port 80 ouvert afin que la vérification du domaine puisse avoir lieu. Exécutez la commande suivante pour l'activer :

ufw allow Postfix

Maintenant, exécutez Certbot pour générer un certificat. Cela ordonne à Certbot de délivrer des certificats avec une clé RSA de 4096 bits. La vérification aura lieu via le port 80 (HTTP) :

La sortie ressemblera à ceci :

La clé sera stockée dans le répertoire suivant :

Maintenant que votre certificat est généré, ouvrez le fichier de configuration de Postfix dans un éditeur de texte :

Trouvez la section TLS paramètres:

Postfix tls conf old

Après cela, modifiez la valeur des directives smtpd_tls_cert_file et smtpd_tls_key_file:

Postfix tls conf

Ensuite, enregistrez et fermez le fichier. Pour que les modifications prennent effet, redémarrez Postfix :

Enfin, envoyez à nouveau un e-mail fictif à une adresse e-mail cible :

L'e-mail devrait maintenant apparaître normalement comme les autres e-mails. Si vous vérifiez les informations techniques de l'e-mail, il apparaîtra comme chiffré.

Dernières réflexions

Félicitations ! Vous avez configuré avec succès un serveur de messagerie d'envoi uniquement, propulsé par Postfix. Les transactions d'e-mails sont également sécurisées à l'aide d'une clé de chiffrement appropriée.

Pour découvrir d'autres moyens d'optimiser le transfert d'e-mails, consultez ce tutoriel Les meilleures façons d'utiliser le serveur SMTP de Google.

Bonne informatique !

author

Pranay Kapgate

Auteur · CloudSigma

Preslav Dobrev est un designer créatif chez CloudSigma, axé sur une identité commerciale cohérente à travers des canaux marketing traditionnels et innovants. Il excelle à fusionner la vision artistique avec le marketing stratégique pour créer des récits de marque percutants.

Commentaires

Aucun commentaire pour l'instant. Soyez le premier.