Ako nainštalovať phpMyAdmin s Apache (LAMP) na Ubuntu 18.04


Tento tutoriál vám ukáže, ako nainštalovať phpMyAdmin s Apache, MariaDB, PHP7.2 (zásobník LAMP) na Ubuntu 18.04 LTS. phpMyAdmin je bezplatný a open source webový nástroj na správu databáz napísaný v PHP. Poskytuje používateľom grafické webové rozhranie na správu databázy MySQL alebo MariaDB. Tiež sa naučíme, ako povoliť dvojfaktorovú autentifikáciu na phpMyAdmin.

phpMyAdmin umožňuje administrátorom:

  • prehliadať databázy a tabuľky;
  • vytvárať, kopírovať, premenovávať, meniť a rušiť databázy;
  • vytvárať, kopírovať, premenovávať, meniť a rušiť tabuľky;
  • vykonávať údržbu stola;
  • pridať, upraviť a vypustiť polia;
  • vykonať akýkoľvek príkaz SQL, dokonca aj viacero dotazov;
  • vytvárať, meniť a rušiť indexy;
  • načítať textové súbory do tabuliek;
  • vytvárať a čítať výpisy tabuliek alebo databáz;
  • export dát do formátov SQL, CSV, XML, Word, Excel, PDF a LaTeX;
  • spravovať viacero serverov;
  • spravovať používateľov a privilégiá MySQL;
  • skontrolujte nastavenia servera a informácie o čase spustenia pomocou konfiguračných rád;
  • kontrola referenčnej integrity v tabuľkách MyISAM;
  • vytvárať komplexné dotazy pomocou Query-by-example (QBE), automaticky
  • pripojenie požadovaných stolov;
  • vytvoriť PDF grafiku rozloženia databázy;
  • globálne vyhľadávanie v databáze alebo jej podmnožine;
  • transformovať uložené údaje do ľubovoľného formátu pomocou súboru preddefinovaných funkcií, ako je napríklad zobrazenie údajov BLOB ako obrázku alebo odkazu na stiahnutie;
  • spravovať tabuľky InnoDB a cudzie kľúče;

Predpoklady

Ak chcete postupovať podľa tohto návodu, potrebujete operačný systém Ubuntu 18.04 spustený na vašom lokálnom počítači alebo na vzdialenom serveri.

Ak hľadáte VPS (virtuálny súkromný server), môžete si vytvoriť účet na Vultr prostredníctvom môjho odkazu na sprostredkovanie a získať bezplatný kredit 50 USD (len pre nových používateľov). A ak potrebujete nastaviť phpMyAdmin s názvom domény, odporúčam kúpiť názvy domén od NameCheap, pretože cena je nízka a poskytujú ochranu súkromia whois zadarmo.

Predpokladá sa, že ste už nainštalovali zásobník LAMP na Ubuntu 18.04. Ak nie, pozrite si nasledujúci návod.

  • Ako nainštalovať zásobník LAMP (Apache, MariaDB, PHP7.2) na Ubuntu 18.04 LTS

S tým prekážkou, začnime s inštaláciou phpMyAdmin.

Krok 1: Stiahnite si a nainštalujte phpMyAdmin na Ubuntu 18.04

phpMyAdmin je súčasťou softvérového úložiska Ubuntu 18.04. takže ho môžeme ľahko nainštalovať pomocou príkazu nižšie.

sudo apt update
sudo apt install phpmyadmin

Vyššie uvedený príkaz nainštaluje všetky potrebné závislosti vrátane rozšírení PHP7. Počas inštalácie sa zobrazí výzva na výber webového servera, ktorý chcete nakonfigurovať. Stlačte medzerník a vyberte apache2. (Hviezdička * označuje vybratú položku). Potom stlačením klávesu Tab a Enter potvrďte svoj výber.

Na ďalšej obrazovke vyberte Áno na konfiguráciu databázy pre phpMyAdmin pomocou dbconfig-common.

Potom nastavte heslo pre používateľa phpmyadmin v MariaDB/MySQL.

Po vykonaní tohto kroku sa vytvorí nová databáza s názvom phpmyadmin a používateľ databázy phpmyadmin má potrebné oprávnenia na správu tejto databázy. Ak ste zvedaví ako ja, môžete sa prihlásiť do MariaDB a skontrolovať, aké privilégiá má používateľ phpmyadmin udelené.

Na prihlásenie na server MariaDB môžete použiť nasledujúci príkaz.

sudo mysql -u root

Potom skontrolujte oprávnenia používateľa phpmyadmin.

show grants for phpmyadmin@localhost;

Výkon :

Ako môžete vidieť, používateľ phpmyadmin má všetky privilégiá k databáze phpmyadmin. Teraz môžete skončiť vykonaním:

exit;

Teraz spustite nasledujúci príkaz a skontrolujte, či súbor /etc/apache2/conf-enabled/phpmyadmin.conf existuje.

file /etc/apache2/conf-enabled/phpmyadmin.conf

Ak sa v procese inštalácie nevyskytne žiadna chyba, mali by ste vidieť nasledujúci výstup príkazu.

/etc/apache2/conf-enabled/phpmyadmin.conf: symbolic link to ../conf-available/phpmyadmin.conf

Ak tento súbor na vašom serveri neexistuje, je pravdepodobné, že ste v sprievodcovi nastavením phpMyAdmin nevybrali webový server Apache. Môžete to opraviť pomocou nasledujúcich príkazov.

sudo ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf-available/phpmyadmin.conf

sudo a2enconf phpmyadmin

sudo systemctl reload apache2

Krok 2: Prístup k phpMyAdmin z podadresára

Pri inštalácii phpMyAdmin je konfiguračný súbor umiestnený na /etc/apache2/conf-enabled/phpmyadmin.conf, ktorý nám umožňuje prístup k phpMyAdmin cez podadresár. Ak ste na ten istý server Ubuntu 18.04 nainštalovali ďalšie webové aplikácie, ako je WordPress, potom jednoducho pridajte /phpmyadmin za názov domény do panela s adresou prehliadača.

your-domain.com/phpmyadmin

Ak je phpMyAdmin nainštalovaný na vašom lokálnom počítači Ubuntu, potom môžete získať prístup k webovému rozhraniu phpMyAdmin zadaním nasledujúceho textu do panela s adresou prehliadača.

localhost/phpmyadmin

Ak je pripojenie odmietnuté alebo sa nepodarilo dokončiť, môže existovať brána firewall, ktorá zabraňuje požiadavkám HTTP. Ak používate bránu firewall iptables, musíte spustiť nasledujúci príkaz na otvorenie portu TCP 80 a 443.

sudo iptables -I INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -I INPUT -p tcp --dport 443 -j ACCEPT

Ak používate bránu firewall UFW, spustite tento príkaz a otvorte port TCP 80 a 443.

sudo ufw allow http
sudo ufw allow https

Teraz môžete na prihlásenie do phpMyAdmin použiť používateľské meno a heslo MariaDB/MySQL

Krok 3: Prístup k phpMyAdmin zo subdomény

Ak váš server Ubuntu 18.04 nemá iného virtuálneho hostiteľa Apache, možno budete chcieť použiť subdoménu na prístup k webovému rozhraniu phpMyAdmin. Týmto spôsobom môžete povoliť HTTPS na šifrovanie prenosu.

Najprv musíme vytvoriť virtuálneho hostiteľa Apache pre phpMyAdmin. Existujúci konfiguračný útržok phpMyAdmin možno použiť ako šablónu. Skopírujeme to do nového súboru.

sudo cp /etc/apache2/conf-enabled/phpmyadmin.conf /etc/apache2/sites-available/phpmyadmin.conf

Potom upravte nový súbor pomocou textového editora príkazového riadka, ako je napríklad Nano.

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

Na začiatok tohto súboru pridajte nasledujúce riadky. Nahraďte pma.example.com vašou preferovanou subdoménou pre phpMyAdmin. Nezabudnite vytvoriť DNS A záznam pre túto subdoménu.

<VirtualHost *:80>
    ServerName pma.example.com
    DocumentRoot /usr/share/phpmyadmin

    ErrorLog ${APACHE_LOG_DIR}/pma.error.log
    CustomLog ${APACHE_LOG_DIR}/pma.access.log combined

Na koniec tohto súboru pridajte nasledujúci riadok.

</VirtualHost>

Uložte a zatvorte súbor. (Ak chcete uložiť súbor v textovom editore Nano, stlačte Ctrl+O, potom potvrďte stlačením klávesu Enter. Ak chcete ukončiť, stlačte Ctrl+X.) Potom povoľte tohto virtuálneho hostiteľa.

sudo a2ensite phpmyadmin.conf

Znova načítajte webový server Apache, aby sa táto zmena prejavila.

sudo systemctl reload apache2

Teraz by ste mali mať prístup k webovému rozhraniu phpMyAdmin cez

pma.example.com

Pred zadaním prihlasovacích údajov používateľa do prihlasovacieho formulára povoľme HTTPS.

Krok 4: Povoľte HTTPS na phpMyAdmin s Apache

Pre zabezpečenie webového rozhrania phpMyadmin môžeme nainštalovať bezplatný certifikát Let’s Encrypt TLS. Spustite nasledujúci príkaz a nainštalujte klienta Let’s Encrypt (certbot) zo softvérového úložiska Ubuntu 18.04.

sudo apt install certbot python3-certbot-apache

Python3-certbot-apache je doplnok Apache pre Certbot. Teraz spustite nasledujúci príkaz na získanie a inštaláciu certifikátu TLS.

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --must-staple -d pma.example.com --email [email 

Vysvetlenie:

  • -apache: Použite autentifikátor a inštalačný program Apache
  • -agree-tos: Súhlaste so zmluvnými podmienkami Let's Encrypt
  • -presmerovanie: Pridajte presmerovanie 301.
  • -hsts: Pridajte hlavičku Strict-Transport-Security do každej odpovede HTTP.
  • -staple-ocsp: Povolí zošívanie OCSP.
  • -must-staple: Pridá do certifikátu rozšírenie OCSP Must Staple.
  • Za príznakom -d nasleduje zoznam názvov domén oddelených čiarkou. Môžete pridať až 100 názvov domén.
  • -e-mail: E-mail používaný na registráciu a kontakt na obnovenie.

Zobrazí sa otázka, či chcete dostávať e-maily od EFF (Electronic Frontier Foundation). Po výbere Y alebo N sa váš certifikát TLS automaticky získa a nakonfiguruje za vás, čo je uvedené v správe nižšie.

Krok 5: Riešenie problémov s chybou prihlásenia phpMyAdmin

Ak sa pokúsite prihlásiť do phpMyAdmin pomocou root účtu MariaDB, môže sa vám zobraziť nasledujúca chyba.

#1698 - Access denied for user 'root '@'localhost'

a

mysqli_real_connect(): (HY000/1698): Access denied for user 'root '@'localhost'

Ak sa prihlásite pomocou používateľa phpmyadmin, vyššie uvedená chyba sa vám nezobrazí. Používateľa phpmyadmin však možno použiť iba na správu databázy phpmyadmin. Príčinou chyby je, že používateľ root MariDB je štandardne overený prostredníctvom zásuvného modulu unix_socket namiesto použitia zásuvného modulu mysql_native_password. Na vyriešenie tohto problému môžeme vytvoriť ďalšieho administrátora a udeliť mu všetky privilégiá.

Prihláste sa na server MariaDB z príkazového riadku.

sudo mysql -u root

Vytvorte administrátora s overením hesla.

create user admin@localhost identified by 'your-preferred-password';

Udeľte všetky privilégiá pre všetky databázy.

grant all privileges on *.* to admin@localhost with grant option;

Vyprázdniť oprávnenia a ukončiť;

flush privileges;

exit;

Teraz sa môžete prihlásiť do phpMyAmin pomocou účtu admin a spravovať všetky databázy.

Krok 6: Nainštalujte najnovšiu stabilnú verziu phpMyAdmin

Úložisko Ubuntu 18.04 sa dodáva s PHP7.2 a phpMyAdmin 4.6.6. Verziu phpMyAdmin si môžete skontrolovať v záhlaví prehliadača.

PHP7.2 však podporuje phpMyAdmin od verzie 4.7.4. Keď používate phpMyAdmin 4.6.6 s PHP7.2, na karte Export a import uvidíte nasledujúce varovné hlásenie.

parameter must be an array or an object that implements countable

Ak chcete vyriešiť problém s kompatibilitou, môžeme nainštalovať phpMyAdmin 4.9, čo je najnovšia stabilná verzia v čase písania tohto článku. Stiahnite si ho pomocou wget.

wget https://files.phpmyadmin.net/phpMyAdmin/4.9.0.1/phpMyAdmin-4.9.0.1-all-languages.zip

Tip: Na stiahnutie najnovšej stabilnej verzie phpMyAdmin môžete vždy použiť vyššie uvedený formát adresy URL. Jednoducho nahraďte 4.9.0.1 najnovším číslom verzie.

Potom ho extrahujte.

sudo apt install unzip

unzip phpMyAdmin-4.9.0.1-all-languages.zip

Zálohujte pôvodné súbory phpMyAdmin.

sudo mv /usr/share/phpmyadmin /usr/share/phpmyadmin-original

Presuňte phpMyadmin 4.9 do adresára /usr/share/phpmyadmin/.

sudo mv phpMyAdmin-4.9.0.1-all-languages /usr/share/phpmyadmin

Upravte konfiguračný súbor dodávateľa.

sudo nano /usr/share/phpmyadmin/libraries/vendor_config.php

Nájdite nasledujúci riadok.

define('CONFIG_DIR', '');

Zmeňte to na

define('CONFIG_DIR', '/etc/phpmyadmin/');

Uložte a zatvorte súbor. Potom vytvorte priečinok tmp na ukladanie súborov vyrovnávacej pamäte.

sudo mkdir /usr/share/phpmyadmin/tmp

Zmeňte vlastníctvo používateľa a vlastníctvo skupiny na www-data.

sudo chown www-data:www-data /usr/share/phpmyadmin/tmp

Teraz môžete používať phpMyAdmin 4.9 bez toho, aby ste videli chyby PHP.

Povoliť dvojfaktorové overenie

phpMyAdmin môžete posilniť aj povolením dvojfaktorovej autentifikácie, čo je funkcia pridaná vo verzii 4.8. Ak to chcete povoliť, prihláste sa do phpMyAdmin. Potom prejdite na Nastavenia -> Dvojfaktorové overenie a vyberte možnosť Aplikácia overenia totožnosti (2FA).

Po kliknutí na tlačidlo Konfigurovať dvojfaktorové overenie sa vám zobrazí kód QR, ktorý musíte naskenovať pomocou aplikácie na dvojfaktorové overenie v telefóne.

Google Authenticator je populárna aplikácia 2FA, ale odporúčam FreeOTP, čo je open source aplikácia 2FA vyvinutá spoločnosťou Red Hat. Po zadaní overovacieho kódu vygenerovaného vašou aplikáciou 2FA sa aktivuje dvojfaktorové overenie. Ak sa teraz odhlásite a znova prihlásite, musíte okrem používateľského mena a hesla zadať aj overovací kód.

Zabaliť sa

Dúfam, že vám tento návod pomohol nainštalovať phpMyAdmin s LAMP na Ubuntu 18.04. Ako vždy, ak ste považovali tento príspevok za užitočný, prihláste sa na odber nášho bezplatného bulletinu a získajte ďalšie tipy a triky. Opatruj sa 🙂

Súvisiace články