GNU/Linux >> Linux Esercitazione >  >> Debian

Come installare e proteggere phpMyAdmin con Apache su Debian 9

phpMyAdmin è un'applicazione basata su PHP gratuita e open source progettata per semplificare l'amministrazione dei server MySQL e MariaDB su un'interfaccia basata sul Web.

phpMyAdmin ti consente di gestire database MySQL, account utente e privilegi, eseguire istruzioni SQL, importare ed esportare dati in un'ampia varietà di formati di dati e molto altro.

Questo tutorial descrive i passaggi necessari per installare e proteggere phpMyAdmin su Debian 9 con il server web Apache.

Prerequisiti #

Assicurati di aver soddisfatto i seguenti requisiti prima di procedere con questo tutorial:

  • Avere LAMP (Linux, Apache, MySQL e PHP) installato sul tuo server Debian.
  • Acceduto come utente con privilegi sudo.

Sebbene sia opzionale, si consiglia di accedere all'installazione di phpMyAdmin tramite HTTPS. Se il tuo dominio non è già protetto da un SSL puoi seguire questa guida e proteggere il tuo Apache con Let's Encrypt su Debian 9.

Installazione di phpMyAdmin #

Eseguire i seguenti passaggi per installare phpMyAdmin su Debian 9:

  1. Aggiorna l'indice del pacchetto e aggiorna i pacchetti di sistema alle versioni più recenti:

    sudo apt update && sudo apt upgrade
  2. Installa il pacchetto phpMyAdmin dai repository Debian predefiniti digitando:

    sudo apt install phpmyadmin

    Il programma di installazione ti chiederà di scegliere il server web che dovrebbe essere configurato automaticamente per eseguire phpMyAdmin, scegli apache premendo Space e poi Enter .

    Successivamente, ti verrà chiesto se utilizzare dbconfig-common per configurare il database, selezionare Yes e premi Enter .

    Inserisci una password per phpMyAdmin per registrarsi al database, seleziona OK e premi Enter .

    Conferma la password, seleziona OK e premi Enter .

  3. Al termine del processo di installazione, riavvia Apache per rendere effettive le modifiche:

    sudo systemctl restart apache2

Creazione di un utente MySQL amministrativo #

Nei sistemi Debian che eseguono MariaDB 10.1 (e versioni successive), l'utente root è impostato per utilizzare auth_socket metodo di autenticazione predefinito.

Il auth_socket plugin autentica gli utenti che si connettono da localhost tramite il file socket Unix. Ciò significa che non puoi autenticarti come root fornendo una password.

Invece di modificare il metodo di autenticazione per l'utente root MySQL, creeremo un nuovo utente MySQL amministrativo. Questo utente avrà gli stessi privilegi dell'utente root e sarà impostato per utilizzare il mysql_native_password metodo di autenticazione.

Utilizzeremo questo utente per accedere alla dashboard di phpMyAdmin ed eseguire attività amministrative sul nostro server MySQL o MariaDB.

Inizia accedendo al server MySQL come utente root:

sudo mysql

Dall'interno della shell MySQL, esegui i seguenti comandi che creeranno un nuovo utente amministrativo e garantiranno le autorizzazioni appropriate:

CREATE USER 'padmin'@'localhost' IDENTIFIED BY 'super-strong-password';GRANT ALL PRIVILEGES ON *.* TO 'padmin'@'localhost' WITH GRANT OPTION;
Abbiamo chiamato l'utente amministrativo padmin . Puoi usare qualsiasi nome tu voglia, assicurati solo di impostare una password complessa.

Accesso a phpMyAdmin #

Per accedere all'interfaccia di phpMyAdmin apri il tuo browser preferito e digita il nome di dominio del tuo server o l'indirizzo IP pubblico seguito da /phpmyadmin :

https://your_domain_or_ip_address/phpmyadmin

Inserisci le credenziali di accesso dell'utente amministrativo che hai creato in precedenza e fai clic su Go .

Una volta effettuato l'accesso, vedrai la dashboard di phpMyAdmin, che avrà un aspetto simile a questo:

Protezione di phpMyAdmin #

Per aggiungere un ulteriore livello di sicurezza, proteggeremo con password la directory phpMyAdmin impostando un'autenticazione di base.

Per prima cosa creeremo un file di password con gli utenti usando htpasswd strumento fornito con il pacchetto Apache. Conserveremo il .htpasswd file in /etc/phpmyadmin directory:

sudo htpasswd -c /etc/phpmyadmin/.htpasswd padmin

In questo esempio stiamo creando un utente chiamato padmin . Puoi scegliere qualsiasi nome utente, non deve essere lo stesso dell'utente MySQL amministrativo.

Il comando sopra ti chiederà di inserire e confermare la password dell'utente.

New password:
Re-type new password:
Adding password for user padmin

Se vuoi aggiungere un altro utente, puoi usare lo stesso comando senza il -c bandiera:

sudo htpasswd /etc/phpmyadmin/.htpasswd padmin2

Il passaggio successivo è configurare Apache per proteggere con password la directory phpMyAdmin e utilizzare il .htpasswd file.

Per farlo, apri il phpmyadmin.conf file che è stato creato automaticamente durante l'installazione di phpMyAdmin:

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

E modifica/inserisci le seguenti righe evidenziate in giallo:

/etc/apache2/conf-available/phpmyadmin.conf
<Directory /usr/share/phpmyadmin>
    Options  +FollowSymLinks +Multiviews +Indexes  # edit this line
    DirectoryIndex index.php

    AllowOverride None
    AuthType basic
    AuthName "Authentication Required"
    AuthUserFile /etc/phpmyadmin/.htpasswd
    Require valid-user

    <IfModule mod_php5.c>
    ...

Salva e chiudi il file e riavvia Apache per rendere effettive le modifiche:

sudo systemctl restart apache2

Ora, quando accedi al tuo phpMyAdmin, ti verrà chiesto di inserire le credenziali di accesso dell'utente che hai creato in precedenza:

https://your_domain_or_ip_address/phpmyadmin

Dopo aver inserito l'autenticazione di base, verrai indirizzato alla pagina di accesso di phpMyAdmin dove devi inserire le credenziali di accesso dell'utente amministrativo MySQL.

È anche una buona idea cambiare il /phpmyadmin alias a qualcosa di più unico e sicuro.
Debian
  1. Come installare e proteggere phpMyAdmin su Debian 9

  2. Come installare e proteggere phpMyAdmin con Apache su Ubuntu 18.04

  3. Come installare e proteggere MongoDB su Debian 11

  4. Come installare e proteggere MariaDB su Debian 11

  5. Installa phpMyAdmin su Debian 11 con Apache

Come installare phpMyAdmin su Debian 11 Bullseye (Apache)

Come installare phpMyAdmin su Debian 8

Come installare phpMyAdmin su Debian 9

Come installare phpMyAdmin con Nginx su Debian 11

Come installare e proteggere Apache su Debian11

Come installare e configurare Apache su Debian 11?