Comment installer et configurer Postfix en tant que serveur SMTP d’envoi uniquement sur Ubuntu 14.04

introduction

Postfix est un MTA (Mail Transfer Agent), une application utilisée pour envoyer et recevoir des emails. Dans ce didacticiel, nous allons installer et configurer Postfix afin qu’il puisse être utilisé pour envoyer des courriels à des applications locales uniquement, c’est-à-dire celles installées sur le même serveur que celui sur lequel Postfix est installé.

Pourquoi voudriez-vous faire ça?

Si vous utilisez déjà un fournisseur de messagerie tiers pour envoyer et recevoir des courriers électroniques, vous n'avez bien entendu pas besoin de faire fonctionner votre propre serveur de messagerie. Toutefois, si vous gérez un serveur cloud sur lequel vous avez installé des applications nécessitant l'envoi de notifications par courrier électronique, l'exécution d'un serveur SMTP local à envoi uniquement est une bonne alternative à l'utilisation d'un fournisseur de service de messagerie tiers ou à un serveur SMTP complet. .

Un exemple d'application qui envoie des notifications par e-mail est OSSEC, qui enverra des alertes par e-mail à toute adresse e-mail configurée (voirHow To Install and Configure OSSEC Security Notifications on Ubuntu 14.04). Bien que OSSEC ou toute autre application de ce type puisse utiliser le serveur SMTP d'un fournisseur de messagerie tiers pour envoyer des alertes par e-mail, il peut également utiliser un serveur SMTP local (envoi uniquement).

C’est ce que vous apprendrez à faire dans ce tutoriel: comment installer et configurer Postfix en tant que serveur SMTP à envoi exclusif.

Note: Si votre cas d'utilisation consiste à recevoir des notifications de votre serveur à une seule adresse, les e-mails marqués comme spam ne sont pas un problème majeur, car vous pouvez les mettre sur liste blanche.

Si votre cas d'utilisation consiste à envoyer des e-mails à des utilisateurs potentiels du site, tels que des e-mails de confirmation pour les inscriptions aux forums, vous devez absolument faireStep 5 afin que les e-mails de votre serveur soient plus susceptibles d'être considérés comme légitimes. Si vous rencontrez toujours des problèmes lorsque les courriers électroniques de votre serveur sont marqués comme courrier indésirable, vous devrez résoudre vous-même les problèmes.

Conditions préalables

S'il vous plaît remplir les conditions préalables suivantes.

  • Ubuntu 14.04 Droplet

  • Parcourez lesinitial setup. Cela signifie que vous devez avoir un compte utilisateur standard avec les privilègessudo

  • Avoir un nom de domaine valide, commeexample.com, pointant vers votre Droplet

  • Le nom d’hôte de votre serveur doit correspondre à ce domaine ou sous-domaine. Vous pouvez vérifier le nom d'hôte du serveur en tapanthostname à l'invite de commande. La sortie doit correspondre au nom que vous avez donné au droplet lors de sa création, par exempleexample.com

Si toutes les conditions préalables sont remplies, vous êtes prêt pour la première étape de ce didacticiel.

[[step-1 -—- install-postfix]] == Étape 1 - Installer Postfix

Dans cette étape, vous allez apprendre à installer Postfix. Le moyen le plus efficace d'installer Postfix et d'autres programmes nécessaires pour tester le courrier électronique est d'installer le packagemailutils en tapant:

sudo apt-get install mailutils

L'installation de mailtuils entraînera également l'installation de Postfix, ainsi que de quelques autres programmes nécessaires au fonctionnement de Postfix. Après avoir tapé cette commande, vous obtiendrez une sortie qui ressemblera à ceci:

The following NEW packages will be installed:
guile-2.0-libs libgsasl7 libkyotocabinet16 libltdl7 liblzo2-2 libmailutils4 libmysqlclient18 libntlm0 libunistring0 mailutils mailutils-common mysql-common postfix ssl-cert

0 upgraded, 14 newly installed, 0 to remove and 3 not upgraded.
Need to get 5,481 kB of archives.
After this operation, 26.9 MB of additional disk space will be used.
Do you want to continue? [Y/n]

Appuyez sur ENTER pour les installer. Vers la fin du processus d'installation, une fenêtre ressemblant à celle de l'image ci-dessous s'affichera. L'option par défaut estInternet Site. C’est l’option recommandée pour ce tutoriel. Appuyez donc sur TAB, puis sur ENTREE.

Select Internet Site from the menu

Après cela, vous obtiendrez une autre fenêtre similaire à celle de l'image suivante. LesSystem mail name doivent être identiques au nom que vous avez attribué au droplet lors de sa création. S'il affiche un sous-domaine commemars.example.com, changez-le en seulementexample.com. Lorsque vous avez terminé, appuyez sur TAB, puis sur ENTER.

Enter your domain name

Une fois l'installation terminée, passez à l'étape 2.

[[step-2 -—- configure-postfix]] == Étape 2 - Configurer Postfix

Dans cette étape, vous découvrirez comment configurer Postfix pour traiter les demandes d'envoi d'e-mails uniquement à partir du serveur sur lequel il s'exécute, c'est-à-dire à partir delocalhost. Pour cela, Postfix doit être configuré pour n'écouter que surloopback interface, l'interface réseau virtuelle que le serveur utilise pour communiquer en interne. Pour effectuer cette modification, ouvrez le fichier de configuration principal de Postfix à l’aide de l’éditeur nano.

sudo nano /etc/postfix/main.cf

Avec le fichier ouvert, faites défiler jusqu'à ce que les entrées affichées dans ce bloc de code s'affichent.

mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all

Changez la ligne qui litinet_interfaces = all eninet_interfaces = loopback-only. Lorsque vous avez terminé, la même section du fichier devrait maintenant se lire:

mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = loopback-only

À la place deloopback-only, vous pouvez également utiliserlocalhost, de sorte que la section modifiée puisse également lire:

mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = localhost

Une fois le fichier modifié, enregistrez-le et fermez-le (appuyez sur CTRL + X, puis sur Y, puis sur ENTREE). Après cela, redémarrez Postfix en tapant:

sudo service postfix restart

[[step-3 -—- test-that-the-smtp-server-can-send-emails]] == Étape 3 - Test que le serveur SMTP peut envoyer des e-mails

Dans cette étape, vous allez apprendre à tester si Postfix peut envoyer des emails à n’importe quel compte de messagerie externe. Vous utiliserez la commandemail, qui fait partie du packagemailutils qui a été installé à l'étape 1.

Pour envoyer un email de test, tapez:

echo "This is the body of the email" | mail -s "This is the subject line" [email protected]

En effectuant votre / vos propre (s) test (s), vous pouvez utiliser le corps et le texte de la ligne de sujet tels quels, ou les modifier à votre guise. Cependant, à la place de[email protected], utilisez une adresse e-mail valide, où la partie domaine peut êtregmail.com,fastmail.com,yahoo.com ou tout autre fournisseur de services de messagerie que vous utilisez .

Maintenant, vérifiez l'adresse e-mail où vous avez envoyé le message de test.

Vous devriez voir le message dans votre boîte de réception. Sinon, vérifiez votre dossier de courrier indésirable.

Note: Avec cette configuration, l'adresse dans le champFrom pour les e-mails de test que vous envoyez sera[email protected], oùsammy est votre nom d'utilisateur Linux et la partie domaine est le serveur nom d'hôte. Si vous changez votre nom d'utilisateur, l'adresse deFromchangera également.

[[step-4 -—- forward-system-mail]] == Étape 4 - Transférer le courrier système

La dernière chose que nous voulons configurer est le transfert, afin que vous receviez des e-mails envoyés àroot sur le système à votre adresse e-mail externe personnelle.

Pour configurer Postfix afin que les e-mails générés par le système soient envoyés à votre adresse e-mail, vous devez éditer le fichier/etc/aliases.

sudo nano /etc/aliases

Le contenu complet du fichier sur une installation par défaut d'Ubuntu 14.04 est indiqué dans ce bloc de code:

# See man 5 aliases for format
postmaster:    root

Avec ce paramètre, les courriels générés par le système sont envoyés à l'utilisateur root. Ce que vous voulez faire est de le modifier afin que ces courriels soient redirigés vers votre adresse e-mail. Pour ce faire, éditez le fichier de manière à ce qu'il se lise:

# See man 5 aliases for format
postmaster:    root
root:          [email protected]

Remplacez[email protected] par votre adresse e-mail personnelle. Une fois terminé, enregistrez et fermez le fichier. Pour que les modifications prennent effet, exécutez la commande suivante:

sudo newaliases

Vous pouvez maintenant tester son fonctionnement en envoyant un courrier électronique au compte root à l'aide de:

echo "This is the body of the email" | mail -s "This is the subject line" root

Vous devriez recevoir l'email à votre adresse email. Sinon, vérifiez votre dossier de courrier indésirable.

[[optional-step-5 -—- protect-your-domain-from-spammers]] === (Facultatif) Étape 5 - Protégez votre domaine contre les spammeurs

Au cours de cette étape, des liens vers des articles vous seront fournis pour vous aider à protéger votre domaine contre le spam. Il s'agit d'une étape facultative mais fortement recommandée car, si elle est correctement configurée, il est difficile d'envoyer du spam avec une adresse qui semble provenir de votre domaine.

En effectuant ces étapes de configuration supplémentaires, les fournisseurs de messagerie habituels auront plus de chances de voir les courriers électroniques de votre serveur comme légitimes, plutôt que de les marquer comme spam.

Bien que le deuxième article ait été écrit pour Debian Wheezy, les mêmes étapes s'appliquent pour Ubuntu 14.04.