XAMPP nuovo concetto di sicurezza ed errore “403 accesso proibito”

La premessa

Hai appena installato l’ambiente XAMPP sul tuo server Linux Ubuntu e ti accingi ad accedere al database MySQL tramite l’applicazione web phpmyadmin.

Ci sono due scenari possibili:

  • hai installato l’Ubuntu Desktop e quindi hai a disposizione un ambiente grafico. In questo caso è sufficiente avviare Firefox, inserire http://localhost/phpmyadmin nella barra degli indirizzi e premere invio.
    Come risultato si otterrà la pagina principale di phpmyadmin, come atteso.
  • hai installato XAMPP su Ubuntu Server e non hai un ambiente grafico. “Poco male -pensi- accederò a phpmyadmin dal  mio computer client inserendo nella barra degli indirizzi l’IP del mio server Linux”. Apri un browser sul tuo computer e (ammettendo che nella rete locale il server abbia IP: 192.168.1.10) inserisci l’indirizzo: http://192.168.1.10/phpmyadmin
    E qui nasce il problema.

Il problema

Nel secondo caso, se hai installato la versione XAMPP 1.4.3 o superiore, otterrai un errore 403:

Print screen dell'errore 403 ottenuto cercando di accedere a phpmyadmin da remoto
Print screen dell’errore 403 ottenuto cercando di accedere a phpmyadmin da remoto

Il nuovo concetto di sicurezza di XAMPP prevede infatti che, di default, phpmyadmin possa essere avviato solo da locale.

La soluzione

Per ovviare al problema, pur senza dare accesso pubblico a phpmyadmin, è possibile configurare XAMPP affinché si possa accedere a phpmyadmin da indirizzi IP specifici, e in particolar modo dal computer client del secondo scenario. Ecco come procedere.

  1. aprire un Terminale (o una sessione SSH da remoto, se il servizio è attivo) e spostarsi sulla directory /opt/lampp/etc/extra:
    cd /opt/lampp/etc/extra
  2. fare una copia di backup del file httpd-xampp.conf:
    sudo cp httpd-xampp.conf httpd-xampp.conf.bak
  3. aprire il file httpd-xampp.conf con un editor di testo (ad esempio vi), cercare la sezione <Directory "/opt/lampp/phpmyadmin"> e inserire una istruzione Require ip 192.168.1.3 (192.168.1.3 rappresenta l’indirizzo IP del computer client da cui si vuole accedere a phpmyadmin), quindi salvare le modifiche:
    sudo vi httpd-xampp.conf

    nell’editor vi usare i seguenti comandi (rispettare le maiuscole):
    /phpmyadmin per trovare la sezione relativa a phpmyadmin
    /Require   per posizionarsi sulla prima istruzione Require
    o    per creare una riga vuota al di sotto di quella corrente
        Require ip 192.168.1.3 per abilitare il computer client
    premere ESC per uscire dalla modalità edit di vi
    :wq   per uscire salvando le modifiche

  4. riavviare il server apache:
    sudo /opt/lampp/lampp stopapache
    sudo /opt/lampp/lampp startapache

A questo punto è possibile accedere a phpmyadmin da remoto, ma unicamente dal computer con indirizzo IP 192.168.1.3.

Link utili

Come attivare il servizio SSH su Linux Ubuntu (in lingua inglese)

Gestire XAMPP su Ubuntu tramite i comandi di linea (in lingua inglese)

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *