Come installare e proteggere phpMyAdmin su Debian 9

Ci sono varie soluzioni che possiamo adottare per aumentare le possibilità di scalare i nostri server e le applicazioni che sono ospitate lì, concentrandoci sul miglioramento delle alternative per ogni utente nell'organizzazione.
All'interno di tutto questo mondo di applicazioni, abbiamo un segmento che si distingue ed è quello dei database, anche se oggi è normale utilizzare un sistema di gestione di database come MariaDB, molti utenti e programmatori non sono completamente a proprio agio con la sua interfaccia e quindi scegli di utilizzare un'altra delle applicazioni più popolari come phpMyAdmin.

Attraverso questo tutorial, Solvetic spiegherà come installare e proteggere l'installazione di phpMyAdmin in Debian 9 e ottenere così il massimo dalle sue funzionalità e allo stesso tempo proteggerne l'integrità da accessi non autorizzati.

Cos'è phpMyAdmin?phpMyAdmin è stato sviluppato come uno strumento software gratuito scritto in PHP e il cui scopo è aiutare a migliorare l'amministrazione di MySQL attraverso il Web.

phpMyAdmin è compatibile con varie operazioni in MySQL e MariaDB, in quest'area, tutte le operazioni di uso frequente come amministrazione di database, tabelle, colonne, relazioni, indici, utenti, permessi, possiamo eseguirle tramite l'interfaccia e allo stesso tempo sarà possibile utilizzare direttamente qualsiasi istruzione SQL.

CaratteristicheAlcune delle funzionalità che troviamo quando usiamo phpMyAdmin sono

  • Interfaccia web intuitiva
  • Supporta molte delle funzionalità di MySQL come l'esplorazione e l'eliminazione di database, tabelle, viste, campi e indici, creazione, copia, ridenominazione e modifica di database, tabelle, campi e indici, esecuzione di attività del server di manutenzione, database, tabelle e altro.
  • Possiamo eseguire, modificare e contrassegnare qualsiasi istruzione SQL, comprese le query batch
  • Semplifica la gestione degli account utente e dei privilegi di MySQL
  • Gestisci stored procedure e trigger
  • Esegue ricerche globali su un database o un sottoinsieme di questi
  • Puoi creare grafici di database in vari formati
  • Sei in grado di creare query complesse utilizzando Query-by-example (QBE)
  • Può trasformare i dati archiviati in qualsiasi formato in base a un insieme di funzioni predefinite
  • Può gestire più server
  • phpMyAdmin può esportare dati in vari formati come CSV, SQL, XML, PDF, ISO / IEC 26300 - OpenDocument Text and Spreadsheet, Word, LATEX e altro
  • Può importare dati da CSV e SQL

Requisiti precedentiPrima di sapere come installare e proteggere phpMyAdmin dobbiamo soddisfare i seguenti requisiti:

Avere l'installazione LAMP (Linux, Apache, MariaDB e PHP) sul server Debian 9, per guidarci in questo processo possiamo visitare il seguente link:

Oltre a questo, dobbiamo avere un firewall configurato con ufw.

Come aggiornare il sistemaIl primo passo da compiere è aggiornare i pacchetti Debian 9, per questo eseguiamo il seguente comando:

 aggiornamento appropriato

1. Come installare phpMyAdmin Debian 9

Passo 1
Una volta aggiornato il sistema, procediamo all'installazione di PHP insieme ad alcune dipendenze eseguendo il seguente comando:

 apt install phpmyadmin php-mbstring php-gettext

Passo 2
Lì inseriremo la lettera S per confermare il download e l'installazione di PHP e durante questo processo verrà visualizzato quanto segue:

Passaggio 3
Lì selezioniamo apache2 come server web, per questa selezione premiamo il tasto Space e con il tasto Tab selezioniamo OK, premiamo Invio per continuare con il processo di installazione:

Passaggio 4
Successivamente dobbiamo definire la password dell'applicazione MySQL:

Passaggio 5
Premiamo Invio e dobbiamo confermarlo:

Passaggio 6
Quindi confermeremo la password dell'utente root per il database. Questo completa il processo di installazione di phpMyAdmin.

Il processo di installazione si occupa di aggiungere il file di configurazione di phpMyAdmin Apache nella directory /etc/apache2/conf-enabled/, che viene letto automaticamente.

Passaggio 7
Ora dobbiamo abilitare esplicitamente l'estensione PHP mbstring che viene utilizzata per gestire stringhe non ASCII e convertire le stringhe in codifiche diverse, lo facciamo eseguendo quanto segue:

 phpenmod mbstring
Infine, riavviamo il servizio per applicare le modifiche:
 systemctl riavvia apache2

2. Come configurare utenti e privilegi di phpMyAdmin Debian 9


Durante l'installazione di phpMyAdmin sul server, è stato creato automaticamente un utente del database chiamato phpmyadmin che può eseguire determinati processi sottostanti per il programma, per motivi di sicurezza è l'ideale, invece di accedere con questo utente e la password amministrativa che è stata impostata durante l'installazione, firmare con un altro account.

Nelle nuove installazioni su sistemi Debian 9, l'utente root di MariaDB è configurato per l'autenticazione utilizzando il plugin unix_socket per impostazione predefinita invece che con una password, poiché phpMyAdmin richiede agli utenti di autenticarsi con una password, sarà necessario creare un nuovo account MariaDB per accedere al interfaccia web dell'applicazione.

Passo 1
Possiamo controllare l'accesso a phpMyAdmin eseguendo la seguente sintassi in un browser web:

 https: // Server_IP / phpmyadmin

Passo 2
Lì entriamo con l'utente standard e avremo accesso alla piattaforma phpMyAdmin. Possiamo creare un nuovo utente per phpMyAdmin inserendo la seguente riga nel terminale Debian 9:

 mariadb
Passaggio 3
In caso di autenticazione della password attiva, eseguiremo il seguente comando per ottenere i privilegi di amministratore all'interno del database:
 mariadb -u utente -p
Nella console del database inseriremo quanto segue:

Passaggio 4
Creeremo l'utente e assegneremo la password desiderata:

 CREATE USER 'user @' localhost 'IDENTIFICATO DA' password ';
Ora, concediamo al nuovo utente i privilegi corretti:
 CONCEDERE TUTTI I PRIVILEGI SU *.* A 'user' @ 'localhost' CON L'OPZIONE DI CONCESSIONE;
Lasciamo il database:
 Uscita

Passaggio 5
Ora possiamo accedere a phpMyAdmin con il nuovo utente creato:

Passaggio 6
Fare clic su Continua e questo sarà l'ambiente phpMyAdmin:

INGRANDIRE

Fino a questo punto avremo accesso alla piattaforma phpMyAdmin e il suo ambiente peggiore è ancora insicuro.

3. Come proteggere l'istanza di phpMyAdmin


phpMyAdmin è diventato un obiettivo tradizionale e frequente per gli aggressori grazie alla sua facilità di accesso, per evitare ciò, possiamo implementare un gateway per l'applicazione che utilizzerà le funzionalità di autenticazione e autorizzazione integrate .htaccess di Apache

Passo 1
Per fare ciò, abiliteremo l'uso delle sostituzioni del file .htaccess modificando il file di configurazione di Apache tramite la riga seguente:

 sudo nano /etc/apache2/conf-available/phpmyadmin.conf

Passo 2
Lì inseriremo la seguente riga nella sezione:

 ConsentiIgnora tutto

Passaggio 3
Salviamo le modifiche utilizzando la combinazione di tasti Ctrl + O ed usciamo dall'editor utilizzando i tasti Ctrl + X.
Fatto ciò, riavviamo il server Apache eseguendo il comando:

 systemctl riavvia apache2
Passaggio 4
Abbiamo abilitato l'uso di .htaccess per l'applicazione phpMyAdmin, ora creeremo un utente per implementare la sicurezza generale dell'ambiente, questo file deve essere creato all'interno della directory dell'applicazione, per questo creeremo il file e aprirlo con l'editor desiderato come segue:
 sudo nano /usr/share/phpmyadmin/.htaccess
Nel nuovo file incolleremo quanto segue:
 AuthType Basic AuthName "File limitati" AuthUserFile /etc/phpmyadmin/.htpasswd Richiedi valida-user

Passaggio 5
Salviamo le modifiche con la combinazione di tasti Ctrl + O ed usciamo dall'editor utilizzando i tasti Ctrl + X.

Le righe che abbiamo inserito rappresentano:

AuthType di baseSpecifica il tipo di autenticazione che stiamo implementando, questo tipo di parametro implementerà l'autenticazione della password utilizzando un file di password.

NomeAutQuesta riga stabilisce il messaggio per la finestra di dialogo di autenticazione che verrà visualizzata, è ideale mantenere questo modulo generico in modo che gli utenti non autorizzati non abbiano accesso a nessuna informazione dei dati protetti.

AuthUserFileQuesta riga imposta la posizione del file di password che verrà utilizzato per l'autenticazione.

Richiedi valida-utenteQuesta opzione specifica che solo gli utenti autenticati possono accedere a questa risorsa, impedendo così l'accesso non autorizzato.

La posizione che abbiamo selezionato per il file della password è /etc/phpmyadmin/.htpasswd, creeremo questo file e lo assegneremo a un utente iniziale utilizzando l'utility htpasswd:

 htpasswd -c /etc/phpmyadmin/.htpasswd "utente"

Passaggio 6
Inseriamo la password desiderata e in questo modo questo nuovo utente avrà accesso sicuro a phpMyAdmin. Ora, quando proveremo ad accedere nuovamente a phpMyAdmin tramite il browser, verrà visualizzata la seguente finestra pop-up:

Passaggio 7
Lì inseriamo le credenziali dell'utente che abbiamo creato e facendo clic sul pulsante Accedi saremo nell'ambiente phpMyAdmin:

INGRANDIRE

In questo modo abbiamo imparato a installare e proteggere phpMyAdmin su Debian 9.

wave wave wave wave wave