GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment installer et configurer Postfix sur Ubuntu 20.04

Dans ce guide, nous apprendrons comment installer et configurer Postfix sur un serveur Ubuntu 20.04. Nous utiliserons s-nail (un Mail User Agent - MUA) pour tester que Postfix est capable d'acheminer correctement le courrier.

Nous serons en mesure de faire fonctionner le Postfix avec quelques fonctionnalités de messagerie rudimentaires. Vous n'aurez pas de serveur de messagerie complet à la fin de ce guide, mais vous disposerez de certains des composants fondamentaux d'une telle configuration pour vous aider à démarrer.

Prérequis

Pour suivre ce guide d'installation et de configuration de Postfix, vous devez d'abord disposer des éléments suivants :

  • Un serveur Ubuntu 20.04 pour fonctionner comme un serveur Postfix
  • Un nom de domaine complet pointé vers votre serveur Ubuntu 20.04.

Notez que ce didacticiel suppose que vous configurez un hôte dont le nom de domaine complet est mail.citizix.com . Si nécessaire, veillez à modifier citizix.com ou mail.citizix.com pour refléter votre propre nom de domaine complet.

Étape 1 :Assurez-vous que votre serveur est à jour

Avant de continuer, assurez-vous que le serveur a mis à jour les packages. Utilisez cette commande pour y parvenir :

sudo apt update
sudo apt -y upgrade

Étape 2 :Installer Postfix

Postfix est inclus dans les référentiels Ubuntu par défaut en tant que postfix . Nous pouvons l'installer avec APT.

Notez qu'ici nous passons le DEBIAN_PRIORITY=low variable d'environnement dans cette commande d'installation. Le processus d'installation vous demandera alors de configurer des options supplémentaires :

sudo DEBIAN_PRIORITY=low apt install postfix

Ce processus d'installation ouvrira une série d'invites interactives. Utilisez les informations suivantes pour remplir vos invites :

  • Type général de configuration de messagerie ?  :Pour cela, choisissez Site Internet car cela correspond à nos besoins en infrastructure.
  • Nom de messagerie système :Il s'agit du domaine de base utilisé pour créer une adresse e-mail valide lorsque seule la partie compte de l'adresse est indiquée. Par exemple, supposons que le nom d'hôte de votre serveur soit mail.citizix.com . Vous souhaiterez probablement définir le nom de messagerie du système sur citizix.com de sorte que, étant donné le nom d'utilisateur user1 , Postfix utilisera l'adresse [email protected]citizix.com .
  • Destinataire racine et postmaster  :Il s'agit du compte Linux auquel sera transféré le courrier adressé à [email protected] et [email protected] . Utilisez votre compte principal pour cela. Dans cet exemple, admin .
  • Autres destinations pour lesquelles accepter le courrier :Cela définit les destinations de courrier que cette instance de Postfix acceptera. Si vous devez ajouter d'autres domaines que ce serveur sera chargé de recevoir, ajoutez-les ici. Sinon, la valeur par défaut sera suffisante.
  • Forcer les mises à jour synchrones dans la file d'attente des e-mails ?  :Étant donné que vous utilisez probablement un système de fichiers journalisé, acceptez Non ici.
  • Réseaux locaux :Il s'agit d'une liste des réseaux pour lesquels votre serveur de messagerie est configuré pour relayer les messages. La valeur par défaut fonctionnera pour la plupart des scénarios. Si vous choisissez de le modifier, assurez-vous d'être très restrictif en ce qui concerne la portée du réseau.
  • Taille limite de la boîte aux lettres :Cela peut être utilisé pour limiter la taille des messages. Le définir sur 0 désactive toute restriction de taille.
  • Caractère d'extension d'adresse locale :C'est le caractère qui peut être utilisé pour séparer la partie régulière de l'adresse d'une extension (utilisée pour créer des alias dynamiques). La valeur par défaut, + fonctionnera pour ce tutoriel.
  • Protocoles Internet à utiliser :choisissez de restreindre la version IP prise en charge par Postfix. Pour les besoins de ce didacticiel, choisissez tous .

Remarque  :Si vous avez besoin de revenir pour modifier ces paramètres, vous pouvez le faire en tapant :

sudo dpkg-reconfigure postfix

Les invites seront préremplies avec vos réponses précédentes.

Une fois le processus d'installation terminé, vous êtes prêt à effectuer quelques mises à jour de votre configuration Postfix.

Étape 3 :Modification de la configuration de Postfix

Les paramètres de configuration de Postfix sont définis dans le /etc/postfix/main.cf dossier. Vous pouvez utiliser le postconf de Postfix pour interroger ou définir les paramètres de configuration plutôt que de modifier directement le fichier.

Pour commencer, définissez l'emplacement de la boîte aux lettres de votre utilisateur Ubuntu non root. Dans ce guide, nous utiliserons le Maildir format, qui sépare les messages dans des fichiers individuels qui sont ensuite déplacés entre les répertoires en fonction de l'action de l'utilisateur. L'option alternative qui n'est pas couverte dans ce guide est la mbox format, qui stocke tous les messages dans un seul fichier.

Définir la home_mailbox variable vers Maildir/ . Plus tard, vous créerez une structure de répertoires sous ce nom dans le répertoire personnel de votre utilisateur. Configurer home_mailbox en tapant :

sudo postconf -e 'home_mailbox= Maildir/'

Ensuite, définissez l'emplacement des virtual_alias_maps table, qui mappe des comptes de messagerie arbitraires sur des comptes système Linux. Exécutez la commande suivante, qui mappe l'emplacement de la table sur un fichier de base de données de hachage nommé /etc/postfix/virtual :

sudo postconf -e 'virtual_alias_maps= hash:/etc/postfix/virtual'

Maintenant que vous avez défini l'emplacement du fichier de cartes virtuelles dans votre main.cf fichier, vous pouvez créer le fichier lui-même et commencer à mapper les comptes de messagerie aux comptes d'utilisateurs sur votre système Linux. Créez le fichier avec votre éditeur de texte préféré ; dans cet exemple, nous utiliserons vim :

sudo vim /etc/postfix/virtual

Indiquez toutes les adresses pour lesquelles vous souhaitez accepter des e-mails, suivies d'un espace et de l'utilisateur Linux auquel vous souhaitez que ce courrier soit envoyé.

Par exemple, si vous souhaitez accepter les e-mails à [email protected] et[email protected] et souhaite que ces e-mails soient remis à l'administrateur Utilisateur Linux, vous pouvez configurer votre fichier comme ceci :/etc/postfix/virtual

[email protected] admin
[email protected] admin

Une fois que vous avez mappé toutes les adresses sur les comptes de serveur appropriés, enregistrez et fermez le fichier.

Appliquez le mappage en tapant :

sudo postmap /etc/postfix/virtual

Redémarrez le processus Postfix pour être sûr que toutes vos modifications ont bien été appliquées :

sudo systemctl restart postfix

Si vous avez installé et activé le pare-feu ufw, vous pouvez autoriser les connexions au service en tapant :

sudo ufw allow Postfix

Étape 3 - Installation du client de messagerie et initialisation de la structure Maildir

Afin d'interagir avec le courrier en cours de distribution, cette étape vous guidera tout au long du processus d'installation du s-nail emballer. Il s'agit d'une variante riche en fonctionnalités du BSD xmail client qui peut gérer correctement le format Maildir.

Avant d'installer le client, cependant, il serait prudent de s'assurer que votre MAIL variable d'environnement est définie correctement. s-nail recherchera cette variable pour déterminer où trouver le courrier de votre utilisateur.

Pour vous assurer que le MAIL la variable est définie quelle que soit la manière dont vous accédez à votre compte, que ce soit via sshsusu - , ou sudo , par exemple :vous devrez définir la variable dans /etc/bash.bashrc fichier et ajoutez-le à un fichier dans /etc/profile.d pour vous assurer qu'il est défini pour tous les utilisateurs par défaut.

Pour ajouter la variable à ces fichiers, tapez :

echo 'export MAIL=~/Maildir' | sudo tee -a /etc/bash.bashrc | sudo tee -a /etc/profile.d/mail.sh

Pour lire la variable dans votre session en cours, sourcez le /etc/profile.d/mail.sh fichier :

source /etc/profile.d/mail.sh

Une fois cette opération terminée, installez le s-nail client de messagerie avec APT :

sudo apt install s-nail

Avant d'exécuter le client, vous devez ajuster quelques paramètres. Ouvrez le /etc/s-nail.rc fichier dans votre éditeur :

sudo vim /etc/s-nail.rc

En bas du fichier, ajoutez les options suivantes :/etc/s-nail.rc

. . .
set emptystart
set folder=Maildir
set record=+sent

Voici ce que font ces lignes :

  • set emptystart :permet au client d'ouvrir même avec une boîte de réception vide
  • set folder=Maildir  :définit le Maildir répertoire vers le folder interne variables
  • set record=+sent crée un sent Fichier mbox pour stocker les e-mails envoyés dans le répertoire défini comme folder variable, dans ce cas Maildir

Enregistrez et fermez le fichier lorsque vous avez terminé. Vous êtes maintenant prêt à initialiser la structure Maildir de votre système.

Un moyen rapide de créer la structure Maildir dans votre répertoire personnel consiste à vous envoyer un e-mail avec le s-nail commande. Parce que le sent ne sera disponible qu'une fois le Maildir créé, vous devez désactiver l'écriture pour cet e-mail initial. Pour ce faire, passez le -Snorecord option.

Envoyez l'e-mail en dirigeant une chaîne vers le s-nail commande. Ajustez la commande pour marquer votre utilisateur Linux comme destinataire :

echo 'init' | s-nail -s 'init' -Snorecord admin

Vous pouvez vérifier que le répertoire a été créé en recherchant votre ~/Maildir répertoire :

ls -R ~/Maildir

Vous verrez que la structure du répertoire a été créée et qu'un nouveau fichier de message se trouve dans ~/Maildir/new répertoire :

$ ls -R ~/Maildir
/home/ubuntu/Maildir:
cur  new  tmp

/home/ubuntu/Maildir/cur:

/home/ubuntu/Maildir/new:
1643972360.V10301Ifbca3M171366.dev-ubuntusrv.inv.re  1643972375.V10301Ifbca5M242683.dev-ubuntusrv.inv.re

/home/ubuntu/Maildir/tmp:

Maintenant que la structure de répertoires a été créée, vous êtes prêt à tester le s-nail client en affichant le init message que vous avez envoyé et envoi d'un message à une adresse e-mail externe.

Étape 4 :Tester le client

Pour ouvrir le client, exécutez le s-nail commande :

s-nail

Dans votre console, vous verrez une boîte de réception rudimentaire avec init message en attente :

$ s-nail
s-nail version v14.9.15.  Type `?' for help
/home/admin/Maildir: 1 messages 1 new
▸N  1 Ubuntu             2022-02-04 10:59   14/432   init
?

Appuyez sur ENTER pour afficher le message :

[-- Message  1 -- 14 lines, 432 bytes --]:
From [email protected] Fri Feb  4 10:59:35 2022
Date: Fri, 04 Feb 2022 10:59:35 +0000
To: [email protected]
Subject: init
Message-Id: <[email protected]>
From: Ubuntu <[email protected]>

init

Vous pouvez revenir à la liste des messages en saisissant h , puis ENTER :

h
▸R  1 Ubuntu             2022-02-04 10:59   14/432   init

Notez que le message a maintenant un état de R , indiquant qu'il a été lu.

Comme ce message n'est pas très utile, vous pouvez le supprimer en appuyant sur d , puis ENTER :

d

Pour revenir au terminal, saisissez q puis ENTER :

q

En guise de test final, vérifiez si s-nail est capable d'envoyer correctement des e-mails. Pour ce faire, vous pouvez diriger le contenu d'un fichier texte dans le s-nail processus, comme vous l'avez fait avec init message que vous avez envoyé à l'étape précédente.

Commencez par rédiger un message test dans un éditeur de texte :

vim ~/test_message

À l'intérieur, saisissez le texte que vous souhaitez envoyer :

Hello,

This is a test.  Please confirm receipt!

Enregistrez et fermez le fichier après avoir écrit votre message.

Ensuite, utilisez le cat commande pour rediriger le message vers le s-nail processus. Vous pouvez le faire avec l'exemple suivant, qui utilise ces options :

  • -s  :Ceci définit la ligne d'objet du message électronique
  • -r :Une modification facultative du champ "De :" de l'e-mail. Par défaut, l'utilisateur Linux avec lequel vous êtes connecté sera utilisé pour remplir ce champ. Le -r L'option vous permet de la remplacer par une adresse valide, telle que l'une de celles que vous avez définies dans /etc/postfix/virtual dossier. Pour illustrer, la commande suivante utilise [email protected]

Assurez-vous également de modifier [email protected] à une adresse e-mail valide à laquelle vous avez accès :

cat ~/test_message | s-nail -s 'Test email subject line' -r [email protected] [email protected]

Ensuite, accédez à la boîte de réception de l'adresse e-mail à laquelle vous avez envoyé le message. Vous verrez votre message y attendre presque immédiatement.

Remarque  :Si le message ne se trouve pas dans votre boîte de réception, il a peut-être été envoyé dans votre dossier Spam.

Vous pouvez afficher vos messages envoyés dans votre s-nail client. Redémarrez le client interactif :

s-nail

Depuis le client de messagerie, affichez vos messages envoyés en saisissant :

file +sent

Copier

Vous verrez une sortie comme celle-ci :

$ s-nail
s-nail version v14.9.15.  Type `?' for help
/home/admin/Maildir: 0 messages
No more mail.
? file +sent
+[/home/admin/Maildir/]sent: 1 message 1 new
▸N  1 [email protected] 2022-02-04 11:07   12/291   Test email subject line
?

Vous pouvez gérer le courrier envoyé en utilisant les mêmes commandes que vous utilisez pour le courrier entrant.

Conclusion

Vous avez maintenant Postfix configuré sur votre serveur Ubuntu 20.04. La gestion des serveurs de messagerie peut être une tâche difficile pour les nouveaux administrateurs système, mais avec cette configuration, vous devriez disposer de suffisamment de fonctionnalités de messagerie MTA pour vous lancer.


Ubuntu
  1. Comment installer et configurer Redis sur Ubuntu 18.04

  2. Comment installer et configurer Redmine sur Ubuntu 18.04

  3. Comment installer et configurer Samba sur Ubuntu 18.04

  4. Comment installer et configurer Redis sur Ubuntu 20.04

  5. Comment installer et configurer Postfix

Comment installer et configurer Postfix sur Debian

Comment installer et configurer OpenVAS 9 sur Ubuntu

Comment installer et configurer Redis dans Ubuntu 20.04

Comment installer et configurer Neo4j sur Ubuntu 20.04

Comment installer Postfix Mail Server sur Ubuntu 20.04

Comment installer et configurer le SDK Ubuntu dans Ubuntu 16.04 et 14.04