Mar 272013
 

Ce post  fait suite à mon tutoriel en deux parties concernant l’installation d’un serveur dédié complet en vue de l’utilisation d’ISPConfig 3 pour l’administration. Vous pouvez trouver les deux premières parties du tutoriels aux adresses suivantes:

Installation d’un serveur dédié sous Debian avec ISPConfig 3:
Partie 1
Partie 2

Installation d’ISPConfig 3:

Je pars donc du principe qu’à ce stade, vous disposez d’un serveur Debian avec toutes les dépendances nécessaires au bon fonctionnement d’ISPConfig 3. (Cf. ci-dessus)

Il ne reste donc plus qu’à lancer l’installation à proprement parler (puis nous configurerons Roundcube comme client webmail.)

Récupération de la dernière release d’ISPConfig 3

Dans le dossier de votre choix, (votre répertoire home ou autre) crée un dossier temporaire et récupérer la dernière version d’ISPConfig 3

Installation d’ISPConfig 3

Il ne reste plus qu’à lancer l’installation; une fois dans le dossier ispconfig3_install/install/ lancer le script d’installation:

Le script d’installation se déroule alors selon le schéma suivant: (En rouge les réponses que vous devrez personnaliser.)

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

ISPConfig 3

>> Initial configuration

Operating System: Debian 6.0 (Squeeze/Sid) or compatible

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]: <– nomdeserver.votrenomdedomaine.com

MySQL server hostname [localhost]: <– ENTER

MySQL root username [root]: <– ENTER

MySQL root password []: <– votremotdepasserootSql

MySQL database to create [dbispconfig]: <– ENTER

MySQL charset [utf8]: <– ENTER

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]: <– fr

State or Province Name (full name) [Some-State]: <– département

Locality Name (eg, city) []: <– ville

Organization Name (eg, company) [Internet Widgits Pty Ltd]: <– nomdevotrecompagnie

Organizational Unit Name (eg, section) []: <– ENTER

Common Name (eg, YOUR name) []: <– votrenom

Email Address []: <– adressemail

Configuring Jailkit

Configuring Dovecot

Configuring Spamassassin

Configuring Amavisd

Configuring Getmail

Configuring Pureftpd

Configuring BIND

Configuring Apache

Configuring Vlogger

Configuring Apps vhost

Configuring Firewall

Installing ISPConfig

ISPConfig Port [8080]: <– portdAccesIspconfig

Configuring DBServer

Installing ISPConfig crontab

no crontab for root

no crontab for getmail

Restarting services …

Stopping MySQL database server: mysqld.

Starting MySQL database server: mysqld.

Checking for corrupt, not cleanly closed and upgrade needing tables..

Stopping Postfix Mail Transport Agent: postfix.

Starting Postfix Mail Transport Agent: postfix.

Stopping amavisd: amavisd-new.

Starting amavisd: amavisd-new.

Stopping ClamAV daemon: clamd.

Starting ClamAV daemon: clamd Bytecode: Security mode set to « TrustSigned ».

.

If you have trouble with authentication failures,

enable auth_debug setting. See http://wiki.dovecot.org/WhyDoesItNotWork

This message goes away after the first successful login.

Restarting IMAP/POP3 mail server: dovecot.

Restarting web server: apache2 … waiting ..

Restarting ftp server: Running: /usr/sbin/pure-ftpd-mysql-virtualchroot -l mysql:/etc/pure-ftpd/db/mysql.conf -l pam -Y 1 -8 UTF-8 -H -D -b -O clf:/var/log/pure-ftpd/transfer.log -E -u 1000 -A -B

Installation completed.

[email protected]:/tmp/ispconfig3_install/install#

 Le script d’installation configure automatiquement tous les services concernés. Il ne vous est donc normalement pas nécessaire de faire une configuration manuelle supplémentaire.

Premier accès à l’interface web ISPConfig 3

vous pouvez dès à présent accéder à l’interface web via l’adresse suivante: (les valeurs en bleu sont à reprendre selon votre configuration.)

http://nomdeserver.votrenomdedomaine.com:8080

Votre premier login s’effectue sous le nom d’utilisateur admin et mot de passe admin
Il est bien évidemment impératif de changer au moins le mot de passe pour des raisons évidentes de sécurité.

Vous disposez à présent d’une interface de configuration conviviale pour gérer la plupart des opérations courantes sur un serveur web. Un court article suivra concernant l’installation de roundcube via ISPConfig3 afin de disposez également du client webmail que nous avons omis jusqu’à présent. Je présenterais dans les posts suivants les différentes étapes de l’administration d’un serveur à l’aide d’ISPConfig 3.

Une fois de plus, n’hésitez pas à me faire part de vos commentaires.

Sources

Comme précisé dans le premier post sur l’installation d’ISPConfig, celui-ci est grandement tiré du tutoriel d’installation (en anglais) disponible sur le site de howtoforge:

http://www.howtoforge.com/perfect-server-debian-squeeze-with-bind-and-dovecot-ispconfig-3

N’hésitez donc pas à y faire un tour.

Vous trouverez également des informations sur le site d’ISPConfig:

http://www.ispconfig.org/

Mar 162013
 

Ce post fait suite à la première partie de l’installation complète d’un serveur web/mail/ftp/… disponible à l’adresse suivante: Installation Partie 1

A ce stade, vous devez donc disposer d’un serveur sous debian (squeeze) avec le network configuré et un accès ssh (local ou distant.) La première partie de l’installation permet d’effectuer les quelques vérifications fondamentales avant de commencer l’installation. (Entre autre la bonne configuration du réseau, nom de machine etc.)

Il est donc temps de passer à l’installation des différentes dépendances.

Installation de Postfix, Courier, Saslauthd, MySQL, rkhunter, binutils

Nous commençons par la mise en place du serveur mail, de MySQL ainsi que de différents outils nécessaires à la sécurité.

Vous aurez à répondre aux questions suivantes:

General type of mail configuration: <– Internet Site
System mail name: <– nomdeserveur.exemple.com
New password for the MySQL « root » user: <– votremdpsql
Repeat password for the MySQL « root » user: <– votremdpsql
Create directories for web-based administration? <– No
SSL certificate required <– Ok

N’oubliez pas de bien noter votre mot de passe MySQL. Il vous sera nécessaire par la suite.
Nous allons également modifier la configuration de MySQL pour que l’écoute se fasse sur toutes les interfaces du serveur (et non uniquement Localhost)

Commentez la ligne bind-address = 127.0.0.1
Votre fichier my.cnf doit ressembler à cela:

[…]
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
#bind-address = 127.0.0.1
[…]

On peut dès à présent vérifier le bon fonctionnement de MySQL:

Doit renvoyer:
[email protected]:~# netstat -tap | grep mysql
tcp        0      0 *:mysql                 *:*                     LISTEN      10457/mysqld
[email protected]:~#

Il est également nécessaire de recréer les certificats SSL pour courier. (Ceux-ci sont créés avec le hostname localhost. On souhaite les recréer pour intégrer le nom de notre serveur (nomdeserveur.exemple.com.)
On commence par supprimer les certificats présents:

On modifie ensuite les deux fichiers imapd.cnf et pop3d.cnf en remplacant le paramètre CN=localhost par CN=nomdeserver.exemple.com

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

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

Puis on recrée les certificats:

Il ne reste plus qu’à redémarrer le serveur courier:

Installation de Amavisd-new, SpamAssassin, And Clamav

Suit l’installation de l’antispam et antivirus, plus leur dépendances, que l’on lancera avec la commande suivante:

Nous pouvons stopper le processus spamassassin et le supprimer du script de démarrage automatique car ISPConfig a sa propre façon de le lancer via amavisd.

Juin 252012
 

Après avoir brièvement présenté ISPConfig 3 dans un précédent post : ISPConfig, il est temps de passer à la pratique. Pour cela, la première chose à faire est, bien évidemment, l’installation.

Préparation du serveur dédié pour ISPConfig

Le but de ce post est donc de vous permettre, en partant d’une installation vierge de Debian Squeeze, d’installer tous les services nécessaires pour l’hébergement (Apache 2.2, PHP 5.2, MySQL 5, ftp, mail…) avec une administration par le web à l’aide d’ISPConfig. Bien évidemment, je n’ai rien inventé là et ce tutoriel se base principalement sur ce post (en anglais) du site HowtoForge:
http://www.howtoforge.com/perfect-server-debian-squeeze-with-bind-and-dovecot-ispconfig-3

J’ai très légèrement personnalisé l’installation afin de remplacer Squirrel mail par Roundcube (que je trouve bien plus agréable à l’utilisation) et je vous l’ai traduit en français, voilà tout.

Prérequis

Je suppose dans le début de ce tutoriel que vous disposez d’un serveur fonctionnel sur Debian Squeeze (à jour: 6.0.5) avec un accès ssh et un réseau configuré pour disposer d’une IP statique. (Pour ceux qui voudraient installer Debian sur leur propre machine afin de réaliser des tests @home, vous pourrez suivre le début de la procédure sur le lien cité plus haut afin d’installer Debian avec un accès ssh.) Pour information, même si ce tutoriel devrait fonctionner sur la plupart des distrib sous Debian Squeeze, je précise que mon serveur est installé sur la base d’un noyau 3.2.13 compilé par OVH. Ce n’est pas pour faire de la pub, mais il est intéressant de le noter car cela pourrait expliquer quelques différences par rapport à d’autres versions.

Configuration réseau

Commençons donc par s’occuper du nom d’hôte de la machine. Pour cela, deux modifications sont à faire:
Editez votre fichier /etc/hosts afin d’intégrer le nom de votre choix en regard de votre IP (192.168.0.100 pour l’exemple.)

Ne vous occupez pas de la partie IPv6 (si elle existe dans votre fichier) j’y reviendrais dans un autre post dédié. La partie alias est facultative derrière le nom de serveur. Il s’agit de l’alias local se référant à l’IP en question. (L’alias localhost en revanche, pour l’IP 127.0.0.1, est plus important; beaucoup de programme l’utilisant directement.)
De la même façon, on va modifier le fichier /etc/hostname afin de faire correspondre le nom d’hôte choisi.

Inscrivez le nom d’hôte choisi (si une ligne est déjà présente, la remplacer) et validez la création/modification du fichier en tapant :wq

Afin de vérifier la cohérence des noms d’hôtes, vous pouvez taper successivement les commandes suivantes:

Les deux commandes doivent renvoyer le même nom;

Mise à jour du serveur

Il est également conseillé, avant toute installation majeure, de mettre à jour les paquets Debian. Cela se fait simplement par les commandes suivantes:

(Si aucune mise à jour n’est disponible, assurer vous de bien avoir ajouté le squeeze-update repository dans le fichier /etc/apt/sources.list

Parmi les autres vérifications importantes à faire avant l’installation d’ISPConfig, il convient de s’assurer que bash est le shell par défaut. Pour faire simple, bash et dash sont deux portages  de sh, le shell originel (qui date de 1977.) Bash est plus ancien et a été longuement utilisé par défaut dans les distributions linux quand Dash en est une version plus récente et moins gourmande qui devient donc le standard dans les distributions récentes. Cependant, ISPConfig, ne supporte pas encore dash et c’est pour cela que cette modification est nécessaire. On l’effectuera par la commande suivante:

Use dash as the default system shell (/bin/sh)? <– No

La vérification du shell par défaut se fait de la façon suivante:

doit retourner

Enfin, une dernière précaution qui vous évitera quelques fâcheux problèmes, synchroniser l’horloge avec un serveur NTP (Network Time Protocol.) On installera pour cela les paquets ntp et ntpdate

Cela devrait vous permettre de garder automatiquement votre serveur à l’heure.

Ainsi se termine cette phase de préparation de votre serveur pour l’installation propre d’ISPConfig et de tous les services d’hébergement. Nous n’avons certes pas fait grand chose mais ces vérifications sont importantes afin de partir sur des bases propres pour l’installation. Un prochain post détaillera les phases d’installation des services mails, web, sql et autre avant de pouvoir mettre en place notre interface d’administration.