Publié le 27/12/2018.
Le 26 octobre 2018 sortait OpenSMTPD 6.4.0, suivie le 16 décembre d'un correctif, OpenSMTPD 6.4.1. Tout comme la version 5.4, elle se distingue par une importante refonte du fichier de configuration. Bien entendu, une fois de plus, mon tutoriel sur la mise en place d'un serveur email a été mis à jour pour tenir compte de cette évolution.
Jusqu'à présent, le gros de la logique de traitement était gouvernée par l'utilisation d'accept
et, dans une moindre mesure, de reject
. Et bien c'est fini, à la trappe les vieilleries ! Désormais, la logique sera séparée en deux parties bien distinctes.
D'une part, action
la définition d'actions à effectuer, typiquement un relay
ou bien une manière de délivrer un email (lmpt
, maildir
, …). D'autre part, on trouve match
qui pose les conditions sous lesquelles ces actions seront activées.
Un exemple simple pour la délivrance d'emails locaux avec LMTP :
accept alias <aliases> deliver to lmtp "/run/dovecot/lmtp"
Est transformé en :
action local_deliver lmtp "/run/dovecot/lmtp" alias <aliases>
match action local_deliver
Cette nouvelle syntaxe est tout d'abord justifiée par un véritable besoin sous-jacent que Gilles explique fort bien dans son blog. Et en bonus, je trouve que facilite énormément la compréhension du fichier de configuration. La transition n'est pas bien difficile et au final on y gagne.
Passé la grosse transition avec action et match, il faut ensuite prendre en compte quelques abréviations fort appréciables. Tout d'abord, dans les pki
et ca
, certificate
est abrégé en cert
. Ensuite, dans les listen
, mask-source
est abrégé en mask-src
. Enfin, dans relay
, hostname
est remplacé par helo
.
Attention, cette version utilise une queue incompatible avec celle des versions précédentes. Le plus simple est, avant de mettre à jour, de s'assurer que la queue est vide.
smtpctl show queue
Si besoin, analysez, voir supprimez, ce qui bloque. smtpctl
est là pour vous aider.