Introduzione
phpMyAdmin è uno strumento software utilizzato per la gestione di database MySQL tramite un'interfaccia grafica. Lo strumento può essere configurato per mantenere un database locale o un database remoto sulla rete.
Questo software può sostituire l'interfaccia della riga di comando predefinita utilizzata per la gestione del database.
In questo articolo imparerai come installare e proteggere phpMyAdmin su Debian 9.
Prerequisiti
- Stack LAMP (Linux, Apache, MySQL, PHP) installato e configurato sul server
- Accesso a un account utente con privilegi di root (possibilità di utilizzare il sudo comando)
- Un sistema operativo Debian 9, configurato per LAMP
- Lo stack dovrebbe includere un database, che ha già un utente root
- MySQL è una scelta comune, ma può funzionare anche MariaDB
- Accesso a un prompt dei comandi
Installazione di phpMyAdmin su Debian 9
Passaggio 1:Aggiorna l'ultima versione dei pacchetti software
Il pacchetto software per phpMyAdmin fa parte dei repository software predefiniti. Tuttavia, devi comunque assicurarti di ricevere l'ultima versione.
Aggiorna l'indice del repository e aggiorna i pacchetti con il seguente comando:
sudo apt update && sudo apt upgrade
Avviso: Non saltare questo passaggio! Alcune delle versioni precedenti di phpMyAdmin presentavano falle di sicurezza e potevano consentire a utenti non autorizzati di accedere al tuo database.
Fase 2:installa phpMyAdmin
Per installare phpMyAdmin, inserisci:
sudo apt install phpmyadmin
Il sistema esegue diversi passaggi automatizzati e ti chiede conferma. Immettere Y e attendere un minuto per completare. Al termine, viene caricata una schermata di configurazione.
Fase 3:Configura phpMyAdmin
1. Il primo prompt chiede di scegliere quale server Web riconfigurare automaticamente. Assicurati di apache2 è selezionato e fai clic su OK .
Lascia che la configurazione esegua il processo fino al passaggio successivo.
2. Nella schermata seguente, la procedura guidata chiede se si desidera configurare il database per phpmyadmin con dbconfig-common . Scegli Sì poiché in questa guida non tratteremo la configurazione avanzata.
3. Successivamente, inserisci una password per phpMyAdmin e confermala. Se non vuoi specificare la tua password, lascia lo spazio vuoto per generarne una automaticamente. Utilizzerai questa password in seguito per accedere a phpMyAdmin.
4. Alla fine, il programma di installazione richiede la password di root per il database. Fornisci la password e seleziona OK.
5. Conferma che phpMyAdmin sia installato e che contenga una configurazione. Vai al file di configurazione:
/etc/apache2/conf-enabled/phpmyadmin.conf
Se sei un utente avanzato e hai delle configurazioni personalizzate da aggiungere, puoi modificare questo file con il tuo editor di testo preferito per Linux.
Protezione di phpMyAdmin
L'alias è una riga nel file di configurazione che specifica l'indirizzo Web utilizzato per accedere all'applicazione. Pertanto, poiché molti hacker e bot prendono di mira la configurazione predefinita, è una buona idea cambiare l'alias.
1. Innanzitutto, apri il file di configurazione di phpmyadmin inserendo:
sudo vim /etc/apache2/conf-enabled/phpmyadmin.conf
2. Cerca la riga che dice:
Alias /phpmyadmin /usr/share/phpmyadmin
3. Contrassegna questa riga come commento aggiungendo un # firma all'inizio:
# Alias /phpmyadmin /usr/share/phpmyadmin
4. Quindi, digita una nuova riga sotto di essa e cambia l'alias, ad esempio:
Alias /phpmyadmin /usr/share/MySecretLogin
5. Salva il file ed esci.
Aggiorna i servizi Web Apache
Per aggiornare i servizi Web Apache, utilizzare il comando:
sudo service apache2 restart
Accedi a phpMyAdmin
Apri un browser web e inserisci l'indirizzo IP del tuo server, seguito dall'alias che hai configurato in precedenza.
http://IP_ADDRESS_or_DOMAIN/MySecretLogin
Se non hai modificato l'alias, l'URL predefinito è:
http://IP_ADDRESS_or_DOMAIN/phpmyadmin
La pagina web dovrebbe visualizzare una schermata di accesso per phpMyAdmin.
Inserisci il nome utente e la password per l'utente del tuo database e sarai in grado di gestire le utilità del database dall'interfaccia grafica.