Installation serveur · 5 min read · Jan 16, 2026

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

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

Nous pouvons installer Postfix, Courier, Saslauthd, MySQL, phpMyAdmin, 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 maildrop 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

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      10447/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

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

a2enmod suexec rewrite ssl actions include

Sécurisez phpMyAdmin en supprimant le fichier /etc/phpmyadmin/htpasswd.setup…

rm -f /etc/phpmyadmin/htpasswd.setup

… et supprimez ou commentez la section suivante dans /etc/phpmyadmin/apache.conf :

vi /etc/phpmyadmin/apache.conf

| [...] # # Autoriser pour la configuration # # # Pour Apache 1.3 et 2.0 # # AuthType Basic # AuthName "phpMyAdmin Setup" # AuthUserFile /etc/phpmyadmin/htpasswd.setup # # # Pour Apache 2.2 # # AuthType Basic # AuthName "phpMyAdmin Setup" # AuthUserFile /etc/phpmyadmin/htpasswd.setup # # Require valid-user # [...] |

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é,usrquota,grpquota à la partition avec le point de montage /) :

vi /etc/fstab

| # /etc/fstab: informations statiques sur le système de fichiers. # # proc /proc proc defaults 0 0 # /dev/sda1 UUID=e7f9e640-1254-462f-b314-6471ce83db4d / ext3 relatime,errors=remount-ro,usrquota,grpquota 0 1 # /dev/sda5 UUID=32b41e4e-4d4a-4825-8922-27e8c6aeeb45 none swap sw 0 0 /dev/scd0 /media/cdrom0 udf,iso9660 user,noauto,exec,utf8 0 0 |

Pour activer le quota, exécutez ces commandes :

touch /quota.user /quota.group  
chmod 600 /quota.*  
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 8.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 par 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 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 chroot 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.5.tar.gz  
tar xvfz jailkit-2.5.tar.gz  
cd jailkit-2.5  
./configure  
make  
make install  
cd ..  
rm -rf jailkit-2.5*

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.