![]()
Depuis le temps que je voulais le faire, voici un petit tutoriel pour installer ISPConfig.
Fonctionnalités
ISPConfig vous permet de gérer l’hébergement de votre serveur dédié à l’aide d’une interface web. C’est ce que l’on appelle un « webmin ».
Utilisateurs
3 différents niveaux d’utilisateurs existent
- Administrateur
- Revendeur
- Client
L’administrateur a tous les droits, le revendeur peut créer de nouveaux clients.
Les outils utilisés
- HTTP: Apache2 and nginx
- SMTP: Postfix
- POP3/IMAP: Courier et Dovecot (1.2.x)
- FTP: PureFTPd
- DNS: BIND et MyDNS
- Base de donnée: MySQL
- Statistiques: Webalizer et AWStats
- Virtualization: OpenVZ
Les services gérés
Sites web
- Domaines des Virtual Host
- SSL, CGI, SSI, Ruby, Python
- PHP sous différents modes mod_php, FCGI, CGI et SuPHP
- Différentes instances de PHP lancé par site web
- Re-écriture, alias, redirections.
Utilisateurs FTP
Bases de données MySQL
Utilisateurs Shell (chrooté ou non)
Mails
- SMTP
- POP3, IMAP, POP3s, IMAP
- Boites mails
- Alias mail
- Filtres de spam et virus
- Les listes blanches / noires
- La réponse automatique
- La collecte de mail avec fetchmail
- Listes de diffusion avec mailman
DNS
- Un DNS wizzard pour créer des zones facilement
- Réglage des zones et des enregistrements
- Import depuis des fichiers bind
- Support des enregistrements de type : A, AAAA, ALIAS, CNAME, HINFO, MX, NS, PTR, RP, SRV, TXT
- Gestion des DNS Master/Slave
Virtualisation (à travers OpenVZ)
Parefeu
Statistiques avec Webalizer et AWStat
Quotas et limites
- D’espace disque
- de boite mail
- De traffic
ISPConfig supporte beaucoup de langage et fonctionne sur la plupart des distributions Linux.
Je vais détailler ici la procédure d’installation et configuration sur une fraiche Debian Squeeze 6.
Mise a jour, synchronisation de l’heure et hostname
On fait les mise à jour :
apt-get update ; apt-get dist-upgrade
On fixe le nom de l’hôte
echo sheebypanda.com > /etc/hostname
/etc/init.d/hostname.sh start
On vérifie :
hostname -f
On synchronise l’horloge système :
apt-get install ntp ntpdate
Installation des services mails
Aller hop, cul-sec :
apt-get 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 courier-maildrop getmail4 rkhunter binutils sudo
Il vous sera alors demandé de répondre à certaines questions :
- Type général de configuration mail: Internet Site
- Domaine des mails système: sheebypanda.com
- Nouveau mot de passe pour l’utilisateur « root » MySQL: motdepasse
- Créer des répertoire pour l’administration web ?: Non
- Certificat SSL requis : Ok
Pendant l’installation, les certificats SSL pour IMAP et POP3 sont créés avec le domaine localhost. Pour changer cela, supprimer les 2 fichiers suivants :
rm -f /etc/courier/imapd.pem /etc/courier/pop3d.pem
et modifier les fichiers suivants :
nano /etc/courier/imapd.cnf
nano /etc/courier/pop3d.cnf
Puis dans chacun de ces fichiers, remplacer la ligne CN par votre domaine comme ci-dessous :
[...] CN=sheebypanda.com [...]
Puis recréer les certificats :
mkimapdcert
mkpop3dcert
On redémarer courier-pop-sll et courier-imap-ssl
/etc/init.d/courier-imap-ssl restart
/etc/init.d/courier-pop-ssl restart
Installation des anti-spams :
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 utilise amavisd qui charge SpamAssassin en interne, donc on peut arrêter SpamAssassin pour libérer un peu de RAM :
/etc/init.d/spamassassin stop
update-rc.d -f spamassassin remove
Installation d’apache et ses composants
apt-get 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 libruby libapache2-mod-ruby
Il vous sera alors posé les questions suivantes :
- Serveur web à configurer automatiquement : apache2
- Configurer la base de donnée pour phpmyadmin avec dbconfig-common ? : Non
On autorise les nouveaux modules d’apache2 :
a2enmod suexec rewrite ssl actions include
Autorisez aussi ces deux derniers pour utiliser WebDav :
a2enmod dav_fs dav auth_digest
Puis redémarrez apache :
/etc/init.d/apache2 restart
Installation du FTP et des quotas :
apt-get install pure-ftpd-common pure-ftpd-mysql quota quotatool
Modifier le fichier suivant :
nano /etc/default/pure-ftpd-common
Puis vérifier que vous avez la même chose pour les deux lignes suivantes :
[...] STANDALONE_OR_INETD=standalone [...] VIRTUALCHROOT=true [...]
Pour que la partition accepte les quotas, éditer le fstab :
nano /etc/fstab
et ajouter « ,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0″ aux options de la partition / comme ci-dessous :
#proc /proc proc defaults 0 0 # / was on /dev/sda1 during installation UUID=92bceda2-5ae4-4e3a-8748-b14da48fb297 / ext3 errors=remount-ro,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 0 1
puis lancer :
mount -o remount /
quotacheck -avugm
quotaon -avug
Installation de fail2ban
apt-get install fail2ban
puis autoriser le blocage des services que vous souhaitez sur le fichier.
nano /etc/fail2ban/jail.local
Enfin, redémarrer fail2ban
/etc/init.d/fail2ban restart
Installation d’ISPConfig
cd /tmp
wget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz
tar xfz ISPConfig-3-stable.tar.gz
cd ispconfig3_install/install/
php -q install.php
Il vous sera alors demandé :
- Select language (en,de) [en]:ENTER
- Installation mode (standard,expert) [standard]: ENTER
- Full qualified hostname (FQDN) of the server, eg server1.domain.tld [server1.example.com]: ENTER
- MySQL server hostname [localhost]: ENTER
- MySQL root username [root]: ENTER
- MySQL root password []: PASSWORD
- MySQL database to create [dbispconfig]: ENTER
- MySQL charset [utf8]: ENTER
- Country Name (2 letter code) [AU]: ENTER
- State or Province Name (full name) [Some-State]: ENTER
- Locality Name (eg, city) []: ENTER
- Organization Name (eg, company) [Internet Widgits Pty Ltd]: ENTER
- Organizational Unit Name (eg, section) []: ENTER
- Common Name (eg, YOUR name) []: ENTER
- Email Address []: ENTER
- ISPConfig Port [8080]:ENTER
Après cela, vous pouvez accéder à ISPConfig à l’adresse http://example.com:8080/
L’identifiant et mot de passe par défaut sont admin / admin

[source]
Mots-clefs : debian, installation, ispconfig, ispconfig3, squeeze






Pas de faille avec ispconfig 3 ?
Faut-il mieux faire une install de serveur à la main ou via cet outil ?
Bonjour, Sincère remerciement. J’ai suivi votre tuto et je suis arrivé a bout de mon installation sans trop de soucis.
ISPCONFIG3 marche pour l’instant très bien.
Cependant je voudrait changer l’adresse mail root pour la perte éventuelle du mot de passe.
Si vous pouvez m’indiquer comment faire!?
Merci
Bonjour, c’est pour changer le mot de passe de «root» ? Du moins, c’Est ce que j’ai compris. Pour le fiare, voici :
- Tout d’abord, loggez-vous sur votre panel et cliquez sur «email».
- Ensuite, cliquez sur «Boîte email», à gauche.
- Sélectionnez ensuite votre email (root@domaine.com)
- Changez le mot de passe et cliquez sur enregistrer.
Nic11101
Bravo, beau tuto et qui fonctionne – fait assez rare pour être souligné.
Merci encore
Bonjour,
Merci pour cet excellent tuto, qui m’a permis d’installer ISP tranquillement, sans stress, sur une dedibox, tout en étant carrément novice.
ça fonctionne impeccablement bien.
Bonjour,
J’ai un petit souci : au moment de taper les commandes « quotacheck -avugm » et « quotaon -avug », j’ai dans l’ordre d’apparition les erreurs suivantes :
**Avec quotacheck -avugm**
- quotacheck: Cannot stat() mounted device /dev/root: No such file or directory
- quotacheck: Cannot find filesystem to check or filesystem not mounted with quota option.
**Avec quotaon -avug**
- quotaon: Cannot stat() mounted device /dev/root: No such file or directory
Quelles sont les causes de telles erreurs ? Je n’ai eu aucun autre problème du début de l’installation jusqu’à ces commandes.
Merci d’avance
Bonsoir,
Je vais vous paraître stupide, mais j’ai essayé voir tutoriel sur mon vkimsufi cela dit ça ne marche pas il me dit apt not found et quand j’essaye avec sudo c’est aussi « sudo » not found !
y a-t-il une manipulation à faire avant de faire votre tutoriel, il faut savoir que mon serveur est totalement vierge.
merci
T’as bien une debian-like ?
Bonjour,
Merci pour cet excellent tutoriel. J’ai une question/problème. Le smtp ne marche pas, y a t’il quelque chose de particulier à faire pour le rendre opérant ?
comment créer les utilisateurs de pureftpd avec ISPConfig;J’ai suivi votre tuto.Tout va bien mais le blem j n peux pas acceder avec ftp
C’est un excellent tuto, car je suis une grosse quiche et je m’en suis sorti sans problème. Mais comme je suis une grosse feignasse, j’ai trouvé encore plus simple avec script réalisé un par un néerlandais qui automatise toute l’installation from scratch : http://www.e-rave.nl/automatic-debian-system-installation-for-ispconfig-3
Bonjour, super tuto merci.
Juste une petite modif à ne pas oublier pour la gestion des dns :
éditer le fichier de conf de bind
/etc/bind/named.conf.options
remplacer 127.0.0.0 par any pour que bind écoute sur les adresses ip externes du serveur.
Et ajouter les ports ouvert dans le firewall. Depuis l’interface web d’ispconfig : système, pare feu, ajouter et valider ce qu’il propose par défaut.