Installation serveur · 4 min read · Nov 09, 2025
Le Serveur Parfait - CentOS 5.2 [ISPConfig 3] - Page 4
10 Installer Courier-IMAP, Courier-Authlib, Et Maildrop
Malheureusement, il n’y a pas de paquets rpm pour Courier-IMAP, Courier-Authlib, et Maildrop, donc nous devons les construire nous-mêmes.
Les paquets RPM ne doivent pas être construits en tant que root ; courier-imap refusera même de se compiler s’il détecte que la compilation est exécutée en tant qu’utilisateur root. Par conséquent, nous créons maintenant un compte utilisateur normal (compileuser dans cet exemple) et lui donnons un mot de passe :
useradd -m -s /bin/bash compileuser
passwd compileuserNous aurons besoin de la commande sudo plus tard afin que l’utilisateur compileuser puisse compiler et installer les paquets rpm. Mais d’abord, nous devons permettre à compileuser d’exécuter toutes les commandes en utilisant sudo :
Exécutez
visudoDans le fichier qui s’ouvre, il y a une ligne root ALL=(ALL) ALL. Ajoutez une ligne similaire pour compileuser juste en dessous de cette ligne :
| [...] root ALL=(ALL) ALL compileuser ALL=(ALL) ALL [...] |
Maintenant, nous sommes prêts à construire notre paquet rpm. D’abord, devenons l’utilisateur compileuser :
su compileuserEnsuite, nous créons notre environnement de construction :
mkdir $HOME/rpm
mkdir $HOME/rpm/SOURCES
mkdir $HOME/rpm/SPECS
mkdir $HOME/rpm/BUILD
mkdir $HOME/rpm/SRPMS
mkdir $HOME/rpm/RPMS
mkdir $HOME/rpm/RPMS/i386echo "%_topdir $HOME/rpm" >> $HOME/.rpmmacrosMaintenant, nous téléchargeons les fichiers sources depuis http://www.courier-mta.org/download.php :
cd /tmp
wget http://prdownloads.sourceforge.net/courier/courier-authlib-0.62.1.tar.bz2
wget http://prdownloads.sourceforge.net/courier/courier-imap-4.4.1.tar.bz2
wget http://prdownloads.sourceforge.net/courier/maildrop-2.0.4.tar.bz2Maintenant (toujours dans /tmp), nous pouvons construire courier-authlib :
sudo rpmbuild -ta courier-authlib-0.62.1.tar.bz2Après le processus de construction, les paquets rpm peuvent être trouvés dans $HOME/rpm/RPMS/i386 ( $HOME/rpm/RPMS/x86_64 si vous êtes sur un système x86_64) :
cd $HOME/rpm/RPMS/i386La commande
ls -lvous montre les paquets rpm disponibles :
[compileuser@server1 i386]$ ls -l
total 584
-rw-r–r– 1 root root 140978 Feb 26 03:00 courier-authlib-0.62.1-1.i386.rpm
-rw-r–r– 1 root root 309196 Feb 26 03:00 courier-authlib-debuginfo-0.62.1-1.i386.rpm
-rw-r–r– 1 root root 34672 Feb 26 03:00 courier-authlib-devel-0.62.1-1.i386.rpm
-rw-r–r– 1 root root 17855 Feb 26 03:00 courier-authlib-ldap-0.62.1-1.i386.rpm
-rw-r–r– 1 root root 14048 Feb 26 03:00 courier-authlib-mysql-0.62.1-1.i386.rpm
-rw-r–r– 1 root root 13214 Feb 26 03:00 courier-authlib-pgsql-0.62.1-1.i386.rpm
-rw-r–r– 1 root root 8175 Feb 26 03:00 courier-authlib-pipe-0.62.1-1.i386.rpm
-rw-r–r– 1 root root 35927 Feb 26 03:00 courier-authlib-userdb-0.62.1-1.i386.rpm
[compileuser@server1 i386]$
Sélectionnez ceux que vous souhaitez installer, et installez-les comme ceci :
sudo rpm -ivh courier-authlib-0.62.1-1.i386.rpm courier-authlib-mysql-0.62.1-1.i386.rpm courier-authlib-devel-0.62.1-1.i386.rpm Maintenant, nous retournons dans le répertoire /tmp et exécutons rpmbuild à nouveau, cette fois sans sudo, sinon la compilation échouera car elle a été exécutée en tant que root :
cd /tmp
rpmbuild -ta courier-imap-4.4.1.tar.bz2Après le processus de construction, les paquets rpm peuvent être trouvés dans $HOME/rpm/RPMS/i386 ( $HOME/rpm/RPMS/x86_64 si vous êtes sur un système x86_64) :
cd $HOME/rpm/RPMS/i386La commande
ls -lvous montre les paquets rpm disponibles :
[compileuser@server1 i386]$ ls -l
total 1868
-rw-r–r– 1 root root 140978 Feb 26 03:00 courier-authlib-0.62.1-1.i386.rpm
-rw-r–r– 1 root root 309196 Feb 26 03:00 courier-authlib-debuginfo-0.62.1-1.i386.rpm
-rw-r–r– 1 root root 34672 Feb 26 03:00 courier-authlib-devel-0.62.1-1.i386.rpm
-rw-r–r– 1 root root 17855 Feb 26 03:00 courier-authlib-ldap-0.62.1-1.i386.rpm
-rw-r–r– 1 root root 14048 Feb 26 03:00 courier-authlib-mysql-0.62.1-1.i386.rpm
-rw-r–r– 1 root root 13214 Feb 26 03:00 courier-authlib-pgsql-0.62.1-1.i386.rpm
-rw-r–r– 1 root root 8175 Feb 26 03:00 courier-authlib-pipe-0.62.1-1.i386.rpm
-rw-r–r– 1 root root 35927 Feb 26 03:00 courier-authlib-userdb-0.62.1-1.i386.rpm
-rw-rw-r– 1 compileuser compileuser 395137 Feb 26 03:13 courier-imap-4.4.1-1.i386.rpm
-rw-rw-r– 1 compileuser compileuser 906775 Feb 26 03:13 courier-imap-debuginfo-4.4.1-1.i386.rpm
[compileuser@server1 i386]$
Vous pouvez installer courier-imap comme ceci :
sudo rpm -ivh courier-imap-4.4.1-1.i386.rpmMaintenant, nous retournons dans le répertoire /tmp et exécutons rpmbuild à nouveau, cette fois pour construire un paquet maildrop :
cd /tmp
sudo rpmbuild -ta maildrop-2.0.4.tar.bz2Après le processus de construction, les paquets rpm peuvent être trouvés dans $HOME/rpm/RPMS/i386 ( $HOME/rpm/RPMS/x86_64 si vous êtes sur un système x86_64) :
cd $HOME/rpm/RPMS/i386La commande
ls -lvous montre les paquets rpm disponibles :
[compileuser@server1 i386]$ ls -l
total 3096
-rw-r–r– 1 root root 140978 Feb 26 03:00 courier-authlib-0.62.1-1.i386.rpm
-rw-r–r– 1 root root 309196 Feb 26 03:00 courier-authlib-debuginfo-0.62.1-1.i386.rpm
-rw-r–r– 1 root root 34672 Feb 26 03:00 courier-authlib-devel-0.62.1-1.i386.rpm
-rw-r–r– 1 root root 17855 Feb 26 03:00 courier-authlib-ldap-0.62.1-1.i386.rpm
-rw-r–r– 1 root root 14048 Feb 26 03:00 courier-authlib-mysql-0.62.1-1.i386.rpm
-rw-r–r– 1 root root 13214 Feb 26 03:00 courier-authlib-pgsql-0.62.1-1.i386.rpm
-rw-r–r– 1 root root 8175 Feb 26 03:00 courier-authlib-pipe-0.62.1-1.i386.rpm
-rw-r–r– 1 root root 35927 Feb 26 03:00 courier-authlib-userdb-0.62.1-1.i386.rpm
-rw-rw-r– 1 compileuser compileuser 395137 Feb 26 03:13 courier-imap-4.4.1-1.i386.rpm
-rw-rw-r– 1 compileuser compileuser 906775 Feb 26 03:13 courier-imap-debuginfo-4.4.1-1.i386.rpm
-rw-r–r– 1 root root 303104 Feb 26 03:25 maildrop-2.0.4-1.i386.rpm
-rw-r–r– 1 root root 739326 Feb 26 03:25 maildrop-debuginfo-2.0.4-1.i386.rpm
-rw-r–r– 1 root root 134387 Feb 26 03:25 maildrop-devel-2.0.4-1.i386.rpm
-rw-r–r– 1 root root 58837 Feb 26 03:25 maildrop-man-2.0.4-1.i386.rpm
[compileuser@server1 i386]$
Vous pouvez maintenant installer maildrop comme ceci :
sudo rpm -ivh maildrop-2.0.4-1.i386.rpmAprès avoir compilé et installé tous les paquets nécessaires, vous pouvez redevenir root en tapant
exit11 Appliquer le Patch de Quota à Postfix
Nous devons obtenir le rpm source de Postfix, le patcher avec le patch de quota, construire un nouveau paquet rpm Postfix et l’installer.
cd /usr/src
wget http://ftp-stud.fht-esslingen.de/pub/Mirrors/centos/5.2/os/SRPMS/postfix-2.3.3-2.src.rpm
rpm -ivh postfix-2.3.3-2.src.rpmLa dernière commande affichera quelques avertissements que vous pouvez ignorer :
warning: user mockbuild does not exist - using root
warning: group mockbuild does not exist - using root
cd /usr/src/redhat/SOURCES
wget http://vda.sourceforge.net/VDA/postfix-2.3.3-vda.patch.gz
gunzip postfix-2.3.3-vda.patch.gz
cd /usr/src/redhat/SPECS/Maintenant, nous devons éditer le fichier postfix.spec :
vi postfix.specChangez %define MYSQL 0 en %define MYSQL 1, ajoutez Patch0: postfix-2.3.3-vda.patch à la strophe # Patches, et enfin ajoutez %patch0 -p1 -b .vda à la strophe %setup -q :
| [...] %define MYSQL 1 [...] # Patches Patch0: postfix-2.3.3-vda.patch Patch1: postfix-2.1.1-config.patch Patch3: postfix-alternatives.patch Patch6: postfix-2.1.1-obsolete.patch Patch7: postfix-2.1.5-aliases.patch Patch8: postfix-large-fs.patch Patch9: postfix-2.2.5-cyrus.patch [...] %setup -q # Appliquer les patches obligatoires %patch0 -p1 -b .vda %patch1 -p1 -b .config %patch3 -p1 -b .alternatives %patch6 -p1 -b .obsolete %patch7 -p1 -b .aliases %patch8 -p1 -b .large-fs %patch9 -p1 -b .cyrus [...] |
Ensuite, nous construisons notre nouveau paquet rpm Postfix avec support de quota et MySQL :
rpmbuild -ba postfix.specNotre paquet rpm Postfix est créé dans /usr/src/redhat/RPMS/i386 ( /usr/src/redhat/RPMS/x86_64 si vous êtes sur un système x86_64), donc nous y allons :
cd /usr/src/redhat/RPMS/i386La commande
ls -lvous montre les paquets disponibles :
[root@server1 i386]# ls -l
total 11292
-rw-r–r– 1 root root 3820393 Feb 27 18:16 postfix-2.3.3-2.i386.rpm
-rw-r–r– 1 root root 7666204 Feb 27 18:16 postfix-debuginfo-2.3.3-2.i386.rpm
-rw-r–r– 1 root root 50539 Feb 27 18:16 postfix-pflogsumm-2.3.3-2.i386.rpm
[root@server1 i386]#
Choisissez le paquet Postfix et installez-le comme ceci :
rpm -ivh postfix-2.3.3-2.i386.rpmEnsuite, désactivez Sendmail et démarrez Postfix, saslauthd, et courier-authlib :
chkconfig --levels 235 courier-authlib on
/etc/init.d/courier-authlib start
chkconfig --levels 235 sendmail off
chkconfig --levels 235 postfix on
chkconfig --levels 235 saslauthd on
/etc/init.d/sendmail stop
/etc/init.d/postfix start
/etc/init.d/saslauthd start12 Configurer Courier
Maintenant, nous créons les liens de démarrage système pour courier-imap :
chkconfig --levels 235 courier-imap on
/etc/init.d/courier-authlib restart
/etc/init.d/courier-imap restartLorsque courier-imap est démarré pour la première fois, il crée automatiquement les fichiers de certificat /usr/lib/courier-imap/share/imapd.pem et /usr/lib/courier-imap/share/pop3d.pem à partir des fichiers /usr/lib/courier-imap/etc/imapd.cnf et /usr/lib/courier-imap/etc/pop3d.cnf. Comme les fichiers .cnf contiennent la ligne CN=localhost, mais que notre serveur est nommé server1.example.com, les certificats pourraient causer des problèmes lorsque vous utilisez des connexions TLS. Pour résoudre cela, nous supprimons les deux certificats…
cd /usr/lib/courier-imap/share/
rm -f imapd.pem
rm -f pop3d.pem… et remplaçons les lignes CN=localhost dans /usr/lib/courier-imap/etc/imapd.cnf et /usr/lib/courier-imap/etc/pop3d.cnf par CN=server1.example.com :
vi /usr/lib/courier-imap/etc/imapd.cnf| [...] CN=server1.example.com [...] |
vi /usr/lib/courier-imap/etc/pop3d.cnf| [...] CN=server1.example.com [...] |
Ensuite, nous recréons les deux certificats…
./mkimapdcert
./mkpop3dcert… et redémarrons courier-authlib et courier-imap :
/etc/init.d/courier-authlib restart
/etc/init.d/courier-imap restart13 Installer Getmail
Getmail peut être installé comme suit :
yum install getmailRecevez de nouveaux articles dans votre boîte de réception.
Aucun spam. Désabonnez-vous à tout moment.