Table des matières

Postfix-Dovecot

Password MySQL MariaDBRootVincent1890

ispconfig pass : 014cf946

Différence entre Postfix et Dovecot

Il y a deux différences lorsqu'il s'agit de traiter des mails:

  1. Mail transfer
  2. Mail deliver

Config definition :

# définis le nom Internet (fqdn) de la machine.
myhostname = mon_serveur.mon_domaine.net

# spécifie le nom du domaine local (myhostname moins le nom de la bécane)
mydomain = mon_domaine.net

# définit l'adresse d'émission des messages postés localement
myorigin = mon_domaine.net

# définit une liste de domaine ou nom de bécanes que postfix
# considérera comme la destination finale des messages.
# Il faut donc mettre ici la liste des domaines qui <b>ne sont pas relayés</b>
# sur d'autres machines.
mydestination = mon_domaine.net, mon_second_domaine.net

Ca ca veut dire:
Si tu es authentifié en SASL.. ok.. sinon au revoir..
Change cette ligne pour au moins accepter les mails pour ton domaine .. sans avoir besoin d'etre authentifié.

smtpd_client_restrictions = permit_sasl_authenticated, reject

Page aide a la configuration :

man 5 transport

Configuration :

Commande utile :
https://blog.valouille.fr/2014/04/commandes-utiles-pour-postfix/

https://guide.ubuntu-fr.org/server/dovecot-server.html
https://tech.feub.net/2011/05/serveur-de-messagerie-simple-avec-postfix-et-dovecot/
https://scaron.info/blog/debian-mail-postfix-dovecot.html
https://xdeb.org/post/2018/02/07/run-your-own-mail-server-with-postfix-and-dovecot/
https://arstechnica.com/information-technology/2014/03/taking-e-mail-back-part-2-arming-your-server-with-postfix-dovecot/2/
https://arstechnica.com/information-technology/2014/03/taking-e-mail-back-part-2-arming-your-server-with-postfix-dovecot/3/
https://www.digitalocean.com/community/tutorials/how-to-set-up-a-postfix-e-mail-server-with-dovecot
https://arstechnica.com/information-technology/2014/02/how-to-run-your-own-e-mail-server-with-your-own-domain-part-1/
https://arstechnica.com/information-technology/2014/03/taking-e-mail-back-part-2-arming-your-server-with-postfix-dovecot/
https://arstechnica.com/information-technology/2014/03/taking-e-mail-back-part-3-fortifying-your-box-against-spammers/
https://arstechnica.com/information-technology/2014/04/taking-e-mail-back-part-4-the-finale-with-webmail-everything-after/
http://wiki.ncad.fr/index.php?title=Postfix#Envoi_des_mails
https://w3.nonsenz.org/2016/06/configurer-postfix-pour-smtp-orange-authentification/
https://yunohost.org/#/isp_orange_fr
https://artisan.karma-lab.net/propre-serveur-courrier-postfix
https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-postfix-as-a-send-only-smtp-server-on-ubuntu-20-04-fr
https://www.digitalocean.com/community/tutorials/how-to-use-an-spf-record-to-prevent-spoofing-improve-e-mail-reliability

https://wiki.fiat-tux.fr/admin:mail:rspamd

Serveur Postfix

Postfix est un serveur de messagerie électronique et un logiciel libre. Il se charge de la livraison de messages électroniques et a été conçu comme une alternative plus rapide, plus facile à administrer et plus sécurisée que l'historique Sendmail. Il permet de gérer presque tous les cas d'une utilisation professionnelle et il remplace idéalement toutes sortes de solutions moins libres.

Afin d'optimiser l'analyse de courriels, Postfix permet de déléguer la gestion de ceux-ci à un processus externe, qui se chargera de déterminer si le courriel est accepté ou refusé (très utile dans les systèmes anti-pourriel).


Schéma classique

Principe de base

Une boîte aux lettres est représentée par son adresse e-mail de type : [email protected]. Si le domaine n'est pas renseigné alors c'est une boîte aux lettres locale au serveur.

Il existe 3 composantes du système de messagerie :

Ensuite s'ajoutent les protocoles inhérents à la messagerie tels que SMTP, POP, IMAP pour ne citer que les plus connus.

SMTP

SMTP c'est-à-dire Simple Mail Transfer Protocol. Cela permet de transmettre des messages électroniques sur Internet. Fondamentalement, le protocole gère les emails sortants. Il est utilisé entre les serveurs pour envoyer des courriers électroniques à un serveur et également par les serveurs pour transmettre des courriers électroniques à un autre serveur. Il existe d'autres protocoles disponibles, mais SMTP est l'un des protocoles les plus courants parmi eux.

SMTP fonctionne essentiellement sur trois ports :
Port 25 - port SMTP non chiffré par défaut
Port 2525 - il est ouvert pour tous les serveurs SiteGround au cas où le port 25 serait filtré et que vous deviez envoyer des courriels non chiffrés avec SMTP.
Port 465 - utilisé pour envoyer des messages en utilisant le protocole SMTP en toute sécurité

POP ou POP3 (protocole de bureau de poste)

POP3 est utilisé pour recevoir des courriels du serveur au client local. Lorsque vous utilisez POP3 pour connecter votre compte de messagerie, les e-mails sont téléchargés localement sur votre système et sont supprimés du serveur de messagerie. Grâce à cela, les utilisateurs peuvent réduire l’espace de stockage de leur serveur Web en enregistrant les messages sur l’ordinateur local.

POP3 fonctionne essentiellement sur deux ports :
Port 110 - port POP3 non chiffré par défaut
Port 995 - Ce port est nécessaire si vous souhaitez vous connecter en utilisant POP3 en toute sécurité.

IMAP

IMAP est étendu en tant que protocole d'accès aux messages Internet, utilisé pour recevoir des messages électroniques à partir d'Internet. Grâce au protocole IMAP, vous pouvez recevoir vos emails sur plusieurs systèmes car les messages reçus resteront sur le serveur de messagerie.

IMAP fonctionne sur deux ports :
Port 143 - il s'agit du port IMAP non chiffré par défaut
Port 993 - vous en avez besoin pour vous connecter en utilisant IMAP en toute sécurité

Prérequis

Installation

# apt-get install postfix 

Au cours de l'installation du paquet, plusieurs questions sont posées par l'intermédiaire de Debconf. Les réponses permettrons de générer un /etc/postfix/main.cf

A la première question, répondre “Site Internet” qui est adapté a une serveur qui reçoit et envoie le courrier directement a ses destinataires.

La deuxieme question porte sur le nom complet de la machine employé pour générer une adresse email depuis un nom d'utilisateur local. En gros il faut mettre la partie suivant l'arobase @. Par exemple pour [email protected], la réponse est exemple.com.

Configuration

Fichier de configuration postfix

Le fichier de configuration de Postfix est le fichier /etc/postix/main.cf

Il est d'abord important de connaitre quelques principaux paramètres:

myhostname: Ce paramètre désigne le nom complet de l'ordinateur, le FQDN du serveur. Si cette option est commentée, postfix va vérifier le résultat de la commande hostname. Il faut vérifier donc /etc/hosts. Exemple: ced.mondomaine.local

mydestination: Ce paramètre inclut le nom complet de la machine ainsi que des synonymes de localhost. Il faut bien vérifier que le (ou les) domaine principale soit renseigné. D'une manière général, il convient habituellement ici de donner tous les noms de domaines pour lesquels cette machine fais office de serveur MX.

mynetworks: indique les réseaux habilités à envoyer du courrier par l'intermédiaire de cette machine. Par défaut Postfix est configuré pour n'accepter que des courriers issus de la machine elle-même. Il faut généralement ajouter le réseau local.

home_mailbox: indique le répertoire de stockage du courrier qui pourra être rapatrier plus tard avec POP ou IMAP.

Exemple de configuration

En général, on ne change pas les autres paramètres, sauf pour des cas plus spécifiques à adapter selon vos besoin. Voici un exemple du fichier /etc/postfix/main.cf

...
myhostname = debian.mondomaine.local
mydestination = exemple.com, mail.exemple.com, mondomaine.local, debian.mondomaine.local, localhost.mondomaine.local , localhost
mynetworks = 127.0.0.0/8 192.168.0.0/24
...

Test de la configuration

Il faut au préalable redémarrer Postfix:

# /etc/init.d/postix restart 

On suppose un utilisateur John.

# adduser john 

Répondre aux questions.

Si la commande mail n'est pas installée, installez le paquet mailutils

# apt-get install mailutils
# su john 

Maintenant, tentez d'envoyer un mail a [email protected] Puis consulter:

# mail

Il devrait y avoir un mail recu. Postfix fonctionne.

Configuration serveur POP

Le protocole de récupération POP est le plus simple à mettre en œuvre pour récuperer son courrier électronique.

Nous allons utiliser courier-pop, un serveur POP tres simple à mettre en oeuvre. (Nous ne détaillerons pas la configuration du serveur dans cet article.)

# aptitude install courier-pop

Répondre non à la question

Nous créons ensuite un repertoire dans le repertoire utilisateur.

# su john
# cd /home/john
# maildirmake Maildir

Nous devons indiquer a Postfix de redirigé les mails recu vers le nouveau répertoire de stockage des mails des utilisateurs. Il faut éditer le fichier /etc/postfix/main.cf et ajouter à la fin

...
home_mailbox = Maildir/
...

On relance Postfix pour prendre en compte la nouvel configuration

# /etc/init.d/postfix restart

C'est prêt. Vous pouvez configurer votre logiciel de courrier électronique préféré. Le nom d'utilisateur et le mot de passe sont les mêmes que les comptes utilisateurs locaux du serveur.

Restrictions à la réception et à l'envoi

Avec le nombre croissant de message non sollicités (spams), il est nécessaire d'être de plus en plus vigilant strict sur les messages que le serveur accepte. Voici quelques stratégies intégrées à Postfix.

Exemple de restriction en fonction de l'adresse du client dans le fichier /etc/postfix/main.cf:

smtpd_client_restrictions = permit_mynetworks,
warn_if_reject reject_unknown_client,
check_client_access hash:/etc/postfix/access_clientip,
reject_rbl_client sbl-xbl.spamhaus.org,
reject_rbl_client list.dsbl.org

Dans ces listes de règles sont évalué dans l'ordre, de la première à la dernière. L'ordre a donc une importance et l'inversion de deux règles peut mettre en place un comportement différent.

permit_mynetwork: placer en tete, permet d'accepter toute les machines su réseau local.

reject_unknown_client: Refuse les machines dépourvues de configuration DNS valide. Cette restriction est trop sévère, alors elle est précédé de warn_if_reject pour transformer l'avertissement en simple refus enregistré dans les logs.

check_client_access: permet de mettre en place une liste noire et une liste blanche.

reject_rbl_client: Indique un serveur distant de listes noires.

Dépannage de Postfix en cas de problème(s)

Si dans les logs de postfix (/var/mail/error.log) vous trouvez ce genre de message :

May 23 21:56:24 serveur postfix/local[3725]: fatal: open database /etc/aliases.db: No such file or directory

deletez le fichier en question et regénérez-le avec :

newaliases

le fichier sera regénéré depuis /etc/aliases

smtp-fr

https://groupes.renater.fr/wiki/smtp-fr/public/dkim

Sources