GNU/Linux >> Linux Esercitazione >  >> Debian

Come installare phpMyAdmin con Nginx su Debian 11 Bullseye

Uno degli strumenti più popolari per la gestione dei database si chiama phpMyAdmin . È un'interfaccia web gratuita e facile da usare che ti consente di gestire il tuo database MySQL o MariaDB da qualsiasi luogo con un semplice browser! La cosa migliore di questo software? Non hai bisogno di alcuna conoscenza speciale su come funzionano i server perché fa tutto il lavoro pesante dietro le quinte, quindi gli utenti possono accedervi facilmente senza perdersi nel terminale della riga di comando.

La maggior parte delle volte, gli sviluppatori preferiscono utilizzare phpMyAdmin per interagire con un server di database grazie alla sua facilità d'uso e all'avanzato editor SQL, che semplifica la creazione e il test di query SQL complesse. D'altra parte, gli amministratori dei server web installano phpMyAdmin oltre al loro sistema CMS come WordPress per risolvere i problemi o dare accesso a qualcun altro (uno sviluppatore di un plug-in, ad esempio) per indagare su un problema.

Nel seguente tutorial, imparerai come installare rapidamente lo stack LEMP usando Nginx, MariaDB e PHP (PHP-FPM) usando i repository Bullseye standard di Debian 11 o repository aggiornati alternativi, quindi scaricare e configurare phpMyAdmin manualmente creando un Blocco del server Nginx e un certificato Let's Encrypt TLS gratuito.

Aggiorna Debian

Prima di procedere con il tutorial, è bene assicurarsi che il proprio sistema sia aggiornato con tutti i pacchetti esistenti per evitare conflitti durante l'installazione.

sudo apt update && sudo apt upgrade -y

Installa dipendenze

Utilizzare il comando seguente per installare o verificare se i pacchetti sono installati.

sudo apt install software-properties-common curl apt-transport-https -y

Installa Nginx – Stack LEMP

Dopo aver installato Nginx PPA stabile o mainline, utilizzare il comando seguente per installare Nginx:

sudo apt install nginx-core nginx-common nginx nginx-full -y

Una volta installato, il servizio dovrebbe essere abilitato di default; tuttavia, è bene verificarlo e operare correttamente.

systemctl status nginx

Esempio di output:

Se il server non è stato attivato, utilizzare il comando seguente per farlo e avviare Nginx al riavvio.

sudo systemctl enable nginx --now

Installazione alternativa di Nginx

Un altro metodo consiste nell'installare l'ultima linea principale o stabile di Nginx dal repository Ondřej Surý per avere il software più aggiornato. Molti utenti di Ubuntu conoscerebbero il suo PPA e tu puoi fare lo stesso in Debian.

Opzione 1 – Importa repository Mainline (consigliato da Nginx)

curl -sSL https://packages.sury.org/nginx-mainline/README.txt | sudo bash -x

Opzione 2 – Importa repository stabile

curl -sSL https://packages.sury.org/nginx/README.txt | sudo bash -x

Aggiorna il tuo repository per riflettere la nuova modifica:

sudo apt update

Ora che hai installato il repository Nginx e aggiornato l'elenco, installa Nginx con quanto segue.

sudo apt install nginx-core nginx-common nginx nginx-full -y

Tieni presente che ti potrebbe essere richiesto di mantenere o sostituire il tuo /etc/ nginx/nginx.conf file di configurazione durante l'installazione. Si consiglia di conservare il file di configurazione corrente premendo (n) .

L'installazione di Nginx con il repository personalizzato include moduli aggiuntivi compilati, uno dei moduli più ordinati e consigliati da abilitare è il modulo Brotli.

Per installare brotli , apri il tuo nginx.conf file di configurazione:

nano /etc/nginx/nginx.conf

Ora aggiungi le righe aggiuntive prima in HTTP{} sezione.

Di seguito è riportato un esempio da modificare nel file di configurazione.

brotli on;
brotli_comp_level 6;
brotli_static on;
brotli_types application/atom+xml application/javascript application/json application/rss+xml
   application/vnd.ms-fontobject application/x-font-opentype application/x-font-truetype
   application/x-font-ttf application/x-javascript application/xhtml+xml application/xml
   font/eot font/opentype font/otf font/truetype image/svg+xml image/vnd.microsoft.icon
   image/x-icon image/x-win-bitmap text/css text/javascript text/plain text/xml;

Il brotli_comp_level può essere impostato tra 1 (più basso) e 11 (massimo) . In genere, la maggior parte dei server si trova nel mezzo, ma se il tuo server è un mostro, imposta su 11 e monitora i livelli di utilizzo della CPU.

Quindi, verifica che le modifiche funzionino correttamente prima di renderle attive:

sudo nginx -t

Se le modifiche funzionano correttamente, dovresti vedere quanto segue:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Ora rendi attive le modifiche riavviando il tuo server:

sudo systemctl restart nginx

Quindi, abilita Nginx all'avvio del sistema:

sudo systemctl enable nginx --now

Installa MariaDB – Stack LEMP

Nella seconda parte dell'installazione, dovrai installare la parte del database. Lo stack LEMP in genere si associa a MariaDB su MySQL per molte ragioni, principalmente a causa delle prestazioni.

Nel tuo terminale, esegui il seguente comando.

sudo apt install mariadb-server mariadb-client -y

Una volta installato, verifica come hai fatto con il servizio Nginx che sia abilitato e funzioni senza errori.

systemctl status mariadb

Se il server non è stato attivato, utilizzare il comando seguente per farlo e avviare MariaDB al riavvio.

sudo systemctl enable mariadb --now

Installazione alternativa di MariaDB (repository MariaDB.org)

Per coloro che desiderano utilizzare l'ultima versione 10.5 LTS, 10.6 LTS o le versioni più recenti di 1 anno come 10.7 o 10.8, ecc., fino alla prossima versione LTS, importare il repository ufficiale in modo che corrisponda alla versione desiderata.

NOTA SE INSTALLI L'ULTIMA VERSIONE BLEEDING EDGE MARIADB COME 10.7/10.8 AL MOMENTO DI QUESTO TUTORIAL, DEVI ASSICURARTI DI AVERE SEMPRE LA VERSIONE RC (BETA) O L'ULTIMO phpMyAdmin.

Opzione 1 – Importa MariaDB 10.5

curl -LsS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash -s -- --mariadb-server-version=10.5

Opzione 2 – Importa MariaDB 10.6

curl -LsS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash -s -- --mariadb-server-version=10.6

Opzione 3 – Importa MariaDB 10.7

curl -LsS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash -s -- --mariadb-server-version=10.7

Opzione 4 – Importa MariaDB 10.8

curl -LsS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash -s -- --mariadb-server-version=10.8

Esempio se importato correttamente (Esempio con MariaDB 10.7):

La migliore raccomandazione è importare MariaDB 10.6 LTS con MariaDB.org per le ultime funzionalità e la migliore compatibilità/stabilità.

Per gli utenti che hanno già installato MariaDB, noterai che gli aggiornamenti saranno ora disponibili. In caso contrario, eseguire il comando di installazione standard.

sudo apt install mariadb-server mariadb-client -y

Non aggiornare; esegui il comando di installazione per assicurarti che tutte le dipendenze siano installate.

Per gli utenti che hanno eseguito l'aggiornamento da una versione diversa di MariaDB, ad esempio dalla 10.5 alla 10.7, assicurati di aggiornare il database utilizzando il comando seguente.

sudo mariadb-upgrade

Col tempo saranno senza dubbio disponibili versioni più recenti, controlla qui e usa lo stesso comando di cui sopra e cambia mariadb-server-version={versione} a quello che vorresti, ad esempio, 10.9, 10.10, ecc.

Infine, assicurati che MariaDB funzioni correttamente controllandone lo stato proprio come hai fatto con Nginx.

sudo systemctl status mariadb

Esempio di output (con MariaDB 10.7):

Esegui lo script di sicurezza MariaDB

Durante l'installazione di MariaDB nuove impostazioni predefinite sono considerate deboli dalla maggior parte degli standard e destano preoccupazione per consentire potenzialmente intrusioni o sfruttare hacker. Una soluzione è eseguire lo script di sicurezza dell'installazione con MariaDB installazione.

Innanzitutto, utilizza il comando seguente per avviare (mysql_secure_installation) :

sudo mysql_secure_installation

Quindi, segui di seguito:

  • Impostazione della password per root conti.
  • Rimozione degli account root accessibili dall'esterno dell'host locale.
  • Rimozione degli account di utenti anonimi.
  • Rimozione del database di test, a cui per impostazione predefinita possono accedere utenti anonimi.

Nota, usi (Y) per rimuovere tutto.

Esempio:

[joshua@debian-11 ~]$ sudo mariadb-secure-installation

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we'll need the current
password for the root user. If you've just installed MariaDB, and
haven't set the root password yet, you should just press enter here.

Enter current password for root (enter for none): 
OK, successfully used password, moving on...

Setting the root password or using the unix_socket ensures that nobody
can log into the MariaDB root user without the proper authorisation.

You already have your root account protected, so you can safely answer 'n'.

Switch to unix_socket authentication [Y/n] Y <---- Type Y then press the ENTER KEY.
Enabled successfully!
Reloading privilege tables..
 ... Success!


You already have your root account protected, so you can safely answer 'n'.

Change the root password? [Y/n] Y <---- Type Y then press the ENTER KEY.
New password: 
Re-enter new password: 
Password updated successfully!
Reloading privilege tables..
 ... Success!


By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] Y <---- Type Y then press the ENTER KEY.
 ... Success!

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] Y <---- Type Y then press the ENTER KEY.
 ... Success!

By default, MariaDB comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] Y <---- Type Y then press the ENTER KEY.
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] Y <---- Type Y then press the ENTER KEY.
 ... Success!

Cleaning up...

All done!  If you've completed all of the above steps, your MariaDB
installation should now be secure.

Thanks for using MariaDB!

Installa PHP – Stack LEMP

Infine, installa il servizio PHP per lo stack LEMP, che fungerà da intermediario tra Nginx e MariaDB. PHP lo archivia con il servizio PHP-FPM e alcuni moduli aggiuntivi richiesti da phpMyAdmin.

Gli utenti Debian possono installare la versione standard di PHP. Tuttavia, per PHP, consiglio vivamente di installare un repository simile a Nginx Ondrey Sury, che è il manutentore di PHP per Debian, in questo modo otterrai l'ultima versione non solo con aggiornamenti di sicurezza ma anche con miglioramenti delle prestazioni.

Il primo passaggio consiste nell'importare e installare la chiave GPG e repository, cosa che può essere eseguita utilizzando uno script automatico avviato dal comando curl. Nel tuo terminale, usa il seguente comando.

Importa repository PHP e chiave GPG

curl -sSL https://packages.sury.org/php/README.txt | sudo bash -x

Quindi, aggiorna il tuo elenco di repository APT per riflettere le modifiche.

sudo apt update

Dopo aver eseguito il comando update, potresti notare che alcuni pacchetti richiedono l'aggiornamento, assicurati di farlo prima di continuare.

sudo apt upgrade

Installa PHP (PHP-FPM)

Il prossimo passo è installare PHP e PHP-FPM e i moduli richiesti. Attualmente, suggerisco di installare PHP 8.0 o 8.1 poiché 7.4 è considerato molto vecchio. Tuttavia, verranno presentate tre opzioni.

Se non sei sicuro, per ora scegli 8.0 come è la mia raccomandazione; tuttavia, Io uso personalmente 8.1 con il mio phpMyAdmin senza problemi.

Opzione 1 – Installa PHP 7.4

sudo apt install php7.4-fpm php7.4-mbstring php7.4-bcmath php7.4-xml php7.4-mysql php7.4-common php7.4-gd php7.4-cli php7.4-curl php7.4-zip php7.4-gd -y

Opzione 2 – Installa PHP 8.0 (consigliato)

sudo apt install php8.0-fpm php8.0-mbstring php8.0-bcmath php8.0-xml php8.0-mysql php8.0-common php8.0-gd php8.0-cli php8.0-curl php8.0-zip php8.0-gd -y

Opzione 3 – Installa PHP 8.1 (consigliato)

sudo apt install php8.1-fpm php8.1-mbstring php8.1-bcmath php8.1-xml php8.1-mysql php8.1-common php8.1-gd php8.1-cli php8.1-curl php8.1-zip php8.1-gd -y

Tieni presente che se non sei sicuro, puoi installare tutte e tre le versioni di PHP affiancate e solo il blocco del server Nginx, che ti mostrerò più avanti. Assicurati solo di disabilitare tutti i servizi php-fpm non necessari per motivi di prestazioni e sicurezza.

Una volta installato, verifica come hai fatto con il servizio MariaDB che sia abilitato e funzioni senza errori.

systemctl status php{version}-fpm

Esempio di output (con PHP 8.1-FPM:

Se il server non è stato attivato, utilizzare il comando seguente per farlo e avviare MariaDB al riavvio.

sudo systemctl enable php{version}-fpm --now

Installa phpMyAdmin

Per impostazione predefinita, il repository Debian 11 viene fornito con phpMyAdmin e le dipendenze richieste. Tuttavia, poiché spesso con Debian ci sono rilasci LTS, la versione e la build sono molto indietro rispetto a quanto è attualmente disponibile dal sorgente e non è possibile installare le release candidate/beta upstream.

Quindi, come avresti capito ormai, il tutorial installerà l'ultima versione come segue.

Crea phpMyAdmin nome utente SuperUser

Per impostazione predefinita, puoi accedere con l'utente root su phpMyAdmin. Tuttavia, è sempre meglio creare un superutente; proprio come faresti per Linux, sudo gli utenti preferiscono utilizzare root , quindi è lo stesso tipo di logica.

Innanzitutto, accedi all'interfaccia del terminale.

sudo mysql -u root

Quindi, crea un database nel terminale MariaDB:

CREATE USER PMAUSER IDENTIFIED BY 'password here change';

Ora devi creare un utente e concedere le autorizzazioni come segue:

GRANT ALL PRIVILEGES ON *.* TO 'PMAUSER'@'localhost' IDENTIFIED BY 'password here change' WITH GRANT OPTION;

Ricordati di cambiare 'la password qui cambia' non copiare alla cieca, per favore.

Per concludere, svuota i privilegi per rendere effettive le modifiche.

FLUSH PRIVILEGES;

Ora esci con il seguente comando.

QUIT;

Scarica l'ultima versione sorgente di phpMyAdmin

Scaricare l'ultima versione di phpMyAdmin è semplice; visita la pagina dei download di phpMyAdmin per trovare il numero di versione più recente.

Quindi, esegui i seguenti codici per scaricare automaticamente tutte le ultime versioni della lingua.

Al momento del tutorial, 5.1.3 è l'ultima versione, quindi questo dovrebbe essere nell'output scaricato; ricorda, col tempo, questa versione cambierà; tuttavia, il comando sarà lo stesso!

DATA="$(wget https://www.phpmyadmin.net/home_page/version.txt -q -O-)"
URL="$(echo $DATA | cut -d ' ' -f 3)"
VERSION="$(echo $DATA | cut -d ' ' -f 1)"
wget https://files.phpmyadmin.net/phpMyAdmin/${VERSION}/phpMyAdmin-${VERSION}-all-languages.tar.gz

Esempio di output:

Se vuoi scaricare la versione inglese , sostituisci la riga finale con la seguente:

wget https://files.phpmyadmin.net/phpMyAdmin/${VERSION}/phpMyAdmin-${VERSION}-english.tar.gz

Quindi, estrai l'archivio usando il seguente comando:

tar xvf phpMyAdmin-${VERSION}-all-languages.tar.gz

Configura phpMyAdmin

Il passaggio successivo consiste nello spostare tutti i file estratti nella loro destinazione finale, nello standard /var/www/ posizione della directory utilizzando il comando mv .

sudo mv phpMyAdmin-*/ /var/www/phpmyadmin

Per impostazione predefinita, phpMyAdmin non viene fornito con un TMP directory durante l'installazione dal sorgente e devi crearla manualmente:

sudo mkdir -p /var/www/phpmyadmin/tmp

Nella directory phpMyAdmin è incluso un file di esempio di configurazione predefinito. Dovrai rinominare questo file affinché phpMyAdmin riconosca la configurazione.

Tuttavia, per il backup, utilizzerai il CP comando per creare una copia e mantenere l'impostazione predefinita come backup se vengono commessi errori nella posizione /var/www/phpmyadmin/ directory.

Copia config.sample.inc.php a config.inc.php con il seguente comando:

sudo cp /var/www/phpmyadmin/config.sample.inc.php /var/www/phpmyadmin/config.inc.php

Quindi, apri questo file utilizzando il tuo editor di testo preferito. Per il tutorial viene utilizzato l'editor di testo nano.

sudo nano /var/www/phpmyadmin/config.inc.php

phpMyAdmin utilizza una cifra Blowfish . Scorri verso il basso fino alla riga che inizia con $cfg['blowfish_secret'] .

Le linee saranno ad esempio:

$cfg['blowfish_secret'] = ''; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */

Dovrai assegnare una stringa di 32 caratteri casuali tra le virgolette singole. Il modo più semplice per raggiungere questo obiettivo è utilizzare il programma pwgen .

Per installare il pacchetto pwgen, usa il seguente comando da terminale:

sudo apt install pwgen -y

Una volta installato, esegui il seguente comando:

pwgen -s 32 1

Otterrai quindi i tuoi 32 caratteri casuali per il segreto del pesce palla, output di esempio:

Esempio di aggiunta della cifratura al file di configurazione (non copiare):

$cfg['blowfish_secret'] = 'K8ZEWW6NZ6OhLFbs5m19YqDB932EyGRq'

Esempio nel file di configurazione:

Il resto delle impostazioni predefinite dovrebbe funzionare per la maggior parte degli utenti.

Se il tuo da si trova su un altro server situato nella tua rete, trova e modifica la riga $cfg['Server'][$i]['host'] = a quello dell'indirizzo IP privato. Esempio sotto:

$cfg['Servers'][$i]['host'] = '192.168.55.101';

Cambia 192.168.55.101 all'indirizzo IP del server host del tuo server host.

Imposta le autorizzazioni per i file phpMyAdmin

Successivamente, devi impostare le autorizzazioni del proprietario della directory su www-user per compatibilità e sicurezza.

Imposta l'autorizzazione chown (importante):

sudo chown -R www-data:www-data /var/www/phpmyadmin/

Imposta il permesso chmod (importante):

sudo find /var/www/phpmyadmin/ -type d -exec chmod 755 {} \;
sudo find /var/www/phpmyadmin/ -type f -exec chmod 644 {} \;

Crea un blocco server Nginx per phpMyAdmin

Per accedere all'interfaccia web di phpMyAdmin, devi creare un blocco server Nginx. Si consiglia vivamente di tenerlo separato e su un sottodominio, puoi nominarlo come preferisci per aiutare con la sicurezza e gli attacchi di forza bruta.

Innanzitutto, crea e apri il blocco del server utilizzando l'editor di testo nano come segue:

sudo nano /etc/nginx/sites-available/phpmyadmin.conf

Successivamente, puoi incollare il testo seguente nel file. Nota, devi sostituire l'URL del dominio con il tuo:

server {
  listen 80;
  listen [::]:80;
  server_name pma.example.com;
  root /var/www/phpmyadmin/;
  index index.php index.html index.htm index.nginx-debian.html;

  access_log /var/log/nginx/phpmyadmin_access.log;
  error_log /var/log/nginx/phpmyadmin_error.log;

  location / {
    try_files $uri $uri/ /index.php;
  }

  location ~ ^/(doc|sql|setup)/ {
    deny all;
  }

  location ~ \.php$ {
    fastcgi_pass unix:/run/php/php8.1-fpm.sock;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
    include snippets/fastcgi-php.conf;
  }

  location ~ /\.ht {
    deny all;
  }
}

Alcune note sull'esempio precedente.

  • /run/php/php8.1-fpm.sock; – Questo deve essere modificato in 8.0, 7.4 ecc. se si utilizza una versione PHP-FPM diversa.
  • root /var/www/phpmyadmin/; – Questo è il percorso impostato nel tutorial, cambialo se imposti phpMyAdmin altrove.

Se sei l'unico ad accedervi da un indirizzo IP statico, puoi aggiungere il seguente codice sopra la prima voce di posizione. Di seguito un esempio:

  allow <your ip address>;
  deny all; 

  location / {
    try_files $uri $uri/ /index.php;
  }
...........................................

Questo naturalmente bloccherà chiunque visiti la pagina con un errore 403 a meno che non sia consentito dal tuo indirizzo IP. Questo, per natura, può fermare tutti gli attacchi bruti nelle loro tracce, ma forse non è fattibile per alcune configurazioni.

Ora salva usando (CTRL+O) ed esci con (CTRL+X) .

Quindi, crea un collegamento simbolico da sites-available dove è contenuto il file di configurazione per collegare quindi sites-enabled> .

sudo ln -s /etc/nginx/sites-available/phpmyadmin.conf /etc/nginx/sites-enabled/

Prima di riavviare il servizio Nginx, esegui sempre un test di prova, soprattutto in ambienti live, per assicurarti che il blocco del server o qualsiasi modifica apportata ai file di configurazione non causi errori in Nginx.

sudo nginx -t

Se non hai errori, dovresti ottenere il seguente output:

Ora riavvia il tuo servizio Nginx per rendere effettive le modifiche:

sudo systemctl restart nginx

Accesso all'interfaccia utente Web di phpMyAdmin

Per accedere all'interfaccia web, apri il tuo browser Internet preferito e digita pma .esempio.com con (esempio) il tuo dominio. Dovresti accedere alla schermata di accesso di phpMyAdmin come segue:

Usa PMAUSER superutente che hai creato o, se l'hai saltato, usa l'account root .

Esempio (Fai clic sull'immagine per espandere ):

Inserisci i tuoi dati di accesso, quindi vai avanti nella dashboard di phpMyAdmin.

Esempio (Fai clic sull'immagine per espandere ):

E questo è tutto, e hai installato con successo l'ultima versione di phpMyAdmin usando LEMP. In alternativa, puoi personalizzare molto questa installazione. Ad esempio, puoi prendere l'ultima versione beta o installare diverse varianti di LEMP con versioni più recenti o precedenti di Nginx, MariaDB e PHP-FPM.

Alcune altre cose degne di nota per gli utenti freschi di phpMyadmin sono la pagina delle statistiche.

Esempio (Fai clic sull'immagine per espandere ):

Esempio di Advisor (Fai clic sull'immagine per espandere ):

Nota, l'advisor consiglia 24 ore, credo che dovrebbero essere almeno 72 ore e non prendere la pagina dell'advisor come parola di esso e implementare le modifiche e allontanarsi, la messa a punto di qualsiasi file di configurazione MySQL o MariaDB richiede tempo e molte modifiche /testing per ottenere l'ottimizzazione perfetta.

Proteggi phpMyAdmin con Let's Encrypt SSL Free Certificate

Idealmente, vorresti eseguire il tuo Nginx su HTTPS utilizzando un certificato SSL . Il modo migliore per farlo è utilizzare Let's Encrypt, un'autorità di certificazione gratuita, automatizzata e aperta gestita dal Internet Security Research Group (ISRG) senza scopo di lucro .

Innanzitutto, installa il pacchetto certbot come segue:

sudo apt install python3-certbot-nginx -y

Una volta installato, esegui il seguente comando per avviare la creazione del tuo certificato:

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d www.example.com

Durante l'installazione del certificato, riceverai un avviso per ricevere e-mail da EFF (Fondazione Frontiera Elettronica) . Scegli Y o N quindi il tuo certificato TLS verrà automaticamente installato e configurato per te.

Questa configurazione ideale include reindirizzamenti HTTPS 301 forzati, un'intestazione Strict-Transport-Security e graffatura OCSP. Assicurati solo di adattare l'e-mail e il nome di dominio alle tue esigenze.

Ora il tuo URL sarà HTTPS://www.example.com invece di HTTP://www.example.com .

Se utilizzi il vecchio URL HTTP , reindirizzerà automaticamente a HTTPS .

Facoltativamente, puoi impostare un processo cron per rinnovare automaticamente i certificati. Certbot offers a script that does this automatically, and you can first test to make sure everything is working by performing a dry run.

sudo certbot renew --dry-run

If everything is working, open your crontab window using the following terminal command.

sudo crontab -e

Next, please specify the time when it should auto-renew. This should be checked daily at a minimum, and if the certificate needs to be renewed, the script will not update the certificate. If you need help finding a good time to set, use the crontab.guru free tool.

00 00 */1 * * /usr/sbin/certbot-auto renew

That’s it, and you have installed SSL on your phpMyAdmin area. A great idea will be to test using a free SSL test such as DigiCert or SSL Labs.


Debian
  1. Come installare Ghost su Debian con Nginx

  2. Come installare DokuWiki su Debian Wheezy con Nginx

  3. Come installare FuelPHP con Nginx su un VPS Debian 8

  4. Come installare WordPress con Nginx su Debian 10

  5. Come installare WonderCMS con Nginx su Debian 11

Come installare phpMyAdmin su Debian 8

Come installare phpMyAdmin su Debian 9

Come installare phpMyAdmin su Debian 11

Come installare phpMyAdmin con Nginx su Debian 11

Come installare Nginx con PHP-FPM su Debian 11

Come installare Debian 11 Bullseye {Guida con schermate}