Kako instalirati najnoviji phpMyAdmin s LEMP-om na Ubuntu 20.04

phpMyAdmin je besplatan administrativni alat otvorenog koda napisan PHP koristi za administriranje MySQL i MariaDB poslužitelji baza podataka od Web sučelje. Većina programera radije koristi phpMyAdmin za interakciju s poslužiteljem baze podataka zbog njegove jednostavnosti korištenja i naprednog SQL editora, što olakšava izradu i testiranje složenih SQL upita.

U sljedećem tutorialu naučit ćete kako instalirati LEMP i phpMyAdmin iz izvora na Ubuntu 20.04.

Preduvjeti

  • Preporučeni OS: Ubuntu 20.04 - neobavezna (Ubuntu 21.04 i Linux Mint 20)
  • Korisnički račun: Korisnički račun sa sudo ili root pristupom.
  • Potreban: Nginx, MariaDB i PHP (LEMP)

Ažuriranje operativnog sustava

Prvo, prije svega, ažurirajte svoj Ubuntu operativni sustav kako biste bili sigurni da su svi postojeći paketi ažurirani:

sudo apt update && sudo apt upgrade -y

Oglas


Nginx za phpMyAdmin

Dodajte prilagođeni PPA za najnoviji Nginx

S obzirom da postavljate phpMyAdmin s Nginxom, morat ćete instalirati web aplikaciju. Trenutno je najbolja metoda za većinu korištenje PPA od strane dobro poznatih Ondřej Surý, koji održava i Nginx i stabilnu verziju i stalno se ažurira.

Prvo dodajte stabilni ili glavni PPA na sljedeći način:

Nginx stabilan:

sudo add-apt-repository ppa:ondrej/nginx-stable -y && sudo apt update

Nginx Mainline (preporučeno):

sudo add-apt-repository ppa:ondrej/nginx-mainline -y && sudo apt update

Instalirajte Nginx

Nakon instaliranja stabilnog ili glavnog Nginx PPA, upotrijebite sljedeću naredbu za instalaciju Nginxa:

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

MariaDB za phpMyAdmin

Instalirajte MariaDB za Ubuntu 20.04

Prvo, morate instalirati MariaDB kako biste stvorili bazu podataka i korisničko ime kako slijedi:

sudo apt install mariadb-server

Napomena, ovo je starija verzija, a zadana instalacija je verzija 10.3. Molimo posjetite našu udžbenik ako želite instalirati noviju verziju MariaDB-a, kao što su 10.5 i 10.6.

Zatim pokrenite sigurnosnu skriptu ako ste prvi put instalirali svježu sa sljedećom naredbom:

sudo mysql_secure_installation

Dalje, slijedite u nastavku:

  • Postavljanje lozinke za korijen računi.
  • Uklanjanje root računa koji su dostupni izvan lokalnog hosta.
  • Uklanjanje računa anonimnih korisnika.
  • Uklanjanje testne baze podataka kojoj prema zadanim postavkama mogu pristupiti anonimni korisnici.

Napomena, koristite (I) ukloniti sve.

Napravite phpMyAdmin bazu podataka i korisničko ime

Prvo otvorite MariaDB i kreirajte novu bazu podataka za phpMyAdmin:

sudo mysql -u root

Zatim stvorite bazu podataka u terminalu MariaDB:

CREATE DATABASE phpmyadmindb;

Sada morate stvoriti korisnika i dodijeliti dopuštenja na sljedeći način:

GRANT ALL ON phpmyadmindb.* TO phpmyadminuser@localhost IDENTIFIED BY 'password here change';

Da biste završili, ispraznite privilegije i izađite sa sljedećim kodovima:

FLUSH PRIVILEGES;
QUIT;

Oglas


PHP za phpMyAdmin

Dodajte prilagođeni PPA za najnoviji PHP

Slično našoj instalaciji Nginxa, preporučuje se dodavanje PPA by Ondřej Surý, PHP održavatelj za Debian. Prilagođeni PPA ima sve najnovije verzije 7.4, 8.0 i najnoviju dolaznu verziju 8.1.

Dodajte PPA pomoću sljedeće naredbe:

sudo apt install software-properties-common && sudo add-apt-repository ppa:ondrej/php -y

Instalirajte PHP za Ubuntu 20.04

Sada možete instalirati PHP 7.4 ili PHP 8.0. Kako je PHP još uvijek noviji i možda ima više bugova s ​​phpMyAdmin-om, preporuča se za sada instalirati PHP 7.4. Da biste to postigli, koristite sljedeću naredbu terminala za instaliranje potrebnih paketa:

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-mcrypt php7.4-cli php7.4-curl php7.4-zip php7.4-gd

Instalirajte phpMyAdmin na Ubuntu 20.04

Prema zadanim postavkama, Ubuntu 20.04 spremište dolazi s phpMyAdmin i potrebnim ovisnostima. Međutim, kao i često kod izdanja Ubuntu LTS-a, verzija i izgradnja su daleko iza onoga što je trenutno dostupno iz izvora. Dakle, kao svrha ovog vodiča, preuzimat ćete s izvora na sljedeći način:

Preuzmite najnoviju izvornu verziju phpMyAdmin

Za početak posjetite phpMyAdmin preuzimanja stranicu za pronalaženje trenutno najnovije verzije. U vrijeme ovog vodiča, verzija 5.1.1 je najnovija.

Izvršite sljedeće kodove za automatsko preuzimanje najnovije verzije za sve jezike:

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

Ako želite preuzeti englesku verziju, zamijenite završni redak sljedećim:

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

Zatim izvucite arhivu pomoću sljedeće naredbe:

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

Ručno konfigurirajte phpMyAdmin

Izvučeni direktorij i njegove poddirektorije morate premjestiti u / Usr / share mjesto direktorija gdje phpMyAdmin prema zadanim postavkama očekuje pronaći svoje konfiguracijske datoteke. Da biste to učinili, koristite sljedeću naredbu:

sudo mv phpMyAdmin-*/ /usr/share/phpmyadmin

Prema zadanim postavkama, phpMyAdmin ne dolazi s a TMP direktorij pri instalaciji iz izvora, a ovo morate kreirati ručno:

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

Dodijelite ispravna dopuštenja korisniku www-data s phpMyAdmin direktorij:

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

U direktoriju phpMyAdmin uključena je zadana datoteka primjera konfiguracije. Morat ćete preimenovati ovu datoteku da phpMyAdmin prepozna konfiguraciju. Međutim, za sigurnosnu kopiju ćete koristiti CP naredba za stvaranje kopije i čuvanje zadane postavke kao sigurnosne kopije ako se na mjestu naprave pogreške /etc/usr/phpmyadmin/ direktorij.

kopija config.sample.inc.php do config.inc.php sa sljedećom naredbom:

sudo cp /usr/share/phpmyadmin/config.sample.inc.php /usr/share/phpmyadmin/config.inc.php

Zatim otvorite ovu datoteku pomoću željenog uređivača teksta. Za tutorijal se koristi uređivač nano teksta:

sudo nano /usr/share/phpmyadmin/config.inc.php

phpMyAdmin koristi a Blowfish šifra. Pomaknite se prema dolje do retka koji počinje s $cfg['blowfish_secret'].

Linije će izgledati na primjer:

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

Morat ćete dodijeliti niz od 32 nasumična znaka između pojedinačnih navodnika. Najlakši način da to postignete je korištenjem programa pwgen. Instalirati pwgen, koristite sljedeću naredbu terminala:

sudo apt install pwgen

Nakon instalacije, pokrenite sljedeću naredbu:

pwgen -s 32 1

Zatim ćete dobiti svoja 32 nasumična znaka za tajnu blowfish, primjer izlaza:

Kako instalirati najnoviji phpMyAdmin s LEMP-om na Ubuntu 20.04

Primjer dodavanja šifre u konfiguracijsku datoteku (Nemojte kopirati):

$cfg['blowfish_secret'] = 'kQVwa2yLI6FxA3LN6E7YcW3WgtTKTZ2j'

Ostatak zadanih postavki trebao bi raditi za većinu korisnika. Ako se vaš poslužitelj nalazi na drugom poslužitelju koji se nalazi u vašoj mreži, pronađite i promijenite liniju $cfg['Poslužitelji'][$i]['host'] = na onu privatne IP adrese. Primjer u nastavku:

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

Oglas


Napravite blok poslužitelja Nginx za phpMyAdmin

Da biste pristupili web sučelju phpMyAdmin, morat ćete stvoriti blok poslužitelja Nginx. Vrlo je preporučljivo da ovo bude odvojeno, a na poddomeni možete ga imenovati kako god želite kako biste pomogli kod sigurnosnih i grubih napada.

Prvo stvorite i otvorite svoj blok poslužitelja pomoću nano uređivača teksta na sljedeći način:

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

Zatim možete zalijepiti donji tekst u datoteku. Napomena, URL domene morate zamijeniti svojim vlastitim:

server {
  listen 80;
  listen [::]:80;
  server_name pma.example.com;
  root /usr/share/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/php7.4-fpm.sock;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
    include snippets/fastcgi-php.conf;
  }

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

Ako ste jedini koji tome pristupate sa statičke IP adrese, možete dodati sljedeći kod iznad prvog unosa lokacije. Primjer toga je u nastavku:

  allow <your ip address>;
  deny all; 

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

Ovo će prirodno blokirati svatko tko posjećuje stranicu s greškom 403 osim ako to dopušta vaša IP adresa. To, po prirodi, može zaustaviti sve grube napade u njihovim stazama, ali možda nije održivo za neke postavke.


Sada spremite koristeći (CTRL+O) i izađite sa (CTRL+X).

Testirajte svoj blok poslužitelja Nginx pokretanjem naredbe suhog pokretanja:

sudo nginx -t

Ako nemate pogreške, trebali biste dobiti sljedeći izlaz:

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

Sada ponovno pokrenite svoju Nginx uslugu kako bi promjene stupile na snagu:

sudo systemctl restart nginx

Pristup web korisničkom sučelju phpMyAdmin

Za pristup web sučelju otvorite željeni internetski preglednik i upišite pma.example.com s (primjer) vašom domenom. Trebali biste doći na ekran za prijavu na phpMyAdmin na sljedeći način:

Kako instalirati najnoviji phpMyAdmin s LEMP-om na Ubuntu 20.04

Prijavite se pomoću MariaDB korisničkog imena i lozinke koje ste prvobitno postavili na početku vodiča. Zatim ćete doći na glavni zaslon.

Kako instalirati najnoviji phpMyAdmin s LEMP-om na Ubuntu 20.04

Oglas


Instalirajte TLS certifikat

Da dalje siguran web sučelje phpMyAdmin, po želji možete instalirati besplatnu Encrypt TLS certifikat od Ubuntu zadano spremište.

Pokrenite sljedeću naredbu u svom Ubuntu terminalu:

sudo apt install certbot python3-certbot-nginx

Sada pokrenite sljedeću naredbu da biste dobili i instalirali TLS certifikat za Nginx i phpMyAdmin:

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --must-staple -d pma.example.com --email your-email-address

Tijekom instalacije certifikata, dobit ćete obavijest o primanju e-pošte EFF (Electronic Frontier Foundation). Odaberite Y ili N tada će se vaš TLS certifikat automatski instalirati i konfigurirati za vas.

Kako instalirati najnoviji phpMyAdmin s LEMP-om na Ubuntu 20.04

To je to, a vi ste instalirali SSL na vašem phpMyAdmin području. Svakako testirajte korištenjem besplatnog SSL testa kao što je DigiCert or SSL Labs.

Komentari i zaključak

U tutorialu ste naučili kako instalirati potrebne softverske ovisnosti te preuzeti i stvoriti ispravne direktorije za phpMyAdmin iz izvora. Općenito, korištenje phpMyAdmin je izvrstan alat za bilo koje upravljanje bazom podataka. Možete jednostavno kreirati baze podataka, korisnike, tablice i izvoditi uobičajene operacije poput brisanja i mijenjanja struktura i podataka u čistom web UI sučelju umjesto zadanog terminala.

Pretplati me
Obavijesti o
0 Komentari
Umetne povratne informacije
Pogledajte sve komentare
0
Volio bih vaše misli, molim vas komentirajte.x