GNU/Linux >> Tutoriels Linux >  >> Panels >> Panels

Le serveur parfait - Debian Squeeze (Debian 6.0) avec BIND, Dovecot et Nginx [ISPConfig 3]

Le serveur parfait - Debian Squeeze (Debian 6.0) avec BIND, Dovecot et Nginx [ISPConfig 3 ]

Edité et compilé par Daniel Harbottle

Ce tutoriel montre comment préparer un serveur Debian Squeeze (Debian 6.0) 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 :nginx ou Serveur Web Apache, serveur de messagerie Postfix, MySQL, serveur de noms BIND, PureFTPd, SpamAssassin, ClamAV et bien d'autres.

Ce tutoriel est basé sur les excellents tutoriels "The Perfect Server - Debian Squeeze (Debian 6.0) With BIND &Dovecot [ISPConfig 3]" et "The Perfect Server - Ubuntu 11.10 With Nginx [ISPConfig 3]" avec quelques ajustements. L'idée est d'utiliser le serveur Web nginx rapide et économe en mémoire et Dovecot, qui est également censé être plus économe en mémoire. Je n'offre aucune garantie que cela fonctionnera pour vous même s'il a été testé sur une machine virtuelle locale et un VPS. Vous devrez utiliser le dépôt Dotdeb pour nginx.

Afin d'apprendre à utiliser ISPConfig 3, je vous recommande fortement de télécharger le manuel ISPConfig 3.

Sur environ 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 ainsi que des exemples d'entrées valides, et fournit des tutoriels pour les tâches les plus courantes dans ISPConfig 3. Il explique également comment rendre votre serveur plus sécurisé et est accompagné d'une section de dépannage à la fin.

Application de surveillance ISPConfig pour Android

Avec l'application ISPConfig Monitor, vous pouvez vérifier l'état de votre serveur et savoir si tous les services fonctionnent comme prévu. Vous pouvez vérifier les ports TCP et UDP et envoyer un ping à vos serveurs. En plus de cela, vous pouvez utiliser cette application pour demander des détails aux serveurs sur lesquels ISPConfig est installé (veuillez noter que la version minimale installée d'ISPConfig 3 avec prise en charge de l'application ISPConfig Monitor est 3.0.3.3 ! ); ces détails incluent tout ce que vous savez du module Monitor dans le panneau de configuration ISPConfig (par exemple, les services, les journaux de messagerie et système, la file d'attente de messagerie, les informations sur le processeur et la mémoire, l'utilisation du disque, les quotas, les détails du système d'exploitation, le journal RKHunter, etc.), et bien sûr , comme ISPConfig est compatible avec plusieurs serveurs, vous pouvez vérifier tous les serveurs contrôlés à partir de votre serveur maître ISPConfig.

Pour obtenir des instructions de téléchargement et d'utilisation, veuillez visiter http://www.ispconfig.org/ispconfig-3/ispconfig-monitor-app-for-android/.

Je n'émets aucune garantie que cela fonctionnera pour vous !

1 Exigences

Vous aurez besoin d'une machine nue ou virtuelle ou d'un VPS avec au moins 8 Go d'espace disque, 1 Go de RAM et une connexion Internet raisonnablement rapide pour extraire tous les packages des dépôts Debian.

Au moment de la rédaction, la dernière version de Debian est la 6.0.4. Vous pouvez télécharger et graver une image ISO ou la monter avec l'interface graphique de gestion de machine virtuelle ou l'utilitaire de ligne de commande de votre choix.

L'image CD1 ISO AMD64 peut être trouvée sur :http://cdimage.debian.org/debian-cd/6.0.4/amd64/iso-cd/debian-6.0.4-amd64-CD-1.iso

De nos jours, la plupart des ordinateurs sont compatibles 64 bits, mais vous pouvez toujours utiliser l'image i386 trouvée ici :http://cdimage.debian.org/debian-cd/6.0.4/i386/iso-cd/debian-6.0.4- i386-CD-1.iso

Vous pouvez également utiliser le CD netinstall, cela ne devrait pas faire une grande différence, sauf que tous les packages que vous installez sont téléchargés depuis Internet lors de l'installation.

2 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, vous devez donc les remplacer le cas échéant.

3 Le système de base

Insérez votre CD d'installation réseau Debian Squeeze dans votre système et démarrez à partir de celui-ci. Sélectionnez Installer (cela lancera le programme d'installation textuel - si vous préférez un programme d'installation graphique, sélectionnez Installation graphique) :

Choisissez votre langue :

Sélectionnez ensuite votre emplacement :

Si vous avez sélectionné une combinaison inhabituelle de langue et de lieu (comme l'anglais comme langue et l'Allemagne comme lieu, comme dans mon cas), le programme d'installation peut vous dire qu'il n'y a pas de paramètres régionaux définis pour cette combinaison ; dans ce cas, vous devez sélectionner les paramètres régionaux manuellement. Je sélectionne en_US.UTF-8 ici :

Choisissez une disposition de clavier :

Le programme d'installation vérifie le CD d'installation, votre matériel et configure le réseau avec DHCP s'il y a un serveur DHCP sur le réseau :

Entrez le nom d'hôte que vous souhaitez définir. Cela devrait être une combinaison d'un nom d'hôte et d'un nom de domaine arbitraires, par ex. monserveur.mondomaine.com. Ceci est également abordé plus loin dans le didacticiel. Dans cet exemple, le système s'appelle server1.example.com, entrez donc server1.example.com :

Entrez votre nom de domaine. Dans cet exemple, il s'agit de example.com :

Ensuite, donnez un mot de passe à l'utilisateur root :

Confirmez ce mot de passe pour éviter les fautes de frappe :

Créez un compte d'utilisateur normal, par exemple l'utilisateur Administrator avec le nom d'utilisateur administrator (n'utilisez pas le nom d'utilisateur admin car il s'agit d'un nom réservé sur Debian Squeeze) :

Le serveur parfait - Debian Squeeze (Debian 6.0) avec BIND, Dovecot et Nginx [ISPConfig 3] - Page 2

Vous devez maintenant partitionner votre disque dur. Par souci de simplicité, je vais créer une grande partition (avec le point de montage /) et une petite partition de swap, donc je sélectionne Guidé - utiliser le disque entier (bien sûr, le partitionnement dépend entièrement de vous - si vous le souhaitez, vous pouvez créer plus de une seule grande partition, et vous pouvez également utiliser LVM) :

Sélectionnez le disque que vous souhaitez partitionner :

Sélectionnez ensuite le schéma de partitionnement. Comme mentionné précédemment, je sélectionne Tous les fichiers dans une partition (recommandé pour les nouveaux utilisateurs) pour des raisons de simplicité - c'est à vous de décider ce que vous choisissez ici :

Lorsque vous avez terminé, sélectionnez Terminer le partitionnement et écrire les modifications sur le disque :

Sélectionnez Oui lorsque vous êtes invité à écrire les modifications sur les disques ? :

Ensuite, vos nouvelles partitions sont créées et formatées :

Le système de base est maintenant installé :

Ensuite, vous devez configurer apt. Parce que vous ne voudrez peut-être pas utiliser Debian Squeeze CD1 (ou netinstall) tout le temps qui ne contient qu'un ensemble limité de paquets, vous devez utiliser un miroir réseau. Sélectionnez le pays où se trouve le miroir réseau que vous souhaitez utiliser (il s'agit généralement du pays où se trouve votre système Debian Squeeze ou VPS) :

Sélectionnez ensuite le miroir que vous souhaitez utiliser (par exemple ftp.de.debian.org) :

À moins que vous n'utilisiez un proxy HTTP, laissez le champ suivant vide et appuyez sur Continuer :

Apt met actuellement à jour sa base de données de packages :

Vous pouvez ignorer l'enquête sur l'utilisation du package en sélectionnant Non :

Nous avons besoin d'un serveur Web, d'un serveur DNS, d'un serveur de messagerie et d'une base de données MySQL, mais n'en sélectionnez aucun maintenant car il est préférable de contrôler au maximum ce qui est et n'est pas installé sur le système. Les packages nécessaires seront installés manuellement ultérieurement. Par conséquent, nous sélectionnons simplement les utilitaires système standard et le serveur SSH afin qu'une connexion SSH puisse être établie avec le système avec un terminal ou un client SSH tel que PuTTY une fois l'installation terminée et cliquez sur Continuer :

Les packages sélectionnés dans chaque catégorie à l'étape précédente sont téléchargés et installés sur le système :

Lorsque vous êtes invité à installer le chargeur de démarrage GRUB sur le secteur de démarrage principal ?, sélectionnez Oui :

L'installation du système de base est maintenant terminée. Retirez le CD1 Debian Squeeze (ou netinstall) du lecteur de CD et appuyez sur Continuer pour redémarrer le système :

Le serveur parfait - Debian Squeeze (Debian 6.0) avec BIND, Dovecot et Nginx [ISPConfig 3] - Page 3

4 Installer le serveur SSH

Si vous n'avez pas installé de serveur SSH lors de l'installation de base du système, vous pouvez le faire maintenant :

apt-get install ssh openssh-server

Remarque :Les commandes de ce didacticiel supposent que vous êtes connecté en tant que root. Vous pouvez également supprimer la ligne CD-ROM dans votre /etc/apt/sources.list :

vi /etc/apt/sources.list

et appuyez deux fois sur d en succession rapide pour supprimer une seule ligne jusqu'à ce que toutes les entrées du CD-ROM soient supprimées. Si vous supprimez une ligne de trop entrez :q! pour quitter sans enregistrer et réessayer.

Vous devriez pouvoir utiliser un terminal ou un client SSH tel que PuTTY et vous connecter depuis votre poste de travail à votre serveur Debian Squeeze et suivre les étapes restantes de ce didacticiel.

Si vous utilisez vi comme éditeur de texte dans le terminal, vous devez installer le package suivant. Le programme vi par défaut sur Debian et Ubuntu a quelques bogues sérieux qui rendent parfois l'édition impossible, donc pour résoudre ce problème, nous installons vim-nox :

apt-get install vim-nox

(Vous pouvez ignorer cette étape et installer un autre éditeur de texte tel que joe ou nano à la place si vous le préférez à vi.)

6 Configurer le réseau

Étant donné que le programme d'installation de Debian Squeeze a configuré notre système pour obtenir ses paramètres réseau via DHCP, vous devez modifier cette configuration maintenant car un serveur doit avoir une adresse IP statique. Modifiez /etc/network/interfaces avec un éditeur de texte et ajustez-le en fonction de vos besoins (dans cet exemple, l'adresse IP 192.168.0.100 est utilisée). Veuillez noter que allow-hotplug eth0 doit être remplacé par auto eth0, sinon le redémarrage des interfaces réseau ne fonctionnera pas et nécessiterait un redémarrage du système. Pour éditer avec vi entrez :

vi /etc/network/interfaces
# Ce fichier décrit les interfaces réseau disponibles sur votre système# et comment les activer. Pour plus d'informations, voir interfaces(5) diffuser 192.168.0.255 passerelle 192.168.0.1
/etc/init.d/networking restart

Modifiez ensuite /etc/hosts. Cela devrait ressembler à ceci :

vi /etc/hosts
127.0.0.1 localhost.localdomain localhost192.168.0.100 server1.example.com server1# Les lignes suivantes sont souhaitables pour les hôtes compatibles IPv6 ::1 ip6 -localhost ip6-loopbackfe00 ::0 ip6-localnetff00 ::0 ip6-mcastprefixff02 ::1 ip6-allnodesff02 ::2 ip6-allrouters

Exécutez maintenant :

echo server1.example.com> /etc/hostname
/etc/init.d/hostname.sh start

ou

vi /etc/hostname
/etc/init.d/hostname.sh start

et modifiez le nom d'hôte de cette façon.

Ensuite, lancez

nomhôte
nomhôte -f

Après les deux commandes, server1.example.com doit apparaître ! Si vous avez déjà défini le nom d'hôte et le nom de domaine pendant le processus d'installation, il devrait probablement être correct bien que l'adresse IP et le nom de domaine complet (FQDN) doivent être insérés dans le fichier /etc/hosts. Dans une installation locale, vous pouvez utiliser .local comme domaine de premier niveau (TLD), mais dans ce scénario, vous avez besoin d'un serveur DNS correctement configuré pour résoudre les adresses IP locales.

7 Ajoutez le référentiel Dotdeb et mettez à jour votre système Debian

Cette étape est essentielle pour que nginx fonctionne avec ISPConfig 3 et votre système Debian 6. Ajoutez le référentiel Dotdeb en éditant le fichier /etc/apt/sources.list et en insérant les 2 lignes et le commentaire facultatif et téléchargez et ajoutez la clé GPG :

vi /etc/apt/sources.list
[...]# Dotdeb repositorydeb http://packages.dotdeb.org squeeze alldeb-src http://packages.dotdeb.org squeeze tout[...]

Récupérez ensuite la clé GnuPG appropriée :

wget http://www.dotdeb.org/dotdeb.gpg
cat dotdeb.gpg | apt-clé ajouter -

Assurez-vous également que votre /etc/apt/sources.list contient le dépôt squeeze-updates (cela garantit que vous obtenez toujours les dernières mises à jour pour le scanner de virus ClamAV - ce projet publie très souvent des versions, et parfois les anciennes versions cessent de fonctionner).

[...]deb http://ftp.de.debian.org/debian/ squeeze-updates main[...] 

Exécuter :

apt-obtenir la mise à jour

pour mettre à jour la base de données du référentiel de packages apt et si des mises à niveau sont disponibles, elles pourront être installées lorsque vous :

apt-get upgrade

8 Changer le shell par défaut

/bin/sh est un lien symbolique vers /bin/dash, cependant /bin/bash est nécessaire et non /bin/dash. Faites donc ceci :

dpkg-reconfigure tiret

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

9 Synchroniser l'horloge système

Il est conseillé de synchroniser l'horloge système avec un serveur NTP (Network Time Protocol) via Internet. Exécutez simplement :

apt-get install ntp ntpdate

pour synchroniser l'heure de votre système.

Le serveur parfait - Debian Squeeze (Debian 6.0) avec BIND, Dovecot et Nginx [ISPConfig 3] - Page 4

10 Installer Postfix, Dovecot, Saslauthd, MySQL, phpMyAdmin, rkhunter, binutils

Vous pouvez installer Postfix, Dovecot, Saslauthd, MySQL, phpMyAdmin, rkhunter et binutils avec une seule commande :

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

Les questions suivantes vous seront posées :

Type général de configuration de messagerie :<-- Site Internet
Nom de messagerie du système :<-- server1.example.com
Nouveau mot de passe pour l'utilisateur "root" MySQL :<-- yourrootsqlpassword
Répéter mot de passe pour l'utilisateur "root" MySQL :<-- yourrootsqlpassword

Nous voulons que MySQL écoute sur toutes les interfaces, pas seulement sur 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 sauter le réseau, la valeur par défaut est maintenant d'écouter uniquement sur # localhost qui est plus compatible et n'est pas moins sécurisé. #bind-address =127.0.0.1[...]

Puis redémarrez MySQL :

/etc/init.d/mysql restart

Vérifiez maintenant que la mise en réseau est activée. Exécuter

netstat -tap | grep mysql

Le résultat devrait ressembler à ceci :

[email protected] :~# netstat -tap | grep mysql
tcp        0      0 *:mysql                * :*                     ÉCOUTER      10617/mysqld
[email protected] :~#

11 Installer Amavisd-new, SpamAssassin et Clamav

Pour installer amavisd-new, SpamAssassin et ClamAV, exécutez :

apt-get install amavisd-new spamassassin clamav clamav-daemon zoo unzip bzip2 arj noarch 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

Le script d'installation d'ISPConfig 3 utilise amavisd qui charge la bibliothèque de filtres SpamAssassin en interne, donc nous vous arrêtons SpamAssassin pour libérer de la RAM :

/etc/init.d/spamassassin stop
update-rc.d -f spamassassin remove

12 Installer Nginx, PHP5 (PHP-FPM) et Fcgiwrap

Nginx est disponible sous forme de package à partir du référentiel Dotdeb (les packages du référentiel nginx officiel ne fonctionnent pas avec ISPConfig 3 au moment de la rédaction). Pour l'installer, exécutez la commande suivante :

apt-get install nginx

Apache ne devrait pas être installé à ce stade, bien qu'il soit extrait en tant que dépendance pour phpMyAdmin plus tard dans le didacticiel. Supprimez Apache avec :

apt-get purge apache2 apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils

et tout autre forfait connexe. Vous pouvez également exécuter :

apt-get autoremove

pour vous assurer que tous les packages inutiles sont purgés.

Pour faire fonctionner PHP5 dans nginx via PHP-FPM (FastCGI Process Manager) comme alternative à l'implémentation PHP FastCGI avec quelques fonctionnalités supplémentaires adaptées aux sites Web de toute taille, en particulier au trafic plus important, installez-le comme suit :

apt-get install php5-fpm

PHP-FPM est un processus démon, avec le script d'initialisation /etc/init.d/php5-fpm, qui exécute un serveur FastCGI sur le port 9000.

Pour ajouter le support MySQL à PHP, nous pouvons installer le package php5-mysql. Vous aurez peut-être également besoin de modules PHP5 supplémentaires pour prendre en charge les fonctionnalités améliorées de vos applications Web. Vous pouvez rechercher les modules PHP5 disponibles comme ceci :

apt-cache recherche php5

Si vous n'êtes pas dérangé par l'espace disque ou s'ils sont nécessaires pour les installer ou non, vous pouvez tous les installer :

apt-get install php5-mysql php5-curl php5-gd php5-intl php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-ming php5-ps php5-pspell php5-recode php5-snmp php5 -sqlite php5-tidy php5-xmlrpc php5-xsl

ou supprimez ceux dont vous savez que vous n'en avez pas besoin.

APC est un cache d'opcode PHP gratuit et open-source pour la mise en cache et l'optimisation du code intermédiaire PHP. Il est similaire à d'autres cacheurs d'opcodes PHP, tels que eAccelerator et XCache. Il est fortement recommandé d'en installer un pour accélérer vos pages PHP.

APC peut être installé comme suit :

apt-get install php-apc

Redémarrez maintenant PHP-FPM :

/etc/init.d/php5-fpm restart

Fcgiwrap est un wrapper CGI qui devrait également fonctionner pour les scripts CGI complexes et peut être utilisé pour les environnements d'hébergement partagé car il permet à chaque vhost d'utiliser son propre répertoire cgi-bin. Pour la prise en charge de CGI dans nginx, vous devez installer le package Fcgiwrap comme suit :

apt-get install fcgiwrap

Après l'installation, le démon fcgiwrap devrait déjà être lancé; son socket est /var/run/fcgiwrap.socket. S'il ne fonctionne pas, vous pouvez utiliser le script /etc/init.d/fcgiwrap pour le démarrer.

C'est ça! Désormais, lorsque vous créez un vhost nginx, ISPConfig 3 s'occupe de la configuration correcte du vhost.

13 Installer phpMyAdmin et configurer HTTPS pour les Vhosts

Pour installer phpMyAdmin exécutez la commande suivante :

apt-get install phpmyadmin

Les questions suivantes vous seront posées :

Serveur Web à reconfigurer automatiquement :<-- sélectionnez aucun (car seuls apache2 et lighttpd sont disponibles en option)
Configurer la base de données pour phpmyadmin avec dbconfig-common ? <-- Non

Si vous avez sélectionné "Oui", vous obtiendrez une erreur qui peut être lue sur ce lien :http://serverfault.com/questions/341116/setting-up-phpmyadmin-got-a-mysql-syntax-error

Parce qu'Apache2 est installé dans le cadre d'une dépendance phpMyAdmin, arrêtez-le maintenant avec :

/etc/init.d/apache2 stop

et supprimez les liens de démarrage du système d'Apache :

insserv -r apache2

Démarrez ensuite nginx :

/etc/init.d/nginx start

Vous pouvez maintenant trouver phpMyAdmin dans le répertoire /usr/share/phpmyadmin/.

Après avoir installé ISPConfig 3, vous pouvez accéder à phpMyAdmin comme suit :

Le vhost des applications ISPConfig 3 sur le port 8081 pour nginx est livré avec une configuration phpMyAdmin, vous pouvez donc utiliser http://server1.example.com:8081/phpmyadmin ou http://server1.example.com:8081/phpMyAdmin pour accéder à phpMyAdmin .

Si vous souhaitez utiliser un alias /phpmyadmin ou /phpMyAdmin que vous pourrez utiliser depuis vos sites web, c'est un peu plus compliqué que pour Apache 2 car nginx n'a pas d'alias global (alias définissables pour tous les vhosts). Par conséquent, vous devez définir les alias pour chaque vhost afin que vous puissiez accéder avec phpMyAdmin sur votre URI spécifié.

Pour ce faire, collez ce qui suit dans le champ Directives nginx de l'onglet Options de chaque site Web dans ISPConfig3 (après l'avoir installé plus tard dans le didacticiel) :

 emplacement /phpmyadmin { root /usr/share/; index index.php index.html index.htm; emplacement ~ ^/phpmyadmin/(.+\.php)$ { try_files $uri =404; racine /usr/partage/ ; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php ; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name ; inclure /etc/nginx/fastcgi_params ; fastcgi_buffer_size 128k; fastcgi_buffers 256 4k; fastcgi_busy_buffers_size 256k ; fastcgi_temp_file_write_size 256k ; fastcgi_intercept_errors activé ; } emplacement ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/; } } emplacement /phpMyAdmin { réécrire ^/* /phpmyadmin dernier ; } 

Si vous utilisez https au lieu de http pour votre vhost, vous devez ajouter la ligne fastcgi_param HTTPS on, à votre configuration phpMyAdmin comme ceci :

 emplacement /phpmyadmin { root /usr/share/; index index.php index.html index.htm; emplacement ~ ^/phpmyadmin/(.+\.php)$ { try_files $uri =404; racine /usr/partage/ ; fastcgi_pass 127.0.0.1:9000; fastcgi_param HTTPS activé ; # <-- ajoutez cette ligne fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name ; inclure /etc/nginx/fastcgi_params ; fastcgi_buffer_size 128k; fastcgi_buffers 256 4k; fastcgi_busy_buffers_size 256k ; fastcgi_temp_file_write_size 256k ; fastcgi_intercept_errors activé ; } emplacement ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/; } } emplacement /phpMyAdmin { réécrire ^/* /phpmyadmin dernier ; } 

Il est assez douteux que vous souhaitiez transférer des données et des mots de passe en texte clair vers phpMyAdmin ou d'autres applications que vous souhaitez garder en sécurité. Donc, pour utiliser à la fois http et https pour votre vhost, vous devez ajouter la section suivante à la section http {} dans /etc/nginx/nginx.conf, avant toute ligne d'inclusion, cela détermine si le visiteur utilise http ou https et définit le Variable $fastcgi_https. Utilisez ceci dans votre configuration phpMyAdmin en conséquence :

vi /etc/nginx/nginx.conf
[...]http {[...] ## Détecter quand HTTPS est utilisé map $scheme $fastcgi_https { default off; https activé ; }[...]}[...]

N'oubliez pas de recharger nginx après :

/etc/init.d/nginx recharge

Ensuite, allez à nouveau dans le champ Directives nginx, et au lieu d'activer fastcgi_param HTTPS, vous ajoutez la ligne fastcgi_param HTTPS $fastcgi_https, afin de pouvoir utiliser phpMyAdmin pour les requêtes http et https :

 emplacement /phpmyadmin { root /usr/share/; index index.php index.html index.htm; emplacement ~ ^/phpmyadmin/(.+\.php)$ { try_files $uri =404; racine /usr/partage/ ; fastcgi_pass 127.0.0.1:9000; fastcgi_param HTTPS $fastcgi_https ; # <-- ajoutez cette ligne fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name ; inclure /etc/nginx/fastcgi_params ; fastcgi_buffer_size 128k; fastcgi_buffers 256 4k; fastcgi_busy_buffers_size 256k ; fastcgi_temp_file_write_size 256k ; fastcgi_intercept_errors activé ; } emplacement ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/; } } emplacement /phpMyAdmin { réécrire ^/* /phpmyadmin dernier ; } 

14 Installer Mailman

Depuis la version 3.0.4, ISPConfig permet également de gérer (créer/modifier/supprimer) des listes de diffusion Mailman. Si vous souhaitez utiliser cette fonctionnalité, installez Mailman comme suit :

apt-get install mailman

Avant de pouvoir démarrer Mailman, une première liste de diffusion appelée mailman doit être créée :

nouvelle liste de facteur

[email protected]:~# newlist mailman
Entrez l'e-mail de la personne qui gère la liste : <-- l'adresse e-mail de l'administrateur, par ex. [email protected]
 mot de passe initial mailman : <-- mot de passe admin pour la liste mailman 
Pour finir la création de votre liste de diffusion, vous devez modifier votre /etc/aliases ou
un fichier équivalent par en ajoutant les lignes suivantes :

## mailman mailing list
mailman :              "|/var/lib/mailman/mail/mailman post mailman"
mailman-admin :        "|/ var/lib/mailman/mail/mailman admin mailman"
mailman-bounces :      "|/var/lib/mailman/mail/mailman bounces mailman"
mailman-confirm :      "|/var/lib/ mailman/mail/mailman confirmer mailman"
mailman-join :         "|/var/lib/mailman/mail/mailman join mailman"
mailman-leave :        "|/var/lib/mailman/mail/ mailman laisser mailman"
mailman-owner :        "|/var/lib/mailman/mail/mailman owner mailman"
mailman-request :      "|/var/lib/mailman/mail/mailman request mailman"
mailman-subscribe :    "|/var/lib/mailman/mail/mailman subscribe mailman"
mailman-unsubscribe :  "|/var/lib/mailman/mail/mailman unsubscribe mailman"

Appuyez sur Entrée pour notifier le propriétaire du mailman... <-- ENTER

[email protected] :~#

Ouvrez ensuite /etc/aliases :

vi /etc/aliases

et ajoutez les lignes suivantes :

[...]mailman :"|/var/lib/mailman/mail/mailman post mailman"mailman-admin :"|/var/ lib/mailman/mail/mailman admin mailman"mailman-bounces :"|/var/lib/mailman/mail/mailman rebondit mailman"mailman-confirm :"|/var/lib/mailman/mail/mailman confirme mailman"mailman- join:"|/var/lib/mailman/mail/mailman joindre mailman"mailman-leave:"|/var/lib/mailman/mail/mailman quitter mailman"mailman-owner:"|/var/lib/mailman/mail /mailman propriétaire mailman"mailman-request:"|/var/lib/mailman/mail/mailman demande mailman"mailman-subscribe:"|/var/lib/mailman/mail/mailman s'abonner mailman"mailman-unsubscribe:"|/ var/lib/mailman/mail/mailman se désinscrire mailman"

Exécutez de nouveaux alias et redémarrez Postfix :

nouveaux alias
/etc/init.d/postfix restart

Démarrez ensuite le démon Mailman :

/etc/init.d/mailman start

Après avoir installé ISPConfig 3, vous pouvez accéder à Mailman comme suit :

Le vhost des applications ISPConfig sur le port 8081 pour nginx est livré avec une configuration Mailman, vous pouvez donc utiliser http://server1.example.com:8081/cgi-bin/mailman/admin/ ou http://server1.example .com:8081/cgi-bin/mailman/listinfo/ pour accéder à Mailman.

Si vous souhaitez utiliser Mailman à partir de vos sites Web individuels, la configuration est un peu plus compliquée que pour Apache car nginx n'a pas d'alias globaux (définissant des alias qui fonctionnent ensuite pour tous les hôtes, par exemple domain.tld/definedalias). Vous devez donc définir les alias pour chaque vhost à partir duquel vous souhaitez accéder à Mailman.

Pour ce faire, collez ce qui suit dans le champ Directives nginx après l'installation d'ISPConfig dans l'onglet Options de chaque site Web :

 emplacement /cgi-bin/mailman { root /usr/lib/; fastcgi_split_path_info (^/cgi-bin/mailman/[^/]*)(.*)$ ; inclure /etc/nginx/fastcgi_params ; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name ; fastcgi_param PATH_INFO $fastcgi_path_info ; fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info ; fastcgi_intercept_errors activé ; fastcgi_pass unix:/var/run/fcgiwrap.socket; } emplacement /images/mailman { alias /usr/share/images/mailman; } emplacement /pipermail { alias /var/lib/mailman/archives/public ; indexation automatique activée ; } 

Cela définit l'alias /cgi-bin/mailman/ pour votre vhost, ce qui signifie que vous pouvez accéder à l'interface d'administration Mailman pour une liste à http:///cgi-bin/mailman/admin/, et le La page Web pour les utilisateurs d'une liste de diffusion peut être trouvée à http:///cgi-bin/mailman/listinfo/.

Sous http:///pipermail, vous trouverez les archives de la liste de diffusion.

Le serveur parfait - Debian Squeeze (Debian 6.0) avec BIND, Dovecot et Nginx [ISPConfig 3] - Page 5

15 Installer PureFTPd et quota

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

apt-get install pure-ftpd-common pure-ftpd-mysql quota quotatool

Modifiez le fichier /etc/default/pure-ftpd-common :

vi /etc/default/pure-ftpd-common

Le mode de démarrage est probablement déjà défini sur autonome, mais assurez-vous que VIRTUALCHROOT=true est également défini comme ceci :

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

Il est probable que toutes les lignes soient commentées, mais cela vaut la peine de vérifier /etc/inetd.conf pour une ligne commençant par ftp stream tcp et de la commenter. Si le fichier ou la ligne n'existe pas, il n'est pas nécessaire de le modifier ou de le créer. Cela empêche inetd d'essayer de démarrer ftp :

vi /etc/inetd.conf

Commentez-le comme ceci :

[...]#:STANDARD :ce sont des services standard.#ftp stream tcp nowait root /usr/sbin/tcpd /usr/sbin/ pure-ftpd-wrapper[...]

Si vous deviez modifier /etc/inetd.conf, redémarrez inetd maintenant :

/etc/init.d/openbsd-inetd redémarrage

Vous pouvez maintenant configurer PureFTPd pour autoriser les sessions FTP et TLS. FTP est un protocole très peu sûr car tous les mots de passe et données sont transférés en texte clair. En utilisant TLS, les transferts de données peuvent être cryptés, ce qui rend le FTP beaucoup plus sécurisé.

Si vous souhaitez autoriser l'exécution des sessions FTP et TLS :

echo 1> /etc/pure-ftpd/conf/TLS

Pour utiliser TLS, vous devez créer un certificat SSL. Créez le répertoire et générez le certificat SSL dans /etc/ssl/private/ à l'aide des commandes suivantes :

mkdir -p /etc/ssl/private/
openssl req -x509 -nodes -days 7300 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ ssl/private/pure-ftpd.pem

Nom du pays (code à 2 lettres) [AU] :<-- Saisissez le nom de votre pays (par exemple, "DE").
Nom de l'État ou de la province (nom complet) [Some-State] :<-- Saisissez votre état ou Nom de la province.
Nom de la localité (par exemple, ville) [] :<-- Entrez votre ville.
Nom de l'organisation (par exemple, société) [Internet Widgits Pty Ltd] :<-- Entrez le nom de votre organisation (par exemple, le nom de votre entreprise).
Nom de l'unité organisationnelle (par exemple, section) [] :<-- Saisissez le nom de votre unité organisationnelle (par exemple, "Service informatique").
Nom commun (par exemple, VOTRE nom) [] :<-- Saisissez le nom de domaine complet du système (par exemple, "serveur1.exemple.com").
Adresse e-mail [] :<-- Saisissez votre adresse e-mail.

Modifiez ensuite les permissions du certificat SSL et redémarrez PureFTPd :

chmod 600 /etc/ssl/private/pure-ftpd.pem
/etc/init.d/pure-ftpd-mysql restart

Modifier /etc/fstab en ajoutant ,usrjquota=quota.user,grpjquota=quota.group,jqfmt=vfsv0 à la partition avec le point de montage /, peut également être fait sur /var si vous avez une partition /var séparée :

vi /etc/fstab
# /etc/fstab :informations statiques sur le système de fichiers.## Utilisez « blkid » pour imprimer l'identifiant universel unique d'un périphérique # ; cela peut être utilisé avec UUID=comme un moyen plus robuste de nommer les périphériques # qui fonctionne même si des disques sont ajoutés et supprimés. Voir fstab(5).##     
 proc /proc proc defaults 0 0# / était sur /dev/sda1 lors de l'installationUUID=92bceda2-5ae4- 4e3a-8748-b14da48fb297 / ext3 errors=remount-ro,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 0 1# swap était sur /dev/sda5 lors de l'installationUUID=e24b3e9e-095c-4b49-af27-6363a4b7d094 aucun swap sw 0 0/dev/scd0 /media/cdrom0 udf,iso9660 user,noauto 0 0/dev/fd0 /media/floppy0 auto rw,user,noauto 0 0

Sur une partition /var séparée, vous pouvez utiliser usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 sous des options comme celle-ci :

[...]# / était sur /dev/sda1 lors de l'installationUUID=92bceda2-5ae4-4e3a-8748-b14da48fb297 / ext3 errors=remount- ro 0 1[...]# /var était sur /dev/sda3 lors de l'installationUUID=be189fc3-b1b0-4e41-822c-6f81aa504bc1 /var ext3 usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 0 2[ ...]

Veuillez noter que les UUID, les partitions et les types de système de fichiers sont probablement différents sur votre système, donc ne les remplacez pas par ceux de l'exemple de configuration.

Pour activer le quota, exécutez ces commandes :

monter -o remonter /
quotacheck -avugm
quotaon -avug

Si vous avez activé le quota sur /var, vous pourriez obtenir une réponse similaire sur votre terminal :

quotacheck :Analyse de /dev/sda3 [/var] terminée
quotacheck :Impossible de stat l'ancien fichier de quota d'utilisateur :aucun fichier ou répertoire de ce type
quotacheck :Impossible de stat l'ancien fichier de quota de groupe :aucun fichier de ce type ou directory
quotacheck :Impossible de stat l'ancien fichier de quota d'utilisateur :aucun fichier ou répertoire de ce type
quotacheck :Impossible de stat l'ancien fichier de quota de groupe :aucun fichier ou répertoire de ce type
quotacheck :335 répertoires et 3 233 fichiers vérifiés
quotacheck :ancien fichier introuvable.
quotacheck :ancien fichier introuvable.
[email protected] :~# quotaon -avug
/dev/sda3 [/var] :groupe quotas activés
/dev/sda3 [/var] :quotas d'utilisateurs activés

16 Installer le serveur DNS BIND

BIND peut être installé comme suit :

apt-get install bind9 dnsutils

17 Installer Vlogger, Webalizer et AWstats

Vlogger, Webalizer et AWstats peuvent être installés comme suit :

apt-get install vlogger webalizer awstats geoip-database

Ouvrez /etc/cron.d/awstats pour le modifier...

vi /etc/cron.d/awstats

... et commentez les deux tâches cron dans ce fichier :

#*/10 * * * * www-data [ -x /usr/share/awstats/tools/update.sh ] &&/usr/ share/awstats/tools/update.sh# Générer des rapports statiques :#10 03 * * * www-data [ -x /usr/share/awstats/tools/buildstatic.sh ] &&/usr/share/awstats/tools/buildstatic .sh

18 Installer Jailkit

Jailkit n'est nécessaire que si vous souhaitez chrooter les utilisateurs SSH. Jailkit doit être installé avant ISPConfig 3, il ne peut pas être installé après ! Il peut être installé comme suit :

apt-get install build-essential autoconf automake1.9 libtool flex bison debhelper
cd /tmp
wget http://olivier.sessink.nl/jailkit/jailkit-2.14.tar.gz
tar xvfz jailkit-2.14.tar.gz
cd jailkit- 2.14
./debian/rules binaire
cd ..
dpkg -i jailkit_2.14-1_*.deb
rm -rf jailkit-2.14*

Le serveur parfait - Debian Squeeze (Debian 6.0) avec BIND, Dovecot et Nginx [ISPConfig 3] - Page 6

19 Installer fail2ban

Ceci est facultatif mais également recommandé, car le moniteur ISPConfig essaie d'afficher le contenu du fichier journal :

apt-get install fail2ban

Pour que fail2ban surveille PureFTPd et Dovecot créez le fichier /etc/fail2ban/jail.local...

vi /etc/fail2ban/jail.local

... et insérez :

[pureftpd]enabled =trueport =ftpfilter =pureftpdlogpath =/var/log/syslogmaxretry =3[dovecot-pop3imap]enabled =truefilter =dovecot-pop3imapaction =iptables-multiport[name=dovecot-pop3imap, port="pop3,pop3s,imap,imaps", protocol=tcp]logpath =/var/log/mail.logmaxretry =5

Créez ensuite les deux fichiers de filtre :

vi /etc/fail2ban/filter.d/pureftpd.conf

Insérer :

[Definition]failregex =.*pure-ftpd :\(.*@\) \[WARNING\] L'authentification a échoué pour l'utilisateur. *ignoreregex =
vi /etc/fail2ban/filter.d/dovecot-pop3imap.conf

Insérer :

[Définition]failregex =(?:pop3-login|imap-login):.*(?:Échec de l'authentification|Connexion abandonnée \(échec de l'authentification |Connexion abandonnée \(tentative d'utilisation désactivée|Déconnecté \(échec de l'authentification|Connexion abandonnée \(\d+ tentatives d'authentification).*rip=(?P\S*),.*ignoreregex =

Redémarrez ensuite fail2ban :

/etc/init.d/fail2ban redémarrage

20 Installer SquirrelMail (facultatif)

Cette étape est entièrement facultative. Si vous souhaitez installer Roundcube à la place, ignorez cette étape et reportez-vous à https://www.howtoforge.com/how-to-install-roundcube-0.7-for-ispconfig-3-on-debian-squeeze. Vous pouvez le faire après avoir installé ISPConfig 3. Pour installer le client de messagerie Web SquirrelMail, exécutez simplement :

apt-get install squirrelmail

... et configurez SquirrelMail :

squirrelmail-configure

Nous devons dire à SquirrelMail que nous utilisons Dovecot-IMAP/-POP3 :

SquirrelMail Configuration : Lisez : config.php (1.4.0)
--------------------------------------------- ------------------------
Menu principal --
1. Préférences de l'organisation
2. Paramètres du serveur
3. Paramètres par défaut du dossier
4. Options générales
5. Thèmes
6. Carnets d'adresses
7. Message du jour (MOTD)
8. Plugins
9. Base de données
10. Langues

D. Définir des paramètres prédéfinis pour des serveurs IMAP spécifiques

C   Activer la couleur 
S   Enregistrer les données 
Q   Quitter

Commande >> <-- D


SquirrelMail Configuration : Lire : config.php
--------------------------- ------------------------------
Pendant que nous construisons SquirrelMail, nous avons découvert certaines
préférences qui fonctionnent mieux avec certains serveurs qui ne fonctionnent pas si 
bien avec d'autres. Si vous sélectionnez votre serveur IMAP, cette option définira certains paramètres prédéfinis pour ce serveur.

Veuillez noter que vous aurez toujours de passer par et vérifier 
tout est correct. Cela ne change pas tout. Il ne seulement quelques paramètres qui vont changer .

Veuillez sélectionner votre serveur IMAP :
    bincimap    = Binc IMAP server
    courier     = Courier IMAP server 
Cyrus =Cyrus IMAP Server
DoveCot =DoveCot Secure IMAP Server
Exchange =Microsoft Exchange IMAP Server
HmailServer =HmailServer
MacOSX =Mac OS X MailServer
Mercury32 =Mercury /32
    uw          = Serveur IMAP de l'Université de Washington 
    gmail       = Accès IMAP aux comptes Google mail (Gmail) 

    quitter        = Ne modifier rien 
Commande >> <-- dovecot


SquirrelMail Configuration : Lire : config.php
----------------------- ----------------------------------
Pendant que nous construisons SquirrelMail, nous avons découvert quelques 
préférences qui fonctionnent mieux avec certains serveurs qui ne fonctionnent pas aussi 
bien avec d'autres. Si vous sélectionnez votre serveur IMAP, cette option définira certains paramètres prédéfinis pour ce serveur.

Veuillez noter que vous aurez toujours de passer par et vérifier 
tout est correct. Cela ne change pas tout. Il ne seulement quelques paramètres qui vont changer .

Veuillez sélectionner votre serveur IMAP :
    bincimap    = Binc IMAP server
    courier     = Courier IMAP server 
Cyrus =Cyrus IMAP Server
DoveCot =DoveCot Secure IMAP Server
Exchange =Microsoft Exchange IMAP Server
HmailServer =HmailServer
MacOSX =Mac OS X MailServer
Mercury32 =Mercury /32
    uw          = Serveur IMAP de l'Université de Washington 
    gmail       = Accès IMAP aux comptes Google mail (Gmail) 

    quitter        = Ne modifier rien 
Command >> dovecot

imap_server_type =dovecot
default_folder_prefix =
trash_folder =trash
Send_folder =envoyée
draft_folder =drafts
show_prefix_option =false           default_sub_of_inbox = false
show_contain_subfolders_optio n = false
            optional_delimiter = détecter
                delete_folder = false

Appuyez sur n'importe quelle touche pour continuer... <-- appuyez sur une touche


 Configuration de SquirrelMail : Lire : config.php (1.4.0)
--------------------------------------------- ------------------------------
Menu principal --
1. Préférences de l'organisation
2. Paramètres du serveur
3. Paramètres par défaut du dossier
4. Options générales
5. Thèmes
6. Carnets d'adresses
7. Message du jour (MOTD)
8. Plugins
9. Base de données
10. Langues

D. Définir des paramètres prédéfinis pour des serveurs IMAP spécifiques

C   Activer la couleur 
S   Enregistrer les données 
Q   Quitter

Commande >> <-- S


SquirrelMail Configuration : Lire : config.php (1.4.0)
---------------------- -----------------------------------
Menu principal --
1. Préférences de l'organisation
2. Paramètres du serveur
3. Paramètres par défaut du dossier
4. Options générales
5. Thèmes
6. Carnets d'adresses
7. Message du jour (MOTD)
8. Plugins
9. Base de données
10. Langues

D. Définir des paramètres prédéfinis pour des serveurs IMAP spécifiques

C   Activer la couleur 
S   Enregistrer les données 
Q   Quitter

Commande >> <-- Q

Vous pouvez maintenant trouver SquirrelMail dans le répertoire /usr/share/squirrelmail/.

After you have installed ISPConfig 3, you can access SquirrelMail as follows:

The ISPConfig apps vhost on port 8081 for nginx comes with a SquirrelMail configuration, so you can use http://server1.example.com:8081/squirrelmail or http://server1.example.com:8081/webmail to access SquirrelMail.

If you want to use a /webmail or /squirrelmail alias that you can use from your web sites, this is a bit more complicated than for Apache because nginx does not support global aliases. Therefore you have to define the aliases for each vhost from which you want to access SquirrelMail.

To do this, paste the following into the nginx Directives field on the Options tab of the web site in ISPConfig:

 location /squirrelmail { root /usr/share/; index index.php index.html index.htm; location ~ ^/squirrelmail/(.+\.php)$ { try_files $uri =404; racine /usr/partage/ ; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php ; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name ; inclure /etc/nginx/fastcgi_params ; fastcgi_buffer_size 128k; fastcgi_buffers 256 4k; fastcgi_busy_buffers_size 256k ; fastcgi_temp_file_write_size 256k ; fastcgi_intercept_errors activé ; } location ~* ^/squirrelmail/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/; } } location /webmail { rewrite ^/* /squirrelmail last; } 

If you use https instead of http for your vhost, you should add the line fastcgi_param HTTPS on; to your SquirrelMail configuration like this:

 location /squirrelmail { root /usr/share/; index index.php index.html index.htm; location ~ ^/squirrelmail/(.+\.php)$ { try_files $uri =404; racine /usr/partage/ ; fastcgi_pass 127.0.0.1:9000; fastcgi_param HTTPS activé ; # <-- ajoutez cette ligne fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name ; inclure /etc/nginx/fastcgi_params ; fastcgi_buffer_size 128k; fastcgi_buffers 256 4k; fastcgi_busy_buffers_size 256k ; fastcgi_temp_file_write_size 256k ; fastcgi_intercept_errors activé ; } location ~* ^/squirrelmail/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/; } } location /webmail { rewrite ^/* /squirrelmail last; } 

If you use both http and https for your vhost you should have added the relevant section into /etc/nginx/nginx.conf while setting up phpMyAdmin earlier in the tutorial.

Go to the nginx Directives field again, and instead of fastcgi_param HTTPS on; vous ajoutez la ligne fastcgi_param HTTPS $fastcgi_https ; so that you can use SquirrelMail for both http and https requests:

 location /squirrelmail { root /usr/share/; index index.php index.html index.htm; location ~ ^/squirrelmail/(.+\.php)$ { try_files $uri =404; racine /usr/partage/ ; fastcgi_pass 127.0.0.1:9000; fastcgi_param HTTPS $fastcgi_https ; # <-- ajoutez cette ligne fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name ; inclure /etc/nginx/fastcgi_params ; fastcgi_buffer_size 128k; fastcgi_buffers 256 4k; fastcgi_busy_buffers_size 256k ; fastcgi_temp_file_write_size 256k ; fastcgi_intercept_errors activé ; } location ~* ^/squirrelmail/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/; } } location /webmail { rewrite ^/* /squirrelmail last; } 

The Perfect Server - Debian Squeeze (Debian 6.0) With BIND, Dovecot &Nginx [ISPConfig 3] - Page 7

21 Install ISPConfig 3

Before you start the ISPConfig installation ensure that Apache is stopped because phpMyAdmin will have installed Apache as a dependency. Should Apache2 already be installed on the system stop it now:

/etc/init.d/apache2 stop

and remove Apache's system startup links if you have not already done so in a previous step:

insserv -r apache2

Make sure that nginx is running:

/etc/init.d/nginx restart

If you have both Apache and nginx installed, the installer asks you which one you want to use:Apache and nginx detected. Select server to use for ISPConfig:(apache,nginx) [apache]:

Type nginx. If only Apache or nginx are installed, this is automatically detected by the installer, and no question is asked.

To install ISPConfig 3 from the latest released version, do this:

cd /tmp
wget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz
tar xfz ISPConfig-3-stable.tar.gz
cd ispconfig3_install/install/

La prochaine étape consiste à exécuter

php -q install.php

Cela lancera le programme d'installation d'ISPConfig 3. Le programme d'installation configurera tous les services comme Postfix, Dovecot, etc. pour vous. Une configuration manuelle telle que requise pour ISPConfig 2 (guides de configuration parfaits) n'est pas nécessaire.

[email protected]:/tmp/ispconfig3_install/install# php -q install.php


--------------------------------------------------------------------------------
 _____ ___________   _____              __ _         ____
|_   _/  ___| ___ \ /  __ \            / _(_)       /__  \
  | | \ `--.| |_/ / | /  \/ ___  _ __ | |_ _  __ _    _/ /
  | | `--. \  __/  | | / _ \| '_ \| _| |/ _` | |_ |
 _| |_/\__/ / | | \__/\ (_) | | | | | | | (_| | ___\ \
 \___/\____/\_|      \____/\___/|_| |_|_| |_|\__, | \____/
                                              __/ |
                                             |___/
--------------------------------------------------------------------------------


>> Initial configuration

Operating System: Debian or compatible, unknown version.

    Following will be a few questions for primary configuration so be careful.
    Default values are in [brackets] and can be accepted with .
    Tap in "quit" (without the quotes) to stop the installer.


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 []: <-- yourrootsqlpassword

MySQL database to create [dbispconfig]: <-- ENTER

MySQL charset [utf8]: <-- ENTER

Apache and nginx detected. Select server to use for ISPConfig: (apache,nginx) [apache]: <-- nginx

Generating a 2048 bit RSA private key
........+++
.......+++
writing new private key to 'smtpd.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
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
Configuring Jailkit
Configur ing SASL
Configuring PAM
Configuring Courier
Configuring Spamassassin
Configuring Amavisd
Configuring Getmail
Configuring Pureftpd
Configuring BIND
Configuring nginx
Configuring Vlogger
Configuring Apps vhost
Configuring Bastille Firewall
Configuring Fail2ban
Installing ISPConfig
ISPConfig Port [8080]: <-- ENTER

Do you want a secure (SSL) connection to the ISPConfig web interface (y,n) [y]: <-- ENTER

Generating RSA private key, 4096 bit long modulus
.............................................................................++
........................................................................................................................++
e is 65537 (0x10001)
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are q uite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
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

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []: <-- ENTER
An optional company name []: <-- ENTER
writing RSA key
Configuring DBServer
Installing ISPConfig crontab
no crontab for root
no crontab for getmail
Restarting services ...
Rather than invoking init scripts through /etc/init.d, use the service(8)
utility, e.g. service mysql restart

Since the script you are attempting to invoke has been converted to an
Upstart job, you may also use the stop(8) and then start(8) utilities,
e.g. stop mysql ; start mysql. The restart(8) utility is also available.
mysql stop/waiting
mysql start/running, process 2463
 * Stopping Postfix Mail Transport Agent postfix
   ...done.
 * Starting Postfix Mail Transport Agent postfix
   ...done.
 * Stopping SASL Authentication Daemon saslauthd
   ...done.
 * Starting SASL Authentication Daemon saslauthd
   ...done.
Stopping amavisd: amavisd-new.
Starting amavisd: amavisd-new.
 * Stopping ClamAV daemon clamd
   ...done.
 * Starting ClamAV daemon clamd
Bytecode: Security mode set to "TrustSigned".
   ...done.
 * Stopping Courier authentication services authdaemond
   ...done.
 * Starting Courier authentication services authdaemond
   ...done.
 * Stopping Courier IMAP server imapd
   ...done.
 * Starting Courier IMAP server imapd
   ...done.
 * Stopping Courier IMAP-SSL server imapd-ssl
   ...done.
 * Starting Courier IMAP-SSL se rver imapd-ssl
   ...done.
 * Stopping Courier POP3 server...
   ...done.
 * Starting Courier POP3 server...
   ...done.
 * Stopping Courier POP3-SSL server...
   ...done.
 * Starting Courier POP3-SSL server...
   ...done.
 * Restarting Mailman master qrunner mailmanctl
 * Waiting...
   ...fail!
The master qrunner lock could not be acquired because it appears as if another
master qrunner is already running.

   ...done.
 * Reloading PHP5 FastCGI Process Manager php5-fpm
   ...done.
Reloading nginx configuration: nginx.
Restarting ftp server: Running: /usr/sbin/pure-ftpd-mysql-virtualchroot -l mysql:/etc/pure-ftpd/db/mysql.conf -l pam -8 UTF-8 -O clf:/var/log/pure-ftpd/transfer.log -D -H -b -A -E -u 1000 -Y 1 -B
Installation completed.
You have mail in /var/mail/root
[email protected]:/tmp/ispconfig3_install/install#

The installer automatically configures all underlying services, so no manual configuration is needed.

You now also have the possibility to let the installer create an SSL vhost for the ISPConfig control panel, so that ISPConfig can be accessed using https:// instead of http://. To achieve this, just press ENTER when you see this question:Do you want a secure (SSL) connection to the ISPConfig web interface (y,n) [y]:.

You can then access ISPConfig 3 under http(s)://server1.example.com:8080/ or http(s)://192.168.0.100:8080/ ( http or https depends on what you chose during installation). Log in with the username admin and the password admin (you should change the default password and possibly edit the admin username after your first login):

If your browser indicates a 502 Bad Gateway error, just restart PHP-FPM and try the URL again:

/etc/init.d/php5-fpm restart

It can take a couple of minutes for the control panel to be accessible. The system should be ready to be used except if you have an error in your mail.log then read the note below.

21.1 ISPConfig 3 Manual

In order to learn how to use ISPConfig 3, I strongly recommend to download the ISPConfig 3 Manual.

Sur environ 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 ainsi que des exemples d'entrées valides, et fournit des tutoriels pour les tâches les plus courantes dans ISPConfig 3. Il explique également comment rendre votre serveur plus sécurisé et est accompagné d'une section de dépannage à la fin.

21.2 ISPConfig Monitor App For Android

Avec l'application ISPConfig Monitor, vous pouvez vérifier l'état de votre serveur et savoir si tous les services fonctionnent comme prévu. Vous pouvez vérifier les ports TCP et UDP et envoyer un ping à vos serveurs. In addition to that you can use this app to request details from servers that have ISPConfig installed (please note that the minimum installed ISPConfig 3 version with support for the ISPConfig Monitor App is 3.0.3.3! ); these details include everything you know from the Monitor module in the ISPConfig Control Panel (e.g. services, mail and system logs, mail queue, CPU and memory info, disk usage, quota, OS details, RKHunter log, etc.), and of course, as ISPConfig is multiserver-capable, you can check all servers that are controlled from your ISPConfig master server.

Pour obtenir des instructions de téléchargement et d'utilisation, veuillez visiter http://www.ispconfig.org/ispconfig-3/ispconfig-monitor-app-for-android/.

22 Additional Notes

22.1 It is likely that emails are not sent or received so to correct this follow the steps below.

Postfix/Dovecot - warning SASL:Connect to private/auth failed:No such file or directory

Error:Postfix/Dovecot - warning:SASL:Connect to private/auth failed:No such file or directory

Similar error messages will appear in your mail log (cat /var/log/mail.log):

Aug 23 15:55:01 server1 postfix/smtpd[15194]:warning:SASL:Connect to private/auth failed:No such file or directory
Aug 23 15:55:01 server1 postfix/smtpd[15194]:fatal:no SASL authentication mechanisms
Aug 23 15:55:02 server1 postfix/master[3979]:warning:process /usr/libexec/postfix/smtpd pid 15194 exit status 1
Aug 23 15:55:02 server1 postfix/master[3979]:warning:/usr/libexec/postfix/smtpd:bad command startup -- throttling

Solution (this config should already exist after this tutorial):

Open your dovecot.conf /etc/dovecot/dovecot.conf, and make sure you have the following lines in it:

vi /etc/dovecot/dovecot.conf
[...]client { path =/var/spool/postfix/private/auth mode =0660 user =postfix group =postfix}[...]

Restart Dovecot.

Then check if /var/spool/postfix/private/auth got created:

ls -l /var/spool/postfix/private/auth

Also make sure you add the following line into your /etc/postfix/main.cf file, sensibly on the line next to readme_directory =/usr/share/doc/postfix and restart postfix.

[...]queue_directory =/var/spool/postfix[...]
/etc/init.d/postfix restart

22.1 OpenVZ

If the Debian server that you have just set up in this tutorial is an OpenVZ container (virtual machine), you should do this on the host system, assuming that the ID of the OpenVZ container is 101, replace it with the correct VPSID on your system:

VPSID=101
for CAP in CHOWN DAC_READ_SEARCH SETGID SETUID NET_BIND_SERVICE NET_ADMIN SYS_CHROOT SYS_NICE CHOWN DAC_READ_SEARCH SETGID SETUID NET_BIND_SERVICE NET_ADMIN SYS_CHROOT SYS_NICE
do
  vzctl set $VPSID --capability ${CAP}:on --save
done

  • Debian :http://www.debian.org/
  • ISPConfig :http://www.ispconfig.org/

Panels
  1. Le serveur parfait - Ubuntu 14.10 (nginx, BIND, Dovecot, ISPConfig 3)

  2. Le serveur parfait - Ubuntu 15.04 (nginx, BIND, Dovecot et ISPConfig 3)

  3. Le serveur parfait - Ubuntu 12.10 (nginx, BIND, Dovecot, ISPConfig 3)

  4. Le serveur parfait - Debian 8.6 (nginx, BIND, Dovecot, ISPConfig 3.1)

  5. Le serveur parfait - Debian 9 (Nginx, BIND, Dovecot, ISPConfig 3.1)

Le serveur parfait - OpenSUSE 12.2 x86_64 (nginx, Dovecot, ISPConfig 3)

Le serveur parfait - CentOS 6.3 x86_64 (nginx, Dovecot, ISPConfig 3)

Le serveur parfait - Debian Wheezy (nginx, BIND, Dovecot, ISPConfig 3)

Le serveur parfait - Ubuntu 13.04 (Apache2, BIND, Dovecot, ISPConfig 3)

Le serveur parfait - CentOS 6.4 x86_64 (nginx, Dovecot, ISPConfig 3)

Le serveur parfait - Debian Wheezy (Apache2, BIND, Dovecot, ISPConfig 3)