OpenSMTPD

De Le Wiki du Forum-Debian.fr
Révision datée du 31 décembre 2013 à 23:27 par Mimoza (discussion | contributions) (Page créée avec « = Pourquoi OpenSMTPD = Sur le marché actuel des serveurs de courrier il y a des ancêtres (Courrier), des installés par défaut (Exim), des populaires (Postfix) et parfo... »)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)
Aller à la navigation Aller à la recherche

Pourquoi OpenSMTPD

Sur le marché actuel des serveurs de courrier il y a des ancêtres (Courrier), des installés par défaut (Exim), des populaires (Postfix) et parfois des petits nouveaux venant de nos cher cousin les BSD. OpenSMTPD fait parti de cette dernière catégorie, il est issue d'une longue ligné d'outil issu du projet OpenBSD qui nous a sorti des perles comme OpenSSH qui est devenu LE standard. Ensuite ils ont pour objectif d'en faire un serveur :

  • extrêmement sécurisé
  • fiable en toute circonstance (un message reçut devra êter traiter quoi qu'il se passe)
  • résistant à la charge (ils ne visent pas les perfs extrême mais l'assurance du traitement dans un délai raisonnable)
  • léger et suffisant pour un usage classique (pas de support de cas particulier)
  • simple de configuration

Donc un serveur parfait pour de l'auto-hébergement

Quelques rappels de base

Malgré le fait que si vous chercher a mettre en place ce genre de serveur vous avez des bases confortables, je vais quand même redéfinir quelques termes liés à l'environnement du courrier électronique.

  • MTA = Agent de transfert des courriels (Mail Transfert Agent), on y classe tout les serveurs proposant du SMTP donc par exemple Postfix, Exim, OpenSMTPD etc. c'est a leur niveau que l'on vient filtrer le SPAM, Virus etc.
  • MDA = Agent de délivrance des courriels (Mail Delivery Agent) il font l'interface entre les MTA et MUA, ils sont chargé de mettre le courrier arrivé dans la bonne boite aux lettres. Ils ont aussi la charge de donner les accès IMAP et POP.
  • MUA = Agent d'utilisation des courriels (Mail User Agent), c'est voter client de courriel, qu'il soit par interface web (RoundCube, Horde, Hotmail, Gmail, ...) ou en client lourd (Thunderbird, Outlook, Lotus ...).
  • SMTP = Protocole simple de transfert de courriel (Simple Mail Transfert Protocol) permet l'envoi et la réception entre MTA des courriels
  • POP = Protocole de bureau de poste (Post Office Protocol) Permet de récupérer les courriers électroniques situés sur un serveur MDA. Par défaut les courriel ainsi récupérés sont supprimer du serveur.
  • IMAP = Protocole d'accès aux messages d'internet (Internet Message Access Protocol) remplacant du POP il permet d'interagir avec le serveur MDA, les courriers ne sont pas supprimer par défaut et diverses actions sont possible comme la création/modification/suppression/déplacement de dossier et courriels.

Installation

Jessie

Pour cela rien de plus simple un paquet est présent dans les dépots, donc une classique commande d'installation suffit

apt-get install opensmtpd

Whezzy

Là ça se gate, pas de paquet dispo et les backport ne l'ont pas encore pris en compte. Il existe bien la méthode classique d'installation avec récupération des sources et compilation

$wget http://www.opensmtpd.org/archives/opensmtpd-portable-latest.tar.gz
$tar xvzf opensmtpd-portable-latest.tar.gz
$cd opensmtpd-*
$ ./configure
$ make
$ make install

Mais nous allons feinté pour nous recréer un paquet tout ce qu'il y a de plus propre. Nous aurions pu récupérer le paquet de Jessie pour l'installer directement mais il y a une dépendance a Libc6 dans une version supérieur a ce qui est possible pour Whezzy, le reste des dépendance est satisfait ce qui est une chance.

Dans notre sources.list nous allons ajouter une ligne nous permettant de récupérer les sources du paquet

deb-src http://ftp.fr.debian.org/debian/ jessie main

je vous recommandes quand même d'ajouter un pinning pour éviter toute mauvaise manipulation

Package: *
Pin: release o=Debian, a=jessie
Pin-Priority: 490

Puis nous faisons tout d'abord les commandes suivantes

  1. apt-get update
  2. apt-get build-dep opensmtpd
  3. apt-get install debhelper libpam0g-dev
  • La première ligne permet de prendre en compte la modification du sources.list
  • La deuxième ligne de récupère différent paquet *-dev nécessaire à la recompilation
  • Enfin installation de 2 paquet (et leurs dépendances) nous permettant la création d'un paquet

Ensuite avec votre utilisateur habituel dans un répertoire dédié :

$ apt-get source opensmtpd

Cela vous récupère les sources de OpenSMTPD Enfin la commande de compilation

$ fakeroot ./debian/rules binary

Laisser cuire quelques minutes et normalement vous devez obtenir un joli paquet prêt à l'emploi pour votre système. l'installation de ce dernier se fait par un simple

#dpkg -i <mon paquet OpenSMTPD>

Si vous avez une erreur de conflit de « mail-transport-agent » c'est que vous avez Exim ou Postfix ou tout auter MTA encore présent sur votre système, ce qui n'est pas toléré par Debian.


Version plus anciennes (Squezee, ...)

Un tutoriel se trouve ici, mais come ces version de debian ne sont plus recommandé je ne traite pas le sujet.

Configuration

A faire

Ressources