Serveur Ubuntu · 6 min read · Oct 02, 2025

Le Serveur Parfait - Ubuntu 14.10 (nginx, BIND, Dovecot, ISPConfig 3)

Ce tutoriel montre comment préparer un serveur Ubuntu 14.10 (Utopic Unicorn) (avec nginx, BIND, Dovecot) pour l’installation d’ISPConfig 3, et comment installer ISPConfig 3. ISPConfig 3 est un panneau de contrôle d’hébergement web qui vous permet de configurer les services suivants via un navigateur web : serveur web Apache ou nginx, serveur de messagerie Postfix, serveur IMAP/POP3 Courier ou Dovecot, MySQL, serveur de noms BIND ou MyDNS, PureFTPd, SpamAssassin, ClamAV, et bien d’autres. Cette configuration couvre nginx (au lieu d’Apache), BIND (au lieu de MyDNS), et Dovecot (au lieu de Courier).

Manuel ISPConfig 3

Pour apprendre à utiliser ISPConfig 3, je recommande fortement de télécharger le Manuel ISPConfig 3.

Sur plus de 300 pages, il couvre le concept derrière ISPConfig (administrateur, revendeurs, clients), explique comment installer et mettre à jour ISPConfig 3, inclut une référence pour tous les formulaires et champs de formulaire dans ISPConfig avec des exemples d’entrées valides, et fournit des tutoriels pour les tâches les plus courantes dans ISPConfig 3. Il décrit également comment rendre votre serveur plus sécurisé et comprend une section de dépannage à la fin.

1. Remarque Préliminaire

Dans ce tutoriel, j’utilise le nom d’hôte server1.example.com avec l’adresse IP 192.168.0.100 et la passerelle 192.168.0.1. Ces paramètres peuvent différer pour vous, donc vous devez les remplacer où cela est approprié. Avant de continuer, vous devez avoir une installation minimale de base d’Ubuntu 14.10 comme expliqué dans le tutoriel.

2. Modifier /etc/apt/sources.list Et Mettre À Jour Votre Installation Linux

Modifiez /etc/apt/sources.list. Commentez ou supprimez le CD d’installation du fichier et assurez-vous que les dépôts universe et multiverse sont activés. Cela devrait ressembler à ceci :

nano /etc/apt/sources.list
# 

# deb cdrom:[Ubuntu-Server 14.10 _Utopic Unicorn_ - Release amd64 (20141022.2)]/ utopic main restricted

#deb cdrom:[Ubuntu-Server 14.10 _Utopic Unicorn_ - Release amd64 (20141022.2)]/ utopic main restricted

# Voir http://help.ubuntu.com/community/UpgradeNotes pour comment mettre à niveau vers
# des versions plus récentes de la distribution.
deb http://de.archive.ubuntu.com/ubuntu/ utopic main restricted
deb-src http://de.archive.ubuntu.com/ubuntu/ utopic main restricted

## Mises à jour majeures de correction de bogues produites après la version finale de la
## distribution.
deb http://de.archive.ubuntu.com/ubuntu/ utopic-updates main restricted
deb-src http://de.archive.ubuntu.com/ubuntu/ utopic-updates main restricted

## N.B. le logiciel de ce dépôt n'est ENTIÈREMENT PAS SOUTENU par l'équipe Ubuntu.
## De plus, veuillez noter que le logiciel dans universe NE RECEVRA AUCUN
## examen ou mise à jour de l'équipe de sécurité Ubuntu.
deb http://de.archive.ubuntu.com/ubuntu/ utopic universe
deb-src http://de.archive.ubuntu.com/ubuntu/ utopic universe
deb http://de.archive.ubuntu.com/ubuntu/ utopic-updates universe
deb-src http://de.archive.ubuntu.com/ubuntu/ utopic-updates universe

## N.B. le logiciel de ce dépôt n'est ENTIÈREMENT PAS SOUTENU par l'équipe Ubuntu
## et peut ne pas être sous une licence libre. Veuillez vous assurer de
## vos droits d'utilisation du logiciel. De plus, veuillez noter que le logiciel dans
## multiverse NE RECEVRA AUCUN examen ou mise à jour de l'équipe de sécurité Ubuntu.
deb http://de.archive.ubuntu.com/ubuntu/ utopic multiverse
deb-src http://de.archive.ubuntu.com/ubuntu/ utopic multiverse
deb http://de.archive.ubuntu.com/ubuntu/ utopic-updates multiverse
deb-src http://de.archive.ubuntu.com/ubuntu/ utopic-updates multiverse

## N.B. le logiciel de ce dépôt peut ne pas avoir été testé aussi
## largement que celui contenu dans la version principale, bien qu'il inclue
## des versions plus récentes de certaines applications qui peuvent fournir des fonctionnalités utiles.
## De plus, veuillez noter que le logiciel dans backports NE RECEVRA AUCUN examen
## ou mise à jour de l'équipe de sécurité Ubuntu.
deb http://de.archive.ubuntu.com/ubuntu/ utopic-backports main restricted universe multiverse
deb-src http://de.archive.ubuntu.com/ubuntu/ utopic-backports main restricted universe multiverse

deb http://security.ubuntu.com/ubuntu utopic-security main restricted
deb-src http://security.ubuntu.com/ubuntu utopic-security main restricted
deb http://security.ubuntu.com/ubuntu utopic-security universe
deb-src http://security.ubuntu.com/ubuntu utopic-security universe
deb http://security.ubuntu.com/ubuntu utopic-security multiverse
deb-src http://security.ubuntu.com/ubuntu utopic-security multiverse

## Décommentez les deux lignes suivantes pour ajouter des logiciels du
## dépôt 'partenaire' de Canonical.
## Ce logiciel ne fait pas partie d'Ubuntu, mais est proposé par Canonical et les
## vendeurs respectifs comme un service aux utilisateurs d'Ubuntu.
# deb http://archive.canonical.com/ubuntu utopic partner
# deb-src http://archive.canonical.com/ubuntu utopic partner

## Décommentez les deux lignes suivantes pour ajouter des logiciels du
## dépôt 'extras' d'Ubuntu.
## Ce logiciel ne fait pas partie d'Ubuntu, mais est proposé par des développeurs tiers
## qui souhaitent expédier leur dernier logiciel.
# deb http://extras.ubuntu.com/ubuntu utopic main
# deb-src http://extras.ubuntu.com/ubuntu utopic main
~                                                        

Ensuite, exécutez

apt-get update

pour mettre à jour la base de données des paquets apt et

apt-get upgrade

pour installer les dernières mises à jour (s’il y en a). Si vous voyez qu’un nouveau noyau est installé dans le cadre des mises à jour, vous devez redémarrer le système par la suite :

reboot

3. Changer Le Shell Par Défaut

/bin/sh est un lien symbolique vers /bin/dash, cependant nous avons besoin de /bin/bash, pas de /bin/dash. Par conséquent, nous faisons ceci :

dpkg-reconfigure dash

Utiliser dash comme shell système par défaut (/bin/sh) ? <– Non

Si vous ne faites pas cela, l’installation d’ISPConfig échouera.

4. Désactiver AppArmor

AppArmor est une extension de sécurité (similaire à SELinux) qui devrait fournir une sécurité étendue. Il n’est pas installé par défaut à partir de 13.10. Nous allons vérifier s’il est installé. À mon avis, vous n’en avez pas besoin pour configurer un système sécurisé, et cela cause généralement plus de problèmes que d’avantages (pensez-y après avoir passé une semaine à résoudre des problèmes parce qu’un service ne fonctionnait pas comme prévu, et ensuite vous découvrez que tout allait bien, seul AppArmor causait le problème). Par conséquent, je le désactive (c’est un must si vous souhaitez installer ISPConfig par la suite).

Nous pouvons le désactiver comme ceci :

service apparmor stop  
update-rc.d -f apparmor remove  
apt-get remove apparmor apparmor-utils

5. Synchroniser L’Horloge Du Système

Il est judicieux de synchroniser l’horloge du système avec un serveur NTP ( network time protocol) sur Internet. Il suffit d’exécuter

apt-get install ntp ntpdate

et votre heure système sera toujours synchronisée.

6. Installer Postfix, Dovecot, MySQL, phpMyAdmin, rkhunter, binutils

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

apt-get install postfix postfix-mysql postfix-doc mariadb-client mariadb-server openssl getmail4 rkhunter binutils dovecot-imapd dovecot-pop3d dovecot-mysql dovecot-sieve sudo

On vous posera les questions suivantes :

Nouveau mot de passe pour l’utilisateur MySQL “root” : <– votremotdepasseSQLroot
Répétez le mot de passe pour l’utilisateur MySQL “root” : <– votremotdepasseSQLroot
Créer un certificat SSL auto-signé ? : <– Oui
Nom d’hôte : <– server1.example.com
Local uniquement : <– OK
Type général de configuration de messagerie : <– Internet Site
Nom de messagerie système : <– server1.example.com

Ensuite, ouvrez les ports TLS/SSL et de soumission dans Postfix :

nano /etc/postfix/master.cf

Décommentez les sections de soumission et smtps comme suit - ajoutez la ligne -o smtpd_client_restrictions=permit_sasl_authenticated,reject aux deux sections et laissez tout le reste commenté :

[...]
submission inet n       -       -       -       -       smtpd
  -o syslog_name=postfix/submission
  -o smtpd_tls_security_level=encrypt
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
#  -o smtpd_reject_unlisted_recipient=no
#  -o smtpd_client_restrictions=$mua_client_restrictions
#  -o smtpd_helo_restrictions=$mua_helo_restrictions
#  -o smtpd_sender_restrictions=$mua_sender_restrictions
#  -o smtpd_recipient_restrictions=permit_sasl_authenticated,reject
#  -o milter_macro_daemon_name=ORIGINATING
smtps     inet  n       -       -       -       -       smtpd
  -o syslog_name=postfix/smtps
  -o smtpd_tls_wrappermode=yes
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
#  -o smtpd_reject_unlisted_recipient=no
#  -o smtpd_client_restrictions=$mua_client_restrictions
#  -o smtpd_helo_restrictions=$mua_helo_restrictions
#  -o smtpd_sender_restrictions=$mua_sender_restrictions
#  -o smtpd_recipient_restrictions=permit_sasl_authenticated,reject
#  -o milter_macro_daemon_name=ORIGINATING
[...]

Redémarrez Postfix par la suite :

service postfix restart

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

nano /etc/mysql/my.cnf
[...]
# Au lieu de skip-networking, le 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 :

service 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      23785/mysqld    
root@server1:~#

7. Installer Amavisd-new, SpamAssassin, Et Clamav

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

apt-get 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

La configuration d’ISPConfig 3 utilise amavisd qui charge la bibliothèque de filtre SpamAssassin en interne, donc nous pouvons arrêter SpamAssassin pour libérer de la RAM :

service spamassassin stop  
update-rc.d -f spamassassin remove

Pour exécuter clamav, utilisez

freshclam  
service clamav-daemon start
Share: X/Twitter LinkedIn

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

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