Académique Documents
Professionnel Documents
Culture Documents
Préambule
Les indications ci-dessous sont destinées à une installation des services web sur un serveur
possédant le système d’exploitation Debian 11.
Il s’agit ici de mettre en place un serveur Web dit "LAMP" afin de pouvoir héberger un site Internet
(WordPress, Joomla, Drupal, ou de développement personnel, etc...) ou encore une application de
type web (les exemples peuvent être nombreux).
Procédure d’installation
Vous trouverez ci-dessous l’ensemble des commandes nécessaire.
Elles sont identifiées en bleu et en italique, avec un caractère de type courrier.
Vous devez ouvrir une session sur votre serveur Debian en utilisant l’une des deux possibilités :
• la console du serveur
• une console distante avec le protocole SSH.
Vous obtiendrez un mot de passe assez fort sous cette forme qu’il faut noter avec attention,
ou copier pour le réutiliser dans la configuration : pau9t1SG6lmaeCFxKqeeaY5N4erIa25K
Nous allons maintenant éditer le fichier de configuration
nano /usr/share/phpMyAdmin/config.inc.php
Après avoir fait les modifications ci-dessus, ajoutez cette ligne dans le fichier (juste après la
ligne « $cfg[‘Servers’]… » :
Enfin accordons tous les droits à l’utilisateur défini plus haut (dans le fichier de
configuration) sur la base de données « phpmyadmin »
ATTENTION : cette ligne de commande est une ligne « unique » (pas de coupure ou saut de ligne)
GRANT SELECT, INSERT, UPDATE, DELETE ON phpmyadmin.* TO
'pma'@'localhost' IDENTIFIED BY 'password';
Bien entendu, il faut adapter « pma » et « password » aux infos insérées dans le fichier de
configuration (informations modifiées dans le fichier « config.inc.php ».
Il est temps de créer un administrateur, par exemple « adminbdd »
CREATE USER adminbdd;
Pour simplifier, nous lui donnerons tous les droits sur toutes les bases de données.
Bien sûr ces droits peuvent être plus restrictifs.
ATTENTION : cette ligne de commande est une ligne « unique » (pas de coupure ou saut de ligne)
GRANT ALL PRIVILEGES ON *.* TO 'adminbdd'@'localhost'
IDENTIFIED BY 'password' WITH GRANT OPTION;
Remarque : cet utilisateur ne pourra se connecter QUE localement. En effet le paramètre
indiqué après le signe « @ » est « localhost » (le serveur local).
Cette information pourra être remplacée par l’IP du réseau depuis lequel cet utilisateur
pourra se connecter (par exemple : 192.168.75.0) ou de façon encore plus restrictive une
adresse IP précise (par exemple : 192.168.75.60).
Au contraire, on pourra permettre la connexion depuis n’importe quel réseau en remplaçant
cette information par « % ».
Pour terminer, il est important de demander au moteur MariaDB de recharger les droits
appelés aussi privilèges
FLUSH PRIVILEGES;
Vous devez ensuite ajouter ces lignes dans le fichier ouvert dans l’éditeur Nano
Pour réaliser cette opération, si vous utilisez une console distante (via SSH), il suffira de faire
un copier-coller. Si vous êtes dans la console du serveur, il faudra saisir l’intégralité.
Si vous savez utiliser un système de transfert de fichier (via SSH avec SFTP), alors vous
pouvez créer le fichier localement, insérer dedans les lignes indiquées, puis transférer ce
fichier sur le serveur, dans le dossier : /etc/apache2/conf-available/
Pour permettre un copier-coller sans erreur, le contenu du fichier a été placé à la fin de ce
document dans son intégralité.
N’oubliez pas d’enregistrer les modifications en fermant le fichier si vous l’avez créé avec
Nano.
Pour s’assurer que le serveur Apache fonctionne bien, demandons au serveur Debian
d’afficher l’état du service web
systemctl status apache2
Vous pouvez vérifier maintenant si l’accès à l’interface web d’administration est fonctionnel.
Pour cela, il suffit d’utiliser l’URL suivante depuis un navigateur installé sur votre PC (ou un
autre client connecté au même réseau que le serveur Debian) :
http://IP-Debian/phpmyadmin (remplacer IP-Debian par l’adresse IPv4)
En remplissant les zones de saisie avec les bonnes informations, vous devriez accéder à
l’interface web de phpmyadmin comme l’exemple ci-dessous.
Remarque :
Si vous souhaitez aller encore plus loin en termes de sécurité, il est possible d’utiliser le
mode d’authentification de type .htaccess.
Si ce sujet vous intéresse, n’hésitez pas à consulter les informations sur ce sujet.
<Directory /usr/share/phpMyAdmin>
Options SymLinksIfOwnerMatch
DirectoryIndex index.php
<IfModule mod_php5.c>
<IfModule mod_mime.c>
AddType application/x-httpd-php .php
</IfModule>
<FilesMatch ".+\.php$">
SetHandler application/x-httpd-php
</FilesMatch>
php_value include_path .
php_admin_value upload_tmp_dir /var/lib/phpMyAdmin/tmp
php_admin_value open_basedir
/usr/share/phpMyAdmin/:/etc/phpMyAdmin/:/var/lib/phpMyAdmin/:/usr/share/php/php-
gettext/:/usr/share/php/php-php-
gettext/:/usr/share/javascript/:/usr/share/php/tcpdf/:/usr/share/doc/phpMyAdmin/:/u
sr/share/php/phpseclib/
php_admin_value mbstring.func_overload 0
</IfModule>
<IfModule mod_php.c>
<IfModule mod_mime.c>
AddType application/x-httpd-php .php
</IfModule>
<FilesMatch ".+\.php$">
SetHandler application/x-httpd-php
</FilesMatch>
php_value include_path .
php_admin_value upload_tmp_dir /var/lib/phpMyAdmin/tmp
php_admin_value open_basedir
/usr/share/phpMyAdmin/:/etc/phpMyAdmin/:/var/lib/phpMyAdmin/:/usr/share/php/php-
gettext/:/usr/share/php/php-php-
gettext/:/usr/share/javascript/:/usr/share/php/tcpdf/:/usr/share/doc/phpMyAdmin/:/u
sr/share/php/phpseclib/
php_admin_value mbstring.func_overload 0
</IfModule>
</Directory>