Ricerca nel sito web

Come aggiungere un ulteriore livello di sicurezza all'interfaccia di accesso PhpMyAdmin


MySQL è il sistema di gestione di database open source più utilizzato al mondo nell'ecosistema Linux e allo stesso tempo i principianti di Linux trovano difficile gestirlo dal prompt di MySQL.

È stato creato PhpMyAdmin, un'applicazione di gestione del database MySQL basata sul web, che fornisce un modo semplice per i principianti di Linux di interagire con MySQL attraverso un'interfaccia web. In questo articolo, condivideremo come proteggere l'interfaccia phpMyAdmin con la protezione tramite password sui sistemi Linux.

Prima di proseguire con questo articolo, presupponiamo che tu abbia completato un'installazione LAMP (Linux, Apache, MySQL/MariaDB e PHP) e PhpMyAdmin sul tuo server Linux. In caso contrario, puoi seguire le nostre guide seguenti per installare lo stack LAMP sulle rispettive distribuzioni.

  1. Installa LAMP e PhpMyAdmin in Cent/RHEL 7
  2. Installa LAMP e PhpMyAdmin in Ubuntu 16.04
  3. Installa LAMP e PhpMyAdmin in Fedora 22-24

Se desideri installare l'ultima versione di PhpMyAdmin, puoi seguire questa guida sull'installazione dell'ultima versione di PhpMyAdmin su sistemi Linux.

Una volta terminati tutti i passaggi precedenti, sei pronto per iniziare con questo articolo.

Semplicemente aggiungendo le seguenti righe a /etc/apache2/sites-available/000-default.conf in Debian o /etc/httpd/conf/httpd. conf in CentOS richiederà l'autenticazione di base DOPO aver confermato l'eccezione di sicurezza ma PRIMA di accedere alla pagina di accesso.

Pertanto, aggiungeremo un ulteriore livello di sicurezza, anch'esso protetto dal certificato.

Lettura consigliata: configura HTTPS (certificati SSL) per proteggere PhpMyAdmin

Aggiungi queste righe al file di configurazione di Apache (/etc/apache2/sites-available/000-default.conf o /etc/httpd/conf/httpd.conf):


<Directory /usr/share/phpmyadmin>
    AuthType Basic
    AuthName "Restricted Content"
    AuthUserFile /etc/apache2/.htpasswd
    Require valid-user
</Directory>
 
<Directory /usr/share/phpmyadmin>
    AuthType Basic
    AuthName "Restricted Content"
    AuthUserFile /etc/httpd/.htpasswd
    Require valid-user
</Directory>

Quindi utilizza htpasswd per generare un file di password per un account che sarà autorizzato ad accedere alla pagina di accesso di phpmyadmin. In questo caso utilizzeremo /etc/apache2/.htpasswd e tecmint:


---------- On Ubuntu/Debian Systems ---------- 
htpasswd -c /etc/apache2/.htpasswd tecmint

---------- On CentOS/RHEL Systems ---------- 
htpasswd -c /etc/httpd/.htpasswd tecmint

Inserisci due volte la password, quindi modifica le autorizzazioni e la proprietà del file. Questo per impedire a chiunque non sia nel gruppo www-data o apache di poter leggere .htpasswd:


chmod 640 /etc/apache2/.htpasswd

---------- On Ubuntu/Debian Systems ---------- 
chgrp www-data /etc/apache2/.htpasswd 

---------- On CentOS/RHEL Systems ---------- 
chgrp apache /etc/httpd/.htpasswd 

Vai su http:///phpmyadmin e vedrai la finestra di dialogo di autenticazione prima di accedere alla pagina di accesso.

Lettura consigliata: modifica e proteggi l'URL di accesso PhpMyAdmin predefinito

Dovrai inserire le credenziali di un account valido in /etc/apache2/.htpasswd o /etc/httpd/.htpasswd per procedere:

Se l'autenticazione ha esito positivo, verrai indirizzato alla pagina di accesso di phpmyadmin.