https://test:10000

Url de référence: http://www.libordux.org/debian-docs/deb-lamp.php

Le but de ce howto interactif est l'installation de l'incontournable trio Apache MySQL PHP, Perl (ou Python, que nous ne décrivons pas ici) sur une Debian sarge 3.1, afin d'avoir un serveur personnel ou professionnel pour mettre en ligne des sites, blog, partager des documents ou encore pour développer et faire des essais. Apache est le serveur de référence sur le web, sa configuration se fait directement par modification de fichiers texte ou avec votre navigateur web au travers de Webmin. La gestion des bases de données peut se faire avec phpmyadmin et la gestion de la machine serveur avec SSH.

Pour ajouter des sources automatiquement.

# apt-setup

Choisissez la méthode http ou ftp et mettez votre liste de paquets à jour.

# aptitude update

Si ce n'est pas déjà fait, mettez à jour votre système.

# aptitude upgrade

Installation et première configuration d'Apache 2

Commençons par l'installation de notre nouveau serveur web Apache.

# aptitude install apache2

Dans le cas ou vous n'avez installé que la base de debian, vous pouvez encore installer mc, ou / et nano, pour éditer les fichier de configurations, ainsi que le navigateur web en mode texte Lynx.

# aptitude install mc nano lynx

Pour vérifier la réussite de l'installation et le bon fonctionnement d'Apache. Depuis votre navigateur web préféré il est accéssible depuis l'url localhost ou depuis le nom de machine. Vous pouvez taper la commande et utiliser Lynx, en mode console.

$ lynx http://localhost/

Si tout c'est bien passé vous devriez être accueilli par la page de test de l'installation d'Apache.

A noter que le mode Multiviews est activé, vous tomber donc sur la page de de préférence de votre navigateur, si la langue n'est pas configurée ce sera l'Anglais en premier. public_html - Répertoire public pour les utilisateur de système

Ce passage n'est pas obligatoire, mais c'est utile de le savoir. Par défaut sur Debian, Apache propose aux utilisateurs du système d'avoir un espace public pour y mettre des documents, html en général. Ce répertoire est assez réstrictif, ce qui est bien, et root n'y a pas le droit.

Apache configure userdir comme un module, les fichiers de configuration se trouve dans /etc/apache2/mods-available, il y a userdir.conf et userdir.load. Pour qu'il fonctionne, il y a un lien de ces fichiers, vers /etc/apache2/mods-enable, enable pour activé. Il suffit donc de supprimer ce liens et redémarrer Apache pour que le module ne fonctionne plus.

On peut aussi configuer ce service directement dans apache2.conf. utiliser public_html

Il n'y a rien de plus simple, il suffit de créer un dossier public_html dans le /home de l'utilisateur, tel que /home/user/public_html il est ensuite accessible depuis l'url de la machine suivit de ~User, vous vous retrouverez ensuite dans Index of /~user.

Ouvrez une console utilisateur, créer le dossier et testé:

$ mkdir public_html $ lynx http://localhost/~user/

Plus de redirection dans /apache2-default

Afin de ne pas être redirigé sur la page de test il faut modifier le fichier default se trouvant dans le répértoire /etc/apache2/site-available, en ajoutant # devant la ligne 17 (RedirectMatch ^/$ /apache2-default/). A noter que ce même fichier peut servir d'exemple pour configuer des hôtes virtuels.

Plusieurs méthodes existent pour modifier se fichier texte, en voici quelques une.

Pour que vos modifications soient effectives il faut qu'Apache les prennent en compte avec la commande reload pour relancer le serveur.

# /etc/init.d/apache2 reload

Pour vérifier la prise en compte des modifications.

Votre serveur est désormait fonctionnel, le propriétaire des fichiers est le group se nomment www-data, la racine du serveur est dans /var/www. Installation de php 4 et du module apache2

Installation de php en version 4, ainsi que du module pour Apache 2.

# aptitude install php4 libapache2-mod-php4

Apache est relancé automatiquement pendant l'installation pour que les modification soient prisent en compte.

Pour vérifier le bon fonctionnent du module, vous pouvez créer un fichier se nomment phpinfo.php à la racine du serveur, avec le contenu ci-dessous.

<?php phpinfo(); ?>

Vous pouvez faire cela avec nano à la console.

# nano /var/www/phpinfo.php

Puis taper le code php ci-dessus, quitter et enregistrer avec ctrl + x en nommant le fichier comme bon vous semble mais avec l'extension .php, puis valider avec <ENTER>.

Ensuite allez à l'url de la page, si vous l'avez nommé phpinfo.php et que vous l'avez mise à la racine de votre serveur suivez le lien ci-dessous.

Vous serez encore peut-être intéressé par installer quelques modules pour php. Pour obtenir une liste de paquets disponibles en relation avec php4.

# apt-cache search php4

Le module php4-gd pour manipuler les images avec PHP, utilisé par exemple, par les Blog pour générer des miniarure quand on upload une image. Dans la catégorie images il y a aussi le module php4-imagick pour le support d'ImageMagick.

Votre serveur reconnaît maintenant les fichiers écrit en langage PHP, vous pouvez nommer la page qui s'ouvre par défaut, par index.php et insérer des scripts PHP un peu partout dans vos page web. Installation de MySQL-4.1 et de phpMyAdmin

Nous allons installer la version 4.1 du serveur de base de données MySQL disponnible dans Debian 3.1 sarge, ainsi que le module php4-mysql et afin de pouvoir gérer les bases de données depuis un navigateur web, nous installerons phpMyAdmin.

# aptitude install mysql-server-4.1 php4-mysql phpmyadmin

Debconf vous posera quelques questions, il faut ensuite configurer le mot de passe root, pour cela nous utiliserons phpMyAdmin. Loguez-vous avec root et sans mot de passe pour cette unique fois.

Vous avez maintenant un serveur web fonctionnel avec php4 et un serveur MySQL. Installation de Perl et du module apache2

Ce module ne sert pas à grand chose si l'on utilise pas des scripts Perl.

La présentation de libapache2-mod-perl2, provenant du paquet du même nom, dit que l'utilisation de scripts Perl peut augmenter de 400% à 2000% la rapidité d'un site web. Après installation, il existe de nombreuses possibilité pour configurer Perl et Apache, comme les script cgi par exemple.

Si ce n'est pas déjà le cas il faut installer Perl:

# aptitude install perl

Installation du module Perl2 pour Apache2.

# aptitude install libapache2-mod-perl2

Pour info les scripts Perl commence toujours par #!/usr/bin/perl.

Sur Debian, vous pouvez directemnet utiliser les fichier .pl, car dans le fichier de configuration d'apache2 (apache2.conf) la ligne DirectoryIndex (202 du fichier original) comporte les infos qu'il faut.

DirectoryIndex index.html index.cgi index.pl index.php index.xhtml

Administartion, configuration, Webmin et les services reseau

Pour administrer votre serveur vous pouvez directement modifier les fichiers textes de configurations d'apache ou, vous pouvez installer Webmin et son module correspondant.

Les fichier de configuration d'Apache2 se trouvent dans /etc/apache2, vous pouvez par exemple, facilement ajouter des hôtes virtuels dans le fichier httpd.conf, ou encore mettre de nouvelles directives pour modifier le comportement du serveur.

Les services réseau sont nombreux, tel que le protocole ftp, ssh ou encore les dns. Pour mettre en ligne un site ou un blog, les services dns (Domaine Name Services) sont incontournable. L'utilistation de ssh pour administrer et transférer des fichier et plus que recommandée pour une sécurité optimale.

SSH - Administration du serveur à distance

Si vous utilisez toujours telnet au lieu de SSH, vous devriez remédier à cela. Ssh devrait être utilisé pour toutes les connexions distantes à la place de telnet. Il faut éviter les mots de passe en clair, et utiliser uniquement les protocoles qui utilisent la cryptographie. Si vous n'utilisé plus que SSH vous pouvez alors désinstallez telnet.

Pour devenir root, il faut éviter de se connecter au système en utilisant SHH en tant que root et préférer l'utilisation de méthodes alternatives tel que su ou sudo. Le fichier sshd_config, situé dans /etc/ssh, peut être modifié pour accroître la sécurité.

Se connecter au serveur avec le nom de machine, on peut utiliser le nom de domaine, ou encore l'adrese IP. SSH utilise par défaut le port 22:

$ ssh user@nomDeMachine

En spécifiant le port et le dossier dans lequel on arrive:

$ ssh user@nomDeMachine:22/home/user/public_html

XavierFossouoNotesPerso (dernière édition le 2008-02-21 22:09:19 par localhost)