1. Installer les paquets LAMP 2. Configurer Apache 3. Configurer

Transcription

1. Installer les paquets LAMP 2. Configurer Apache 3. Configurer
LAMP ~ Installer et paramétrer un serveur web sous linux
Un grand classique dans le monde unix : un serveur web LAMP (Linux Apache Mysql PHP). Il est
très facile de l’installer, et cela fonctionne avec un minimum de configuration, toutefois, par mesure
de sécurité, il est recommandé de changer certains paramètres. Voici la marche à suivre sous un
système ubuntu/debian.
1.
Installer les paquets LAMP
Pour installer les paquets nécessaires au serveur LAMP depuis vos dépôts, un simple apt-get
suffit.
apt-get install -y apache2 mysql-server php5 php5-gd php5mysql
Il faudra indiquer un mot de passe pour le compte root de mysql.
2.
Configurer Apache
Il faut préciser que le serveur apache est bien sur la même machine :
echo ServerName 127.0.0.1 >> /etc/apache2/apache2.conf &&
/etc/init.d/apache2 reload
3.
Configurer Mysql
Par mesure de sécurité, et pour empêcher les tentatives d’intrusions par le root, on va
remplacer le compte par celui d’un nouvel utilisateur (changer ‘adminsql’ et ‘mdpsql’ par les
valeurs souhaitées)
mysql -u root -p
GRANT ALL PRIVILEGES ON *.* TO adminsql@'%' IDENTIFIED BY 'm
dpsql' WITH GRANT OPTION;
DELETE FROM mysql.user WHERE user = 'root';
FLUSH PRIVILEGES;
quit;
Avant de quitter, nous pouvons vérifier que les modifications ont bien été prises en compte par
la requête :
SELECT user,host FROM mysql.user;
4.
Installer Phpmyadmin
Pour ceux qui souhaitent avoir une visualisation graphique de leur BDD, il est possible
d’installer phpmyadmin via apt-get. apt-get install -y phpmyadmin
L’installateur pose alors quelques questions. Choisir Apache2 en serveur web, configurer la
base avec dbconfig-common, et ne pas renseigner le mot de passe administrateur. Enfin,
Ignorer l’étape lorsque l’installateur annonce qu’une erreur s’est produite lors de l’installation
de la base de données.
Par défaut, il cherche à utiliser le compte root de mysql déjà supprimé, il s’agit donc de
relancer la configuration de phpmyadmin qui propose de renseigner davantage d’informations.
dpkg-reconfigure phpmyadmin
Faut-il réinstaller la base de données pour phpmyadmin ? oui
Méthode de connexion pour la base de données MySQL de phpmya
dmin: TCP/IP
Nom d'hôte du serveur MySQL pour phpmyadmin : => 127.0.0.1
Numéro de port pour le service MySQL : => 3306
Nom de l'administrateur de la base de données : => adminsql
Mot de passe de l'administrateur de la base de données : =>
mdpsql
Identifiant MySQL pour phpmyadmin : => phpmyadmin
Nom de la base de données MySQL pour phpmyadmin : => phpmyad
min
Serveur web à reconfigurer automatiquement : => apache2
Puis, il faut éditer le fichier le configuration et changer ces 2 lignes pour lui indiquer le
controluser :
/etc/phpmyadmin/config.inc.php
$cfg['Servers'][$i]['controluser'] = 'adminsql';
$cfg['Servers'][$i]['controlpass'] = 'mdpsql';
Par défaut, phpmyadmin est accessible à l’urlwww.monsite.fr/phpmyadmin. Il est fortement
conseillé de changer le chemin d’accès (par exemplehttp://www.monsite.fr/pma)
Pour cela, il faut éditer le vhost en changeant la 1ère ligne Alias.
/etc/phpmyadmin/apache.conf
Alias /pma /usr/share/phpmyadmin
5.
Paramétrer un nouveau site
Nous allons créer un nouveau site sur notre serveur LAMP, par défaut ils sont dans /var/www/ mais
tout autre répertoire peut être utilisé, selon les permissions unix.
mkdir /var/www/monsite && echo '<?php phpinfo(); ?>' >
/var/www/monsite/index.php
Puis créer le vhost apache, en copiant le contenu suivant :
/etc/apache2/sites-available/monsite
<VirtualHost *:80>
ServerName www.monsite.fr
DocumentRoot /var/www/monsite
CustomLog /var/log/apache2/monsite.log combined
ErrorLog /var/log/apache2/monsite-err.log
LogLevel warn
<Directory />
Order Allow,Deny
Allow from all
Options +Indexes -ExecCGI +FollowSymLinks
AllowOverride All
</Directory>
</VirtualHost>
Puis l’activer et relancer Apache.
a2ensite monsite && service apache2 reload
Voila, votre serveur LAMP est configuré, vous pouvez vous rendre sur votre site pour vérifier que
tout fonctionne.