Introduction
Postfix est un agent de transfert de courrier open source populaire (MTA) qui peut être utilisé pour router et livrer des e-mails sur un système Linux. On estime Qu’environ 25% des serveurs de messagerie publics sur internet exécutent Postfix.
dans ce guide, nous allons vous apprendre à démarrer rapidement avec Postfix sur un serveur Ubuntu 16.04.
prérequis
pour suivre ce guide, vous devez avoir accès à un utilisateur non root avec des privilègessudo
. Vous pouvez suivre notre Ubuntu 16.,04 guide de configuration initiale du serveur pour créer l’utilisateur nécessaire.
afin de configurer correctement Postfix, vous aurez besoin d’un nom de domaine complet pointé sur votre serveur Ubuntu 16.04. Vous pouvez trouver de l’aide sur la configuration de votre nom de domaine avec DigitalOcean en suivant ce guide. Si vous prévoyez d’accepter le courrier, vous devrez vous assurer que vous avez un enregistrement MX pointant vers votre serveur de messagerie ainsi.
Pour les besoins de ce tutoriel, nous supposons que vous configurez un hôte qui a le nom de domaine complet de mail.example.com
.,
Étape 1: Installer Postfix
Postfix est inclus dans les dépôts par défaut D’Ubuntu, donc l’installation est incroyablement simple.
pour commencer, mettez à jour votre cache de package localapt
, puis installez le logiciel. Nous allons passer la variable d’environnement DEBIAN_PRIORITY=low
dans notre commande d’installation afin de répondre à quelques invites supplémentaires:
- sudo apt-get update
- sudo DEBIAN_PRIORITY=low apt-get install postfix
utilisez les informations suivantes pour remplir correctement vos invites pour votre environnement:
- configuration générale du type de messagerie?,: Pour cela, nous choisirons le Site Internet car cela correspond à nos besoins d’infrastructure.
- nom de messagerie Système: c’est le domaine de base utilisé pour construire une adresse e-mail valide lorsque seule la partie compte de l’adresse est donnée. Par exemple, le nom de notre serveur est
mail.example.com
, mais nous voulons probablement pour définir le système de messagerie du nom deexample.com
de sorte que, donné le nom d’utilisateuruser1
, Postfix va utiliser l’adresse.,
- destinataire du courrier racine et postmaster: il s’agit du compte Linux qui sera transféré le courrier adressé à
root@
Etpostmaster@
. Utilisez votre compte principal pour cela. Dans notre cas, sammy. - autres destinations pour lesquelles accepter le courrier: définit les destinations de courrier que cette instance Postfix acceptera. Si vous devez ajouter d’autres domaines que ce serveur sera responsable de recevoir, ajoutez-les ici, sinon, la valeur par défaut devrait fonctionner correctement.
- forcer les mises à jour synchrones sur la file d’attente de courrier?,: Puisque vous utilisez probablement un système de fichiers journalisé,acceptez No 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 devrait fonctionner pour la plupart des scénarios. Si vous choisissez de le modifier, assurez-vous d’être très restrictif en ce qui concerne la plage de réseau.
- limite de taille de Boîte aux lettres: ceci 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é pour créer des alias dynamiques).
- protocoles Internet à utiliser: Choisissez de restreindre la version IP prise en charge par Postfix. Nous choisirons « tous » pour nos besoins.
pour être explicite, voici les paramètres que nous utiliserons pour ce guide:
Si vous avez besoin de réajuster 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.,
Lorsque vous avez terminé, nous pouvons maintenant faire un peu plus de la configuration de notre système, nous voudrions que.
Étape 2: Modifier la Configuration de Postfix
ensuite, nous pouvons ajuster certains paramètres que le paquet ne nous a pas demandés.
Pour commencer, nous pouvons définir la boîte aux lettres. Nous utiliserons le format Maildir, qui sépare les messages en fichiers individuels qui sont ensuite déplacés entre les répertoires en fonction de l’action de l’utilisateur. L’autre option est le format mbox (que nous ne couvrirons pas ici) qui stocke tous les messages dans un seul fichier.,
nous allons définir la variablehome_mailbox
surMaildir/
qui créera une structure de répertoire sous ce nom dans le répertoire personnel de l’utilisateur. La commandepostconf
peut être utilisée pour interroger ou définir les paramètres de configuration. Configurer home_mailbox
en tapant:
- sudo postconf -e 'home_mailbox= Maildir/'
Ensuite, on peut définir l’emplacement de la balise virtual_alias_maps
tableau. Ce tableau mappe des comptes de messagerie arbitraires à des comptes système Linux. Nous allons créer cette table à /etc/postfix/virtual
., Encore une fois, nous pouvons utiliser la commande postconf
:
- sudo postconf -e 'virtual_alias_maps= hash:/etc/postfix/virtual'
Étape 3: mapper les adresses Mail aux comptes Linux
ensuite, nous pouvons configurer le fichier de cartes virtuelles. Ouvrez le fichier dans votre éditeur de texte:
- sudo nano /etc/postfix/virtual
la table de carte d’alias virtuelle utilise un format très simple. Sur la gauche, vous pouvez lister toutes les adresses que vous souhaitez accepter le courrier. Ensuite, séparés par des espaces, entrez L’utilisateur Linux auquel vous souhaitez que le courrier soit livré.,
Par exemple, si vous voulez accepter un mail à et
et j’aimerais avoir ces e-mails livrés à la balise
sammy
utilisateur de Linux, vous pouvez configurer votre fichier comme ceci:
[email protected] [email protected] sammy
une fois que vous avez mappé toutes les adresses pour le serveur approprié comptes, enregistrez et fermez le fichier.,
nous pouvons appliquer le mappage en tapant:
- sudo postmap /etc/postfix/virtual
redémarrez le processus Postfix pour être sûr que toutes nos modifications ont été appliquées:
- sudo systemctl restart postfix
Étape 4: ajustez le pare-feu
Si vous exécutez le pare-feu UFW, comme configuré dans le guide de nous devrons autoriser une exception pour postfix.
vous pouvez Vous permettre les connexions au service en tapant:
- sudo ufw allow Postfix
Le composant serveur Postfix est installé et prêt. Ensuite, nous allons configurer un client qui peut gérer le courrier Postfix va traiter.,
Étape 5: Configuration de l’environnement pour correspondre à l’emplacement du courrier
avant d’installer un client, nous devons nous assurer que notre variable d’environnementMAIL
est correctement définie. Le client inspectera cette variable pour savoir où rechercher le courrier de l’utilisateur.
pour la variable à définir indépendamment de la façon dont vous accédez à votre compte (par le biais de ssh
, su
, su -
, sudo
, etc.) nous devons définir la variable dans quelques endroits différents., Nous l’ajouterons à /etc/bash.bashrc
et à un fichier dans /etc/profile.d
pour nous assurer que chaque utilisateur l’a configuré.
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 actuelle, vous pouvez rechercher le fichier/etc/profile.d/mail.sh
:
- source /etc/profile.d/mail.sh
Étape 6: Installer et configurer le Client de messagerie
afin d’interagir avec le courrier en cours de livraison, nous installerons le packages-nail
., Il s’agit d’une variante du client BSD xmail
, qui est riche en fonctionnalités, peut gérer correctement le format Maildir et est principalement rétrocompatible. La version GNU demail
a quelques limites frustrantes, telles que toujours enregistrer le courrier lu au format mbox quel que soit le format source.
Pour installer la balise s-nail
le paquet, type:
- sudo apt-get install s-nail
Nous devons régler quelques paramètres., Ouvrez le /etc/s-nail.rc
le fichier dans votre éditeur de texte:
- sudo nano /etc/s-nail.rc
Vers la fin du fichier, ajoutez les options suivantes:
. . .set emptystartset folder=Maildirset record=+sent
Cela permettra au client de s’ouvrir, même avec une boîte de réception vide. Il définira également le répertoireMaildir
dans la variable internefolder
, puis l’utilisera pour créer un fichier mboxsent
dans celui-ci, pour stocker le courrier envoyé.
Enregistrez et fermez le fichier lorsque vous avez terminé.,
Étape 7: initialisez le Maildir et testez le Client
maintenant, nous pouvons tester le client.
initialisation de la structure du répertoire
la façon la plus simple de créer la structure Maildir dans notre répertoire personnel est de nous envoyer un e-mail. Nous pouvons le faire avec la commandemail
. Étant donné que le fichiersent
ne sera disponible qu’une fois le Maildir créé, nous devons désactiver l’écriture de celui-ci pour notre e-mail initial. Nous pouvons le faire en passant l’option-Snorecord
.,
envoyez l’e-mail en envoyant une chaîne à la commandemail
. Ajustez la commande pour marquer votre Utilisateur Linux comme destinataire:
- echo 'init' | mail -s 'init' -Snorecord sammy
Vous devriez obtenir la réponse suivante:
OutputCan't canonicalize "/home/sammy/Maildir"
ceci est normal et ne s’affichera que pendant ce premier message., Nous pouvons vérifier que le répertoire a été créé par la recherche de notre ~/Maildir
répertoire:
- ls -R ~/Maildir
Vous devriez voir la structure de répertoire a été créé et qu’un nouveau fichier de message dans le ~/Maildir/new
répertoire:
Il semble que notre courrier a été livré.,:
- h
Outputs-nail version v14.8.6. Type ? for help."/home/sammy/Maildir": 1 message 1 new>R 1 [email protected] Wed Dec 31 19:00 14/369 init
comme ce message n’est pas très utile, nous pouvons le supprimer avec d:
- d
Quitter pour revenir au terminal en tapant q:
- q
envoi de courrier avec le client
Vous pouvez tester l’envoi de courrier en tapant un message dans un éditeur de texte:
- nano ~/test_message
à l’intérieur, entrez du texte que vous souhaitez envoyer par e-mail:
Hello,This is a test. Please confirm receipt!
en div id= »f401fb4c18″> commande, nous pouvons diriger le message vers le processusmail
., Cela enverra le message en tant qu’utilisateur Linux par défaut. Vous pouvez régler le champ « De” avec la balise -r
drapeau si vous souhaitez modifier cette valeur à quelque chose d’autre:
- cat ~/test_message | mail -s 'Test email subject line' -r from_field_account [email protected]
Les options ci-dessus sont:
-
-s
: La ligne d’objet de l’e-mail -
-r
: Une option de modifier le champ « from:” de l’e-mail. Par défaut, L’utilisateur Linux auquel vous êtes connecté sera utilisé pour remplir ce champ. L’option-r
vous permet de remplacer cela., -
: Le compte à envoyer le mail. Modifier à un compte valide, vous avez accès.
Vous pouvez afficher vos messages envoyés dans votre mail
le client. Redémarrez le client interactif en tapant:
- mail
ensuite, affichez vos messages envoyés en tapant:
- file +sent
Vous pouvez gérer le courrier envoyé en utilisant les mêmes commandes que celles que vous utilisez pour le courrier entrant.
Conclusion
Vous devriez maintenant avoir postfix configuré sur votre serveur Ubuntu 16.04., La gestion des serveurs de messagerie peut être une tâche difficile pour les administrateurs débutants, mais avec cette configuration, vous devriez avoir une fonctionnalité de messagerie MTA de base pour vous aider à démarrer.
Laisser un commentaire