relecture

This commit is contained in:
gcolpart 2017-09-06 19:09:15 +02:00
parent 50a8b56de3
commit bae238fe38

View file

@ -4,32 +4,43 @@
# apt install phpmyadmin # apt install phpmyadmin
~~~ ~~~
Si l'on utilise phpMyAdmin avec Apache cela va ajouter le fichier /etc/apache2/conf-enabled/phpmyadmin.conf (sous Debian 7: /etc/apache2/conf.d/phpmyadmin.conf) qui configure un _Alias /phpmyadmin_ accessible de n'importe quel site sur le serveur... on préfèrera restreindre phpMyAdmin à un VirtualHost précis, avec un _Alias_ non standard (exemple _/pma-42_) et si possible restreint par IP : Pour empêcher un accès trop simple, on va désactiver la configuration globale :
~~~ ~~~
# a2disconf phpmyadmin # a2disconf phpmyadmin
Conf phpmyadmin disabled. Conf phpmyadmin disabled.
To activate the new configuration, you need to run: To activate the new configuration, you need to run:
service apache2 reload service apache2 reload
# sed -i s/^Alias/#Alias/ /etc/apache2/conf-available/phpmyadmin.conf
~~~ ~~~
en ajoutant dans le VirtualHost approprié : > Note : Pour Debian 7, `a2disconf` n'existe pas, il faut supprimer le lien symbolique `/etc/apache2/conf.d/phpmyadmin.conf`
On pourra ensuite ajouter la configuration phpMyAdmin au sein d'un VirtualHost précis, et notre astuce est de renvoyer `Alias /phpmyadmin vers un chemin standard (pour prendre le pas sur la configuration standard) et d'utiliser un _Alias_ non standard (exemple _/pma-42_). On pourra aussi ajouter en plus une restriction par IP :
~~~ ~~~
Alias /phpmyadmin /var/www
Alias /pma-42 /usr/share/phpmyadmin/ Alias /pma-42 /usr/share/phpmyadmin/
Include /etc/apache2/conf-available/phpmyadmin.conf Include /etc/phpmyadmin/apache.conf
<Directory /usr/share/phpmyadmin/> <Directory /usr/share/phpmyadmin/>
Deny from all Require all denied
Allow from 192.0.2.42 Require ip 192.0.2.42
Allow from 2001:db8::42 Require ip 2001:db8::42
</Directory> </Directory>
~~~ ~~~
Note : dans tous les cas, on veillera à bien conserver la plupart des instructions du fichier /etc/apache2/conf-available/phpmyadmin.conf qui sont importantes pour la sécurité. Note : on veille à ne pas toucher au fichier `/etc/phpmyadmin/apache.conf` qui contient des instructions importantes pour la sécurité. Le garder intact facilite aussi les futures mises à jour du package.
## Configuration ## Configuration
Par défaut nous n'utilisons pas de configuration avancée, on s'assure donc de désactiver les directives pour s'appuyer sur une base de données :
~~~
# rm /etc/phpmyadmin/config-db.php
~~~
### Configuration avancée
Il est préférable de modifier la configuration via l'interface web en ajoutant /setup/ à l'URL de phpMyAdmin Il est préférable de modifier la configuration via l'interface web en ajoutant /setup/ à l'URL de phpMyAdmin
Cela va demander un identifiant que l'on pourra configurer via /etc/phpmyadmin/htpasswd.setup Cela va demander un identifiant que l'on pourra configurer via /etc/phpmyadmin/htpasswd.setup
@ -52,7 +63,7 @@ Securing phpMyAdmin installation...
Setup script won't be able to write configuration. Setup script won't be able to write configuration.
~~~ ~~~
## Utilisation derrière un reverse-proxy ### Configuration pour utilisation derrière un reverse-proxy
Si l'on utilise phpMyAdmin derrière un reverse-proxy, il faudra probablement forcer la variable de configuration PmaAbsoluteUri Si l'on utilise phpMyAdmin derrière un reverse-proxy, il faudra probablement forcer la variable de configuration PmaAbsoluteUri
Par exemple si le serveur HTTP "caché" tourne sur le port TCP/8080, mais que celui-ci n'est pas accessible directement, on devra forcer Par exemple si le serveur HTTP "caché" tourne sur le port TCP/8080, mais que celui-ci n'est pas accessible directement, on devra forcer
@ -78,7 +89,7 @@ $cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['compress'] = false; $cfg['Servers'][$i]['compress'] = false;
~~~ ~~~
## Support ## FAQ
Lors upload d'un fichier (pour import par ex) : Lors upload d'un fichier (pour import par ex) :
` Le fichier ne peut être lu.` ` Le fichier ne peut être lu.`