Installer et préparer un serveur dédié ou local pour le web (LAMP)

Installer et préparer un serveur dédié ou local pour le web (LAMP)

Tags : Serveur, Tutoriaux
Catégorie : Lemon Cake
Mise en ligne : 18 Février 2014 à 12:30

Vous avez besoin chez vous ou à distance d'avoir un serveur Web pour pouvoir exécuter des scripts ou même pour votre site Internet, et vous ne savez pas comment faire ? Vous voulez avoir la main sur tout et ne pas être bridé ?

Voici la marche à suivre pour installer un serveur LAMP (Linux Apache MySQL PHP) le tout en vidéos.

Je vais essayer à travers ce tuto de vous expliquer pas à pas comment installer un serveur web. Par contre je conseil quand même d'avoir une petite connaissance des commandes Linux pour ne pas être perdu et en cas de pépins pouvoir résoudre les soucis.

Mais ne vous inquiétez pas si jamais vous avez des soucis lors du tuto, posez vos questions dans les commentaires et je vous répondrez (si j'ai la solution).

Prérequis

Pour suivre ce tuto vous allez avoir besoin des logiciels suivants :

  • Un Linux, peu importe lequel, mais de préférence un sans interface graphique afin de gagner en puissance. Pour ce tuto je vais utiliser Ubuntu Server 12.04 64bits mais vous pouvez aussi prendre un Debian ou CentOS
  • PuTTY pour les utilisateurs Windows, pour les Mac et Linux le terminal fonctionne très bien
  • Un ordinateur pouvant être utilisé comme serveur. Si vous prenez un dédié chez OVH ou autre, la distribution se fait lors de la commande du serveur
  • De la patience, de la rigueur et de bons doigts car tout va se faire en lignes de commandes

Je vous passe les détails d'installation du Linux car si vous prenez un dédié la distribution sera installée automatiquement et si vous le faites à la main, ce n'est pas très dur. Gravez, installez et c'est fini. Sachant que si vous installez vous même le serveur, un utilisateur différent du root sera créé. Si vous passez par un hébergeur web, il y a de grandes chances que vous n'ayez que le root. Ce n'est pas grave en soit, mais pensez juste à mettre un mot de passe assez complexe.

Pour changer votre mot de passe tapez ceci sans spécifier le nom de l'utilisateur :

passwd

Je vais utiliser pour ma part un Ubuntu Server 12.04 en machine virtuelle. Cela sera plus simple pour faire les vidéos. Je vous dé-conseil, même pour un serveur local de l'émuler, votre serveur va ramer fortement.

Connexion au serveur

La connexion au serveur va se faire via Secure Shell ou SSH qui est un protocole de connexion sécurisé, comme cela vous n'avez aucunes craintes.

Windows

Première chose à faire avec PuTTY c'est créer changer le système d'encodage de l'affichage pour éviter les artefacts :

  • Window
  • Translation
  • Et sélectionnez dans le menu déroulant : UTF-8

Revenez dans l'onglet Session, et renseignez :

  • Host Name : nomUtilisateur@IP_du_serveur
  • Port : 22
  • Connection type : SSH

Donnez un nom à votre session, cliquez sur Save. Pour les prochaines connexions, vous aurez juste à cliquer sur le nom de votre session puis Load.

putty

Et pour vous connecter cliquez sur Open.

Une nouvelle fenêtre s'ouvre. PuTTY se connecte au serveur.

Linux et Mac

Ouvrez le terminal et tapez :

ssh nomUtilisateur@IP_du_serveur

La connexion se fait, bien plus simple que pour les Windowsiens.

Maintenant que vous êtes connecté au serveur, rentez votre mot de passe. Je vous avertis tout de suite, lorsque vous allez taper votre mot de passe, il n'y aura pas d'indication sur les caractères tapés. Si vous faites une erreur, validez et recommencez dès qu'il vous redonnera la main.

Installation des modules principaux

Nous allons passer maintenant à la partie la plus longue.

Commençons par mettre à jour nos différents paquets et repositories (dépôt, c'est là où sont stocké la plupart des logiciels).

La première fois que vous allez rentrer la commande sudo vous allez devoir rentrer votre mot de passe.

sudo apt-get update
sudo apt-get upgrade

Les paquets (ou logiciels) qui vont être installés sont :

  • apache2 : Installera un serveur Apache, qui est le serveur HTTP qui est la base pour fonctionner
  • php5 : Installera PHP5 avec sa dernière version
  • libapache2-mod-php5 : Librairie qui permet de lier apache et php
  • mysql-server : Installera MySQL pour les bases de données
  • php5-mysql : Librairie qui fait le lien entre PHP5 et MySQL

Nous allons lancer l'installation de tous les paquets d'un coup comme cela les dépendances s'installerons en même temps et donc correctement. Mais vous pouvez les installer les unes après les autres, normalement les dépendances doivent s’installer en même temps mais par sécurités ...

sudo apt-get install apache2 php5 mysql-server libapache2-mod-php5 php5-mysql

Apache et PHP ne nécessitent pas de paramétrage, par contre MySQL vous demandera d'être très attentif pour ne pas devoir tout refaire du début.

Si c'est pour un serveur local, qui ne sera jamais visible de l’extérieur, je vous conseille de mettre root en utilisateur et root en mot de passe. Ne laissez pas le champ vide sinon cela va créer des erreurs.

Une fois tous les paquets installés, essayez de taper dans votre navigateur : http://ip_du_serveur/

Si tout a fonctionné correctement vous devriez avoir le beau message : "It works!".

Installation de PHPMyAdmin

Afin de gérer plus facilement nos bases de données je vous propose d'installer PHPMyAdmin

sudo apt-get install phpmyadmin

Il va vous demander de sélectionner le serveur web à reconfigurer. Vous avez le choix entre apache2 et lighttpd. Comme nous avons installé apache2, nous allons donc reconfigurer apache2. Pour se sélectionner vous devez appuyer sur la touche Espace, puis Tabulation pour aller sur le bouton OK.

Pour fonctionner PHPMyAdmin a besoin d'une base de données. Il va vous demander si vous souhaitez faire cette installation manuellement (difficile), ou si vous souhaitez que dbconfig-common s'en charge pour vous (recommandé). N'étant pas un expert là-dedans, je préfère vous recommander la deuxième solution.

Indiquez le mot de passe créé lors de l'installation de LAMP, chez moi root.

Indiquez un mot de passe pour l'utilisateur PHPMyAdmin, je vous conseille de mettre le même. Celui si servira à créer les utilisateurs si vous êtes plusieurs à utiliser ce serveur et que vous ne voulez pas que vos utilisateurs aient accès aux bases de données des autres.

Une fois l'installation terminée, tapez dans votre navigateur : http://ip_du_serveur/phpmyadmin/

Connectez-vous avec le login et mot de passe que vous avez saisie lors de l'installation de MySQL.

Si vous perdez le mot de passe de cet utilisateur faites la commande ci-dessous et modifier le mot de passe. Vous pouvez aussi modifier le nom de l'utilisateur :

sudo nano /etc/dbconfig-common/phpmyadmin.conf
sudo reboot

Vérification des modules web installés

Pour vérifier facilement les modules web installés, nous allons créer un  fichier php, que vous mettrez à la racine de votre serveur web.

Pour cela nous allons d'abord nous placer dans le dossier du serveur puis grâce à nano, l'éditeur de texte en ligne commande nous allons créer le fichier

cd /var/www/sudo nano phpinfo.php

Ecrivez dans le fichier :

<?php phpinfo(); ?>

Pour sauvegarder faites CTRL+O pour écrire le fichier sur le serveur, puis CTRL+X pour fermer nano.

Allez maintenant  avec votre navigateur : http://ip_du_serveur/phpinfo.php et vérifier que tout est bien installé, y compris PDO qui est le système de connexion aux bases de données sécurisé.

Installation d'un serveur mail

Si vous utilisez votre serveur pour héberger un site ou plusieurs, vous avez sans doute envie d'avoir des adresses emails moi@monsite.fr ? Nous allons créer l'adresse email suivante : lemon-cake@tuto-lamp.fr ainsi qu'un alias lemoncake@tuto-lamp.fr

Cette partie n'est très pas complexe d'autant que sur la plupart des serveurs web que vous achèterez chez un tiers,  ceci sera préinstallé. Mais il est bon de la connaitre au cas où ...

Pour se faire nous allons utiliser Postfix, qui est un serveur d'envoi (SMTP) libre. Son avantage est qu'il est plus sécurisé que Sendmail et supporte l'IPv6.

sudo apt-get install postfix

Sélectionnez "Pas de configuration". Nous ferons la configuration plus tard.

Nous allons maintenant installer un serveur IMAP qui lui est le serveur d'envoi :

sudo apt-get install dovecot-imapd

Paramétrage de Postfix

Le paramétrage est assez simple.

sudo dpkg-reconfigure postfix

Il va vous demander la configuration que vous souhaitez :

  • Type de serveur : Site Internet
  • Nom du courrier : tuto-lamp.fr
  • Destinataire des courriers de root (c'est à dire l'admin du serveur) : admin
  • Autres destinations : par défaut
  • Mises à jour synchronisées : non
  • Réseaux internes : par défaut
  • Taille max BAL : 0
  • Caractère d'extention : *
  • Protocoles : tous

Par défaut, Postfix va utiliser le format de stockage Mailbox qui va créer des répertoires correspondant aux boites mails dans /home/. Or, nous ne souhaitons pas utiliser ceci, nous allons donc lui dire d'utiliser Maildir

sudo nano /etc/postfix/main.cf

Tout en bas du fichier ajoutez la ligne :

home_mailbox = Maildir/

Pour appliquer les changements il faut redémarrer le service Postfix

sudo service postfix restart

Paramétrage du serveur IMAP

Par défaut lors de l'installation de Dovecot, IMAP + SSL et comme juste avant nous avons configuré Postfix avec Maildir, il faut lui indiquer de l'utiliser

sudo nano /etc/dovecot/conf.d/10-mail.conf

Et commentez/décommentez avec # (suivant les cas) la ligne suivante :

mail_location = maildir:~/Maildir

Et on relance le service pour appliquer les changements :

sudo service dovecot restart

Création de la boite emails

Lors de la configuration de Postfix, nous avions juste créé la boite mail de l'admin. Maintenant si nous voulons avoir notre propre adresse email il faut la créer.

Tout d'abord il faut créer le compte utilisateur :

sudo useradd -m lemon-cake
sudo passwd lemon-cake

Et comme des fois les gens ne savent pas écrire des adresses emails, je vous conseille de créer un alias. C'est une autre adresse email qui sera redirigé vers la bonne. Ainsi si la personne envoi un mail à lemoncake@tuto-lamp.fr, l'mail ira directement à lemon-cake@tuto-lamp.fr.

sudo nano /etc/aliases

Ajoutez en bas du fichier :

lemoncake: lemon-cake

La syntaxe est toujours utilisateurARediriger: utilisateurPrincipal

Il faut maintenant valider cet alias et recharger Postfix

sudo newaliases
sudo service postfix reload

Conclusion

Voilà la configuration de votre serveur est terminé. Vous pouvez maintenant vous connecter avec FileZilla et les identifiants de connexion PuTTY, en SFTP sur le port 22. Mettez les fichiers dans /var/www/

Si vous avez des soucis de droits d'accès à ce dossier faites :

sudo chown NOM_UTILISATEUR /var/www/

Pour ce qui est des adresses emails, vous avez juste paramétrer :

  • SMTP : smtp.tuto-lamp.fr
  • IMAP : imap.tuto-lamp.fr

Si vous avez besoin de plus d'options ou si vous ne voulez pas à chaque fois passez en ligne de commande pour créer des adresses emails, je vous conseil iRedMail qui est un autre serveur mail

<Laisser un commentaire/>

* Champs obligatoire