Hur man installerar phpMyAdmin med Nginx på Debian 11 Bullseye

Ett av de mest populära verktygen för att hantera databaser kallas phpMyAdmin. Det är ett lättanvänt, gratis webbgränssnitt som låter dig hantera din MySQL- eller MariaDB-databas var som helst med bara en webbläsare! Det bästa med denna programvara? Du behöver ingen speciell kunskap om hur servrar fungerar eftersom den gör alla tunga lyft bakom kulisserna, så att användarna enkelt kan komma åt dem utan att gå vilse i kommandoradsterminalen.

De flesta gånger föredrar utvecklare att använda phpMyAdmin för att interagera med en databasserver på grund av dess enkla användning och avancerade SQL-redigerare, vilket gör det enkelt att bygga och testa komplexa SQL-frågor. Å andra sidan installerar administratörer av webbservrar phpMyAdmin förutom sitt CMS-system som WordPress för att åtgärda problem eller ge åtkomst till någon annan (till exempel en utvecklare av ett plugin) för att undersöka ett problem.

I följande handledning kommer du att lära dig hur du snabbt installerar LEMP-stacken med hjälp av Nginx, MariaDB och PHP (PHP-FPM) med de vanliga Debian 11 Bullseye-förråden eller alternativa uppgraderade förråd och sedan laddar ner och konfigurerar phpMyAdmin manuellt genom att skapa ett Nginx-serverblock och ett gratis Let's Encrypt TLS-certifikat.

Uppdatera Debian

Innan du fortsätter med handledningen är det bra att se till att ditt system är uppdaterat med alla befintliga paket för att undvika konflikter under installationen.

sudo apt update && sudo apt upgrade -y

Installera beroenden

Använd följande kommando för att installera eller kontrollera om paketen är installerade.

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

Installera Nginx – LEMP Stack

Efter att ha installerat antingen stabil eller mainline Nginx PPA, använd följande kommando för att installera Nginx:

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

När den väl har installerats bör tjänsten vara aktiverad som standard; Det är dock bra att kontrollera detta och fungera korrekt.

systemctl status nginx

Exempel utmatning:

Hur man installerar phpMyAdmin med LEMP på Debian 11 Bullseye

Om servern inte har aktiverats, använd följande kommando för att göra detta och starta Nginx vid omstart.

sudo systemctl enable nginx --now

Alternativ Nginx-installation

En annan metod är att installera den senaste Nginx mainline eller stabil från Ondřej Surý-förvaret för att ha den mest uppdaterade programvaran. Många Ubuntu-användare skulle känna till hans PPA, och du kan göra detsamma i Debian.

Alternativet 1 - Importera Mainline Repository (rekommenderas av Nginx)

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

Alternativet 2 - Importera stabilt arkiv

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

Uppdatera ditt arkiv för att återspegla den nya ändringen:

sudo apt update

Nu när du har installerat Nginx-förvaret och uppdaterade listan, installera Nginx med följande.

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

Observera att du kan bli ombedd att behålla eller ersätta din befintliga /etc/nginx/nginx.conf konfigurationsfilen under installationen. Det rekommenderas att behålla din nuvarande konfigurationsfil genom att trycka på (N).

Att installera Nginx med det anpassade arkivet kommer med ytterligare moduler kompilerade, en av de mest sorterade efter och rekommenderade modulerna att aktivera är Brotli-modulen.

Så här installerar du bror, öppna din nginx.conf konfigurationsfil:

nano /etc/nginx/nginx.conf

Lägg nu till de ytterligare raderna innan i HTTP{} sektion.

Nedan är ett exempel för dig att justera i din konfigurationsfil.

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;

Du har nu möjlighet  brotli_comp_level kan ställas mellan 1 (lägst) och 11 (högst). Vanligtvis sitter de flesta servrar i mitten, men om din server är ett monster, ställ in på 11 och övervaka CPU-användningsnivåer.

Testa sedan för att se till att ändringarna fungerar korrekt innan de görs live:

sudo nginx -t

Om ändringarna fungerar korrekt bör du se följande:

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

Gör nu ändringarna live genom att starta om din server:

sudo systemctl restart nginx

Aktivera sedan Nginx vid systemstart:

sudo systemctl enable nginx --now

Installera MariaDB – LEMP Stack

I den andra delen av installationen måste du installera databasdelen. LEMP stack associerar sig vanligtvis med MariaDB över MySQL av många anledningar, främst på grund av prestanda.

I din terminal, kör följande kommando.

sudo apt install mariadb-server mariadb-client -y

När du har installerat, verifiera på samma sätt som du gjorde med Nginx-tjänsten att den är aktiverad och fungerar utan några fel.

systemctl status mariadb

Om servern inte har aktiverats, använd följande kommando för att göra detta och starta MariaDB vid omstart.

sudo systemctl enable mariadb --now

Alternativ MariaDB-installation (MariaDB.org Repository)

För dem som vill använda den senaste 10.5 LTS, 10.6 LTS eller de nyare 1-årsutgåvorna som 10.7 eller 10.8, etc., till nästa LTS-version, importera det officiella arkivet för att matcha din önskade version.

OBS OM DU INSTALLERAR DEN SENASTE BLEEDING EDGE MARIADB SOM 10.7/10.8 VID DENNA TUTORIAL, MÅSTE DU SE TILL ATT DU HAR ANTINGEN RC-VERSIONEN (BETA) ELLER SENASTE phpMyAdmin AT.

Alternativ 1 – Importera MariaDB 10.5

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

Alternativ 2 – Importera MariaDB 10.6

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

Alternativ 3 – Importera MariaDB 10.7

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

Alternativ 4 – Importera MariaDB 10.8

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

Exempel om importen lyckades (Exempel med MariaDB 10.7):

Hur man installerar phpMyAdmin med LEMP på Debian 11 Bullseye

Den bästa rekommendationen är att importera MariaDB 10.6 LTS med MariaDB.org för de senaste funktionerna och bästa kompatibiliteten/stabiliteten.

För användare som redan har installerat MariaDB kommer du att märka att uppgraderingar nu kommer att vara tillgängliga. Om inte, kör standardinstallationskommandot.

sudo apt install mariadb-server mariadb-client -y

Uppgradera inte; kör installationskommandot för att säkerställa att alla beroenden är installerade.

För användare som har uppgraderat från en annan version av MariaDB, till exempel 10.5 till 10.7, se till att uppgradera din databas med följande kommando.

sudo mariadb-upgrade

Med tiden kommer nyare versioner utan tvekan att finnas tillgängliga, kolla här och använd samma kommando som ovan och ändra mariadb-server-version={version} till vad du skulle vilja ha, till exempel 10.9, 10.10 osv.

Slutligen, se till att MariaDB fungerar korrekt genom att kontrollera dess status precis som du gjorde med Nginx.

sudo systemctl status mariadb

Exempelutdata (Med MariaDB 10.7):

Hur man installerar phpMyAdmin med LEMP på Debian 11 Bullseye

Kör MariaDB Security Script

När du installerar mariadb nya, standardinställningar anses vara svaga enligt de flesta standarder och orsakar oro för att potentiellt tillåta intrång eller utnyttja hackare. En lösning är att köra installationssäkerhetsskriptet med mariadb installation.

Använd först följande kommando för att starta (mysql_secure_installation):

sudo mysql_secure_installation

Följ sedan nedan:

  • Ställer in lösenordet för rot konton.
  • Ta bort root-konton som är tillgängliga utanför den lokala värden.
  • Ta bort anonyma användarkonton.
  • Ta bort testdatabasen, som som standard kan nås av anonyma användare.

Obs, du använder (Y) att ta bort allt.

Exempelvis:

[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!

Installera PHP – LEMP Stack

Slutligen, installera PHP-tjänsten för LEMP-stacken, som kommer att fungera som mellanhand mellan Nginx och MariaDB. PHP arkiverar detta med PHP-FPM-tjänsten och några ytterligare moduler som krävs av phpMyAdmin.

Debiananvändare kan installera standardversionen av PHP. Men för PHP rekommenderar jag starkt att du installerar liknande Nginx Ondrey Sury repository, som är underhållaren för PHP för Debian, på så sätt får du den senaste versionen med inte bara säkerhetsuppdateringar utan prestandaförbättringar.

Det första steget är att importera och installera GPG-nyckel och arkiv, vilket kan göras med hjälp av ett automatiserat skript initierat av curl-kommandot. Använd följande kommando i din terminal.

Importera PHP Repository & GPG Key

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

Uppdatera sedan din APT-förrådslista för att återspegla ändringarna.

sudo apt update

Efter att ha kört uppdateringskommandot kan du märka att vissa paket kräver uppdatering, se till att göra detta innan du fortsätter.

sudo apt upgrade

Installera PHP (PHP-FPM)

Nästa steg är att installera PHP och PHP-FPM och de nödvändiga modulerna. För närvarande föreslår jag att du installerar PHP 8.0 eller 8.1 eftersom 7.4 anses vara mycket gammalt. Tre alternativ kommer dock att presenteras.

Om du är osäker, för nu, välj 8.0 som är min rekommendation; i alla fall, Jag använder personligen 8.1 med min phpMyAdmin utan problem.

Alternativ 1 – Installera 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

Alternativ 2 – Installera PHP 8.0 (rekommenderas)

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

Alternativ 3 – Installera PHP 8.1 (rekommenderas)

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

Var bara medveten om om du är osäker, du kan installera alla tre PHP-versionerna sida vid sida, och bara Nginx-serverblocket, som jag kommer att visa dig senare. Se bara till att inaktivera alla php-fpm-tjänster som inte behövs för prestanda- och säkerhetssyften.

När du har installerat, verifiera på samma sätt som du gjorde med MariaDB-tjänsten att den är aktiverad och fungerar utan några fel.

systemctl status php{version}-fpm

Exempel på utdata (med PHP 8.1-FPM:

Hur man installerar phpMyAdmin med LEMP på Debian 11 Bullseye

Om servern inte har aktiverats, använd följande kommando för att göra detta och starta MariaDB vid omstart.

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

Installera phpMyAdmin

Som standard kommer Debian 11-förvaret med phpMyAdmin och de nödvändiga beroenden. Men som ofta med Debian är LTS-utgåvor, är versionen och builden långt efter vad som för närvarande är tillgängligt från källan, och du kan inte installera uppströmsversionskandidaten/betaversionerna.

Så som du skulle ha förstått nu, kommer handledningen att installera den senaste versionen enligt följande.

Skapa phpMyAdmin Användarnamn SuperUser

Som standard kan du logga in med root-användaren på phpMyAdmin. Det är dock alltid bättre att skapa en superanvändare; precis som du skulle göra för Linux, sudo användare föredras framför användning rot, så det är samma typ av logik.

Logga först in på terminalgränssnittet.

sudo mysql -u root

Skapa sedan en databas i MariaDB-terminalen:

CREATE USER PMAUSER IDENTIFIED BY 'password here change';

Nu måste du skapa en användare och ge behörigheter enligt följande:

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

Kom ihåg att ändra "byt lösenord här", kopiera inte blint, tack.

Avsluta genom att ta bort privilegierna för att ändringar ska träda i kraft.

FLUSH PRIVILEGES;

Avsluta nu med följande kommando.

QUIT;

Ladda ner phpMyAdmin senaste källversion

Att ladda ner den senaste versionen av phpMyAdmin är enkelt; besök phpMyAdmins nedladdningssida för att hitta det senaste versionsnumret.

Kör sedan följande koder för att automatiskt ladda ner alla språks senaste versioner.

Vid tidpunkten för handledningen är 5.1.3 den senaste versionen, så denna bör finnas i den nedladdade utgången; kom ihåg att med tiden kommer denna version att ändras; dock kommer kommandot att vara detsamma!

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

Exempel utmatning:

Hur man installerar phpMyAdmin med LEMP på Debian 11 Bullseye

Om du vill ladda ner Svensk version, ersätt slutraden med följande:

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

Extrahera sedan arkivet med följande kommando:

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

Konfigurera phpMyAdmin

Nästa steg är att flytta alla extraherade filer till deras slutdestination, i standarden / Var / www / katalogplats med hjälp av mv-kommando.

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

Som standard kommer phpMyAdmin inte med en TMP katalog när du installerar från källan, och du måste skapa detta manuellt:

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

I katalogen phpMyAdmin finns en standardfil för konfigurationsexempel. Du måste byta namn på den här filen för att phpMyAdmin ska känna igen konfigurationen.

Men för säkerhetskopiering kommer du att använda CP kommandot för att skapa en kopia och behålla standarden som en säkerhetskopia om några misstag görs på platsen /var/www/phpmyadmin/ katalog.

Kopiera config.sample.inc.php till config.inc.php med följande kommando:

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

Öppna sedan den här filen med din föredragna textredigerare. För handledningen används nanotextredigeraren.

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

phpMyAdmin använder en Blowfish chiffer. Scrolla ner till raden som börjar med $cfg['blowfish_secret'].

Raderna kommer att se ut som till exempel:

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

Du måste tilldela en sträng med 32 slumpmässiga tecken mellan de enkla citattecken. Det enklaste sättet att uppnå detta är att använda programmet pwgen.

För att installera pwgen-paketet, använd följande terminalkommando:

sudo apt install pwgen -y

När du har installerat, kör följande kommando:

pwgen -s 32 1

Du kommer då att få dina 32 slumpmässiga tecken för blåsfiskens hemlighet, exempelutdata:

Hur man installerar phpMyAdmin med LEMP på Debian 11 Bullseye

Exempel på att lägga till chiffer i konfigurationsfilen (Kopiera inte):

$cfg['blowfish_secret'] = 'K8ZEWW6NZ6OhLFbs5m19YqDB932EyGRq'

Exempel i konfigurationsfilen:

Hur man installerar phpMyAdmin med LEMP på Debian 11 Bullseye

Resten av standardinställningarna borde fungera för de flesta användare.

Om din da finns på en annan server i ditt nätverk, hitta och ändra linjen $cfg['Servers'][$i]['host'] = till den privata IP-adressen. Exempel nedan:

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

Ändra 192.168.55.101 till IP-adressen för värdservern för din externa värdserver.

Ställ in phpMyAdmin-filbehörigheter

Därefter måste du ställa in katalogägarens behörigheter till www-användare för kompatibilitet och säkerhet.

Ange chown-tillstånd (viktigt):

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

Ange chmod-behörighet (viktigt):

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

Skapa Nginx Server Block för phpMyAdmin

För att komma åt webbgränssnittet phpMyAdmin måste du skapa ett Nginx-serverblock. Det rekommenderas starkt att hålla detta separat, och på en underdomän kan du namnge det vad du vill för att hjälpa till med säkerhet och brute force-attacker.

Skapa och öppna först ditt serverblock med nanotextredigerare enligt följande:

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

Därefter kan du klistra in texten nedan i filen. Observera att du måste ersätta domänens URL med din egen:

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;
  }
}

Några anteckningar om exemplet ovan.

  • /run/php/php8.1-fpm.sock; – Detta måste ändras till 8.0, 7.4 etc om du använder en annan PHP-FPM-version.
  • root /var/www/phpmyadmin/; – Det här är sökvägen som anges i handledningen, ändra detta om du ställer in phpMyAdmin någon annanstans.

Om du är den enda som kommer åt detta från en statisk IP-adress, kan du lägga till följande kod ovanför den första platsposten. Ett exempel på detta är nedan:

  allow <your ip address>;
  deny all; 

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

Detta kommer naturligtvis blockera alla som besöker sidan med en 403 fel om inte din IP-adress tillåter det. Detta kan av naturen stoppa alla brutala attacker i deras spår, men kanske inte lönsamt för vissa inställningar.

Spara nu att använda (CTRL+O) och avsluta med (CTRL+X).

Skapa sedan en symbollänk från sites-available där konfigurationsfilen finns för att länka sedan sites-aktiverade.

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

Innan du startar om Nginx-tjänsten, gör alltid ett torrkörningstest, särskilt i levande miljöer, för att säkerställa att serverblockeringen eller vilka ändringar du har gjort i dina konfigurationsfiler inte orsakar fel i Nginx.

sudo nginx -t

Om du inte har några fel bör du få följande utdata:

Hur man installerar phpMyAdmin med LEMP på Debian 11 Bullseye

Starta nu om din Nginx-tjänst för att ändringar ska träda i kraft:

sudo systemctl restart nginx

Åtkomst till phpMyAdmin Web UI

För att komma åt webbgränssnittet, öppna din föredragna webbläsare och skriv in pma.example.com med (exempel) din domän. Du bör komma till inloggningsskärmen för phpMyAdmin enligt följande:

Använd PMAUSER superanvändare du skapade, eller om du hoppade över det, använd root-konto.

Exempel (Klicka på Bild för att expandera):

Hur man installerar phpMyAdmin med LEMP på Debian 11 Bullseye

Ange dina inloggningsuppgifter och gå sedan vidare till din phpMyAdmin-instrumentpanel.

Exempel (Klicka på Bild för att expandera):

Hur man installerar phpMyAdmin med LEMP på Debian 11 Bullseye

Och det är det, och du har framgångsrikt installerat den senaste versionen av phpMyAdmin med LEMP. Alternativt kan du mycket anpassa denna installation. Till exempel kan du ta den senaste betaversionen eller installera olika varianter av LEMP med nyare eller äldre versioner av Nginx, MariaDB och PHP-FPM.

Några andra saker som är värda att notera för användare som är färska till phpMyadmin är statistiksidan.

Exempel (Klicka på Bild för att expandera):

Hur man installerar phpMyAdmin med LEMP på Debian 11 Bullseye

Exempel på rådgivare (Klicka på Bild för att expandera):

Hur man installerar phpMyAdmin med LEMP på Debian 11 Bullseye

Notera, rådgivaren rekommenderar 24 timmar, jag tror att detta bör vara minst 72 timmar och ta inte rådgivarsidan som ord för det och implementera ändringar och gå därifrån, finjustering av alla MySQL- eller MariaDB-konfigurationsfiler tar tid och mycket redigering /testning för att få den perfekta optimeringen.

Säkra phpMyAdmin med Let's Encrypt SSL Free Certificate

Helst skulle du vilja köra din Nginx på HTTPS med ett SSL-certifikat. Det bästa sättet att göra detta är att använda Låt oss kryptera, en gratis, automatiserad och öppen certifikatutfärdare som drivs av ideell Internet Security Research Group (ISRG).

Först installerar du certbot-paket enligt följande:

sudo apt install python3-certbot-nginx -y

När det är installerat, kör följande kommando för att starta skapandet av ditt certifikat:

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email you@example.com -d www.example.com

Under certifikatinstallationen får du ett meddelande att ta emot e-post från EFF (Electronic Frontier Foundation). Välj antingen Y or N då kommer ditt TLS-certifikat att installeras och konfigureras automatiskt åt dig.

Denna idealiska installation inkluderar forcerad HTTPS 301-omdirigeringar, en Strict-Transport-Security-huvud och OCSP-häftning. Se bara till att anpassa e-post och domännamn efter dina krav.

Nu blir din URL HTTPS://www.example.com istället för HTTP://www.example.com.

Om du använder den gamla HTTP URLkommer den automatiskt att omdirigera till HTTPS.

Alternativt kan du ställa in ett cron-jobb för att förnya certifikaten automatiskt. Certbot erbjuder ett skript som gör detta automatiskt, och du kan först testa för att säkerställa att allt fungerar genom att utföra en torrkörning.

sudo certbot renew --dry-run

Om allt fungerar, öppna ditt crontab-fönster med följande terminalkommando.

sudo crontab -e

Ange sedan när den ska förnyas automatiskt. Detta bör kontrolleras minst dagligen, och om certifikatet behöver förnyas kommer skriptet inte att uppdatera certifikatet. Om du behöver hjälp med att hitta en bra tid att ställa in, använd crontab.guru gratis verktyg.

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

Det var allt, och du har installerat SSL på ditt phpMyAdmin-område. En bra idé kommer att vara att testa med ett gratis SSL-test som t.ex DigiCert or SSL Labs.

Kommentarer och slutsats

I handledningen har du lärt dig hur du installerar de nödvändiga programberoendena och laddar ner och skapar rätt kataloger för phpMyAdmin från källan på Debian 11 Bullseye.

Sammantaget är att använda phpMyAdmin ett utmärkt verktyg för all databashantering. Du kan enkelt skapa databaser, användare, tabeller och utföra de vanliga operationerna som att ta bort och ändra strukturer och data i ett rent webbgränssnitt istället för standardterminalen.

Var försiktig med att använda phpMyadmin; du kan göra en del allvarlig skada och, om den inte är säkrad, kan det orsaka ett betydande säkerhetsproblem. För att hitta mer information, besök officiell dokumentation.


Inte vad du letade efter? Försök att söka efter ytterligare tutorials.