Maniatux's Blog

Welcome to the internet

OpenSMTPD + Debian 6.0 Squeeze HowTo

Rédigé par Xavier - -

Bien qu'OpenSMTPD soit développé pour OpenBSD, il existe une version portable qui peut être compilée sur d'autres systèmes tels que Linux. Voici un petit howto pour mettre en place OpenSMTPD sur Debian 6.0 Squeeze par compilation.

Note : Il est déconseillé d'utiliser OpenSMTPD sur un serveur Debian en production, il n'y a pas de release stable ni de paquets, et la procédure décrite ici n'est pas parfaitement propre.

Dépendances

# apt-get install build-essential bison automake libtool libdb-dev libssl-dev libevent-dev

Récupération et compilation

# cd /root
# wget http://chl.be/opensmtpd/opensmtpd-latest.tar.gz
# tar -xvf opensmtpd-latest.tar.gz
# cd opensmtpd
# ./bootstrap
# ./configure
# make
# make install
# useradd -c "SMTP Daemon" -d /var/empty -s /sbin/nologin _smtpd
# mkdir /var/empty
Note : Chl, qui met à disposition cette version d'OpenSMTPD, propose d'utiliser git pour avoir une version plus à jour. Installez git sur debian et lancez un git clone sur git://github.com/clongeau/opensmtpd.git

OpenSMTPD a été installé dans /usr/local c'est là que vous y trouverez ses binaires. Cependant, les fichiers de configuration seront dans /etc/mail. Le répertoire /var/empty doit être créé car OpenSMTPD sera chrooté dedans. Tous ces chemins peuvent être modifiés en passant le bon paramètre à configure. Pour voir la liste, entrez ./configure --help.

Configuration

Il faut commencer par désactiver le MTA par défaut de Debian qui est exim4. On pourrait aussi simplement le désinstaller, mais comme OpenSMTPD ne fait pas partie "officiellement" du système (il n'est pas listé comme package), certaines applications réclamant un MTA risquent de le remettre.

# service exim4 stop
# update-rc.d exim4 disable

Créez ensuite le fichier de configuration pour opensmtpd, il doit se situer dans /etc/mail/smtpd.conf

# Interfaces
listen on lo
listen on eth0

# Generic Parameters
hostname "smtpd.my.domain"

# ACL
accept for local deliver to mbox
accept for all relay

Comme vous vous en doutez, nous venons de faire une configuration strictement minimale. Pas d'alias, pas de communication avec l'extérieur... pour le reste, à vous de vous débrouiller. Vous pouvez vous inspirer de cet article.

Pour lancer OpenSMTPD, utilisez la commande :

# smtpd

Pour avoir des logs, deux solutions : ajouter -v à la commande smtpd, ou alors consulter le fichier /var/log/mail.log.

Note : Si vous utilisez la commande mail depuis le serveur, c'est exim4 qui sera utilisé. Il est probablement possible de remédier à cela avec des alias.

Classé dans : Sysadmin - Mots clés : aucun