Serveur Ubuntu · 5 min read · Feb 04, 2026

Le Serveur Parfait - Ubuntu 9.10 [ISPConfig 3] - Page 4

12 Installer Postfix, Courier, Saslauthd, MySQL, rkhunter, binutils

Nous pouvons installer Postfix, Courier, Saslauthd, MySQL, rkhunter et binutils avec une seule commande :

aptitude install postfix postfix-mysql postfix-doc mysql-client mysql-server courier-authdaemon courier-authlib-mysql courier-pop courier-pop-ssl courier-imap courier-imap-ssl libsasl2-2 libsasl2-modules libsasl2-modules-sql sasl2-bin libpam-mysql openssl getmail4 rkhunter binutils

Vous serez invité à répondre aux questions suivantes :

Nouveau mot de passe pour l’utilisateur MySQL “root” : <– votremotdepassemysqlroot
Répéter le mot de passe pour l’utilisateur MySQL “root” : <– votremotdepassemysqlroot
Créer des répertoires pour l’administration web ? <– Non
Type général de configuration de mail : <– Site Internet
Nom de mail du système : <– server1.example.com
Certificat SSL requis <– Ok

Ensuite, nous installons maildrop comme suit :

update-alternatives --remove-all maildir.5  
 update-alternatives --remove-all maildirquota.7
aptitude install maildrop

Vous vous demanderez pourquoi nous n’avons pas installé maildrop avec tous les autres paquets. La raison en est un bug dans le paquet courier-base - si vous installez maildrop avec courier-pop, courier-pop-ssl, courier-imap et courier-imap-ssl, vous obtiendrez l’erreur suivante :

update-alternatives: error: alternative link /usr/share/man/man5/maildir.5.gz is already managed by maildir.5.gz.

Nous voulons que MySQL écoute sur toutes les interfaces, pas seulement localhost, donc nous éditons /etc/mysql/my.cnf et commentons la ligne bind-address = 127.0.0.1 :

vi /etc/mysql/my.cnf

| [...] # Au lieu de skip-networking, la valeur par défaut est maintenant d'écouter uniquement sur # localhost, ce qui est plus compatible et n'est pas moins sécurisé. #bind-address = 127.0.0.1 [...] |

Ensuite, nous redémarrons MySQL :

/etc/init.d/mysql restart

Vérifiez maintenant que le réseau est activé. Exécutez

netstat -tap | grep mysql

La sortie devrait ressembler à ceci :

root@server1:~# netstat -tap | grep mysql  
 tcp        0      0 *:mysql                 *:*                     LISTEN      6267/mysqld  
 root@server1:~#

Pendant l’installation, les certificats SSL pour IMAP-SSL et POP3-SSL sont créés avec le nom d’hôte localhost. Pour changer cela au nom d’hôte correct (server1.example.com dans ce tutoriel), supprimez les certificats…

cd /etc/courier  
 rm -f /etc/courier/imapd.pem  
 rm -f /etc/courier/pop3d.pem

… et modifiez les deux fichiers suivants ; remplacez CN=localhost par CN=server1.example.com (vous pouvez également modifier les autres valeurs, si nécessaire) :

vi /etc/courier/imapd.cnf

| [...] CN=server1.example.com [...] |

vi /etc/courier/pop3d.cnf

| [...] CN=server1.example.com [...] |

Ensuite, recréez les certificats…

mkimapdcert  
 mkpop3dcert

… et redémarrez Courier-IMAP-SSL et Courier-POP3-SSL :

/etc/init.d/courier-imap-ssl restart  
 /etc/init.d/courier-pop-ssl restart

13 Installer Amavisd-new, SpamAssassin et Clamav

Pour installer amavisd-new, SpamAssassin et ClamAV, nous exécutons

aptitude install amavisd-new spamassassin clamav clamav-daemon zoo unzip bzip2 arj nomarch lzop cabextract apt-listchanges libnet-ldap-perl libauthen-sasl-perl clamav-docs daemon libio-string-perl libio-socket-ssl-perl libnet-ident-perl zip libnet-dns-perl

14 Installer Apache2, PHP5, phpMyAdmin, FCGI, suExec, Pear et mcrypt

Apache2, PHP5, phpMyAdmin, FCGI, suExec, Pear et mcrypt peuvent être installés comme suit :

aptitude install apache2 apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5 php5-common php5-gd php5-mysql php5-imap phpmyadmin php5-cli php5-cgi libapache2-mod-fcgid apache2-suexec php-pear php-auth php5-mcrypt mcrypt php5-imagick imagemagick libapache2-mod-suphp

Vous verrez la question suivante :

Serveur web à reconfigurer automatiquement : <– apache2
Configurer la base de données pour phpmyadmin avec dbconfig-common ? <– Non

Ensuite, exécutez la commande suivante pour activer les modules Apache suexec, rewrite, ssl, actions et include :

a2enmod suexec rewrite ssl actions include

Redémarrez Apache ensuite :

/etc/init.d/apache2 restart

15 Installer PureFTPd et Quota

PureFTPd et quota peuvent être installés avec la commande suivante :

aptitude install pure-ftpd-common pure-ftpd-mysql quota quotatool

Éditez le fichier /etc/default/pure-ftpd-common…

vi /etc/default/pure-ftpd-common

… et assurez-vous que le mode de démarrage est défini sur standalone et définissez VIRTUALCHROOT=true :

| [...] STANDALONE_OR_INETD=standalone [...] VIRTUALCHROOT=true [...] |

Ensuite, redémarrez PureFTPd :

/etc/init.d/pure-ftpd-mysql restart

Éditez /etc/fstab. Le mien ressemble à ceci (j’ai ajouté,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 au partition avec le point de montage /) :

vi /etc/fstab

| # /etc/fstab: informations statiques sur le système de fichiers. # # Utilisez 'blkid -o value -s UUID' pour imprimer l'identifiant universel unique # pour un appareil ; cela peut être utilisé avec UUID= comme un moyen plus robuste de nommer # des appareils qui fonctionne même si des disques sont ajoutés et retirés. Voir fstab(5). # # proc /proc proc defaults 0 0 /dev/mapper/server1-root / ext4 errors=remount-ro,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 0 1 # /boot était sur /dev/sda5 pendant l'installation UUID=9ea34148-31b7-4d5c-baee-c2e2022562ea /boot ext2 defaults 0 2 /dev/mapper/server1-swap_1 none swap sw 0 0 /dev/scd0 /media/cdrom0 udf,iso9660 user,noauto,exec,utf8 0 0 /dev/fd0 /media/floppy0 auto rw,user,noauto,exec,utf8 0 0 |

Pour activer le quota, exécutez ces commandes :

touch /aquota.user /aquota.group  
 chmod 600 /aquota.*  
 mount -o remount /
quotacheck -avugm  
 quotaon -avug

16 Installer MyDNS

Avant d’installer MyDNS, nous devons installer quelques prérequis :

aptitude install g++ libc6 gcc gawk make texinfo libmysqlclient15-dev

MyDNS n’est pas disponible dans les dépôts Ubuntu 9.10, donc nous devons le construire nous-mêmes comme suit :

cd /tmp  
 wget http://heanet.dl.sourceforge.net/sourceforge/mydns-ng/mydns-1.2.8.27.tar.gz  
 tar xvfz mydns-1.2.8.27.tar.gz  
 cd mydns-1.2.8  
 ./configure  
 make  
 make install

Ensuite, nous créons le script de démarrage/arrêt pour MyDNS :

vi /etc/init.d/mydns

| #! /bin/sh # # mydns Démarrer le serveur MyDNS # # Auteur : Philipp Kern <[email protected]>. # Basé sur le squelette 1.9.4 de Miquel van Smoorenburg # <[email protected]> et Ian Murdock <[email protected]>. # set -e PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin DAEMON=/usr/local/sbin/mydns NAME=mydns DESC="Serveur DNS" SCRIPTNAME=/etc/init.d/$NAME # Quitter gracieusement si le paquet a été supprimé. test -x $DAEMON || exit 0 case "$1" in start) echo -n "Démarrage de $DESC: $NAME" start-stop-daemon --start --quiet \ --exec $DAEMON -- -b echo "." ;; stop) echo -n "Arrêt de $DESC: $NAME" start-stop-daemon --stop --oknodo --quiet \ --exec $DAEMON echo "." ;; reload|force-reload) echo -n "Rechargement de la configuration de $DESC..." start-stop-daemon --stop --signal HUP --quiet \ --exec $DAEMON echo "fait." ;; restart) echo -n "Redémarrage de $DESC: $NAME" start-stop-daemon --stop --quiet --oknodo \ --exec $DAEMON sleep 1 start-stop-daemon --start --quiet \ --exec $DAEMON -- -b echo "." ;; *) echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2 exit 1 ;; esac exit 0 |

Ensuite, nous rendons le script exécutable et créons les liens de démarrage du système pour celui-ci :

chmod +x /etc/init.d/mydns  
 update-rc.d mydns defaults

17 Installer Vlogger et Webalizer

Vlogger et webalizer peuvent être installés comme suit :

aptitude install vlogger webalizer

18 Installer Jailkit

Jailkit est nécessaire uniquement si vous souhaitez chrooter les utilisateurs SSH. Il peut être installé comme suit (important : Jailkit doit être installé avant ISPConfig - il ne peut pas être installé après !) :

aptitude install build-essential autoconf automake1.9 libtool flex bison
cd /tmp  
 wget http://olivier.sessink.nl/jailkit/jailkit-2.10.tar.gz  
 tar xvfz jailkit-2.10.tar.gz  
 cd jailkit-2.10  
 ./configure  
 make  
 make install  
 cd ..  
 rm -rf jailkit-2.10*

19 Installer fail2ban

Ceci est optionnel mais recommandé, car le moniteur ISPConfig essaie d’afficher le journal de fail2ban :

aptitude install fail2ban
Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.