Ako nainštalovať phpMyAdmin na Ubuntu 22.04


Tento návod existuje pre tieto verzie OS

  • Ubuntu 24.04 (Noble Numbat)
  • Ubuntu 22.04 (Jammy Jellyfish)
  • Ubuntu 18.04 (Bionic Beaver)

Na tejto stránke

  1. Predpoklady
  2. Inštalácia phpMyAdmin
  3. Zabezpečenie inštalácie phpMyAdmin
  4. Zmeňte adresu URL cesty inštalácie phpMyAdmin
  5. Zabezpečenie phpMyAdmin pomocou Apache2 Basic Auth
  6. Blokovanie pokusu o prihlásenie phpMyAdmin pomocou väzenia Fail2ban
  7. Záver

phpMyAdmin je bezplatný a open-source nástroj na správu a správu serverov MySQL. Dá sa použiť na správu aj viacerých serverov MySQL na rôznych miestach. phpMyAdmin je webová aplikácia napísaná v PHP a možno ju spustiť pod zásobníkom LAMP (Linux, Apache2, MariaDB/MySQL, PHP) alebo LEMP (Linux, Nginx, MariaDB/MySQL, PHP-FPM). phpMyAdmin je veľmi výkonná aplikácia a stala sa široko používanou aplikáciou na správu serverov MySQL, poskytuje rozsiahlu dokumentáciu a wiki.

phpMyAdmin vám umožňuje spravovať údaje MySQL z webového prehliadača, môžete spravovať databázy, tabuľky, stĺpce, indexy, vzťahy, používateľov, povolenia atď. z jediného používateľského rozhrania dashboardu vo vašom webovom prehliadači. phpMyAdmin vám tiež umožňuje importovať a exportovať údaje na server MySQL. Údaje CSV a SQL môžete importovať do svojho MySQL a tiež exportovať údaje do viacerých formátov, ako sú CSV, SQL, XML, Latex, XML, PDF a OpenDocument text a tabuľkový procesor.

V tomto návode vám ukážeme, ako nainštalovať a nakonfigurovať phpMyAdmin na najnovšom serveri Ubuntu 22.04. Tento tutoriál tiež obsahuje niektoré dodatočné konfigurácie na zabezpečenie inštalácie phpMyAdmin.

Predpoklady

  • Počítač Ubuntu 22.04 – môžete použiť serverovú alebo desktopovú verziu Ubuntu.
  • Používateľ bez oprávnenia root s oprávneniami správcu typu root.
  • Na stroji je nainštalovaný zásobník LAMP. Tento príklad používa základnú inštaláciu LAMP Stack (Linux, Apache2, MariaDB a PHP).

Inštalácia phpMyAdmin

V najnovšej verzii ubuntu 22.04 je balík phpMyAdmin dostupný v oficiálnom úložisku Ubuntu Universe. Pred inštaláciou phpMyAdmin sa teda uistite, že je vo vašom systéme povolený repozitár Ubuntu Universe.

V súčasnom stave Ubuntu poskytuje phpMyAdminv5.x, čo je najnovšia stabilná verzia phpMyAdmin.

Pred začatím inštalácie balíkov spustite nasledujúci príkaz, aby ste aktualizovali a obnovili svoje úložiská Ubuntu.

sudo apt update

Uistite sa, že je vo vašom systéme povolený repozitár Ubuntu APT Universe.

Teraz skontrolujte balík phpmyadmin pomocou nasledujúceho príkazu.

sudo apt info phpmyadmin

Ako môžete vidieť na nasledujúcej snímke obrazovky, repozitár Ubuntu APT poskytuje phpMyAdmin v5.x a je dostupný v úložisku Ubuntu Universe.

Ďalej môžete nainštalovať balík phpMyAdmin pomocou nižšie uvedeného príkazu.

sudo apt install phpmyadmin

Inštaláciu potvrďte zadaním Y a začnite stlačením klávesu ENTER. Teraz prebieha inštalácia phpMyAdmin.

Počas inštalácie phpMyAdmin budete požiadaní o nasledujúce konfigurácie:

Vyberte webový server pre phpMyAdmin. V tomto príklade je webový server apache2, potom vyberte OK.

Teraz vyberte Áno a začnite konfigurovať phpMyAdmin pomocou dbconfig-common. Toto automaticky vykoná všetky konfigurácie databázy pre phpMyAdmin.

V prípade hesla databázy phpMyAdmin môžete ponechať prázdne alebo môžete zadať svoje vlastné heslo a potom vybrať možnosť OK. Ak ho necháte prázdne, dbconfig-common automaticky vygeneruje heslo pre váš phpMyAdmin.

Nakoniec otvorte webový prehliadač a navštívte IP adresu servera s cestou URL /phpmyadmin (napr.: http://192.168.10.15/phpmyadmin). A teraz získate prihlasovaciu stránku phpMyAdmin.

Zadajte používateľa a heslo svojho servera MariaDB a potom sa prihláste kliknutím na tlačidlo Prejsť.

Po prihlásení sa vám nižšie zobrazí panel phpMyAdmin. Ako môžete vidieť, phpMyAdmin 5.x je nainštalovaný na počítači Ubuntu 22.04 s Apache2, MariaDB 10.x a PHP 8.1.

Zabezpečenie inštalácie phpMyAdmin

Po nainštalovaní phpMyAdmin. ďalej sa dozviete, ako zabezpečiť inštaláciu phpMyAdmin.

Nižšie sa dozviete tri spôsoby zabezpečenia inštalácie phpMyAdmin na vašom systéme Ubuntu:

  • Zmeniť adresu URL cesty inštalácie phpMyAdmin: Predvolená inštalácia phpMyAdmin je k dispozícii na adrese URL path /phpmyadmin, ktorú môžu útočníci ľahko uhádnuť. Predvolenú cestu môžete zmeniť na adresu URL vlastnej cesty.
  • Dodatočná autentifikácia pomocou Apache2 Basic Auth: V tomto scenári sa používateľom zobrazí základné overenie Apache2 pred zobrazením prihlasovacej stránky phpMyAdmin. Toto pridá ďalšiu autentifikáciu, takže iba používateľom na zozname základných autorizácií Apache2 sa zobrazí prihlasovacia stránka phpMyAdmin a budú sa môcť prihlásiť do phpMyAdmin.
  • Blokovanie pokusu o prihlásenie phpMyAdmin pomocou väzenia Fail2ban: Na vašom počítači Ubuntu budete musieť nainštalovať a nakonfigurovať fail2ban. Toto zakáže IP adresu škodlivých pokusov o prihlásenie do phpMyAdmin. Môžete tiež nastaviť maximálny pokus o prihlásenie do väzenia Fail2ban.

Teraz začnime so zabezpečením phpMyAdmin pomocou troch rôznych metód.

Zmeňte adresu URL cesty inštalácie phpMyAdmin

Predvolená inštalácia phpMyAdmin prichádza s dodatočnou konfiguráciou pre webový server apache2, konfigurácia je súbor /etc/phpmyadmin/apache.conf. Ak chcete zmeniť predvolenú cestu URL inštalácie phpMyAdmin, budete musieť upraviť konfiguráciu /etc/phpmyadmin/apache2.conf a reštartovať službu Apache2.

Upravte konfiguračný súbor /etc/phpmyadmin/apache.conf pomocou nano editora.

sudo nano /etc/phpmyadmin/apache.conf

Zmeňte možnosť „Alias /phpmyadmin“ na svoju novú cestu ULR. V nižšie uvedenom príklade bude phpMyAdmin dostupný na adrese URL cesty /padm.

Alias /padm /usr/share/phpmyadmin

Po dokončení uložte a zatvorte súbor.

Potom skontrolujte a overte konfiguráciu Apache2 pomocou nižšie uvedeného príkazu. Ak je vaša konfigurácia správna, dostanete výstupnú správu, ako napríklad "Syntax OK".

sudo apchectl configtest

Teraz reštartujte službu Apache2, aby ste použili nové zmeny v súbore /etc/phpmyadmin/apache.conf.

sudo systemctl restart apache2

Vráťte sa do webového prehliadača a navštívte phpMyAdmin s novou cestou URL /padm (napr. http://192.168.10.15/padm). Ovládací panel phpMyAdmin získate na nasledujúcej snímke obrazovky.

Teraz ste úspešne zmenili predvolenú cestu URL inštalácie phpMyAdmin na novú cestu URL /padm.

Zabezpečenie phpMyAdmin pomocou Apache2 Basic Auth

Apache2 basic auth je metóda autentifikácie poskytovaná modulom Apache mod_basic_auth. Ak chcete nastaviť základné overenie Apache2, budete musieť vygenerovať súbor s heslom a nastaviť súbor .htaccess v koreňovom adresári dokumentov phpMyAdmin.

Teraz spustite príkaz uvedený nižšie na vygenerovanie nového základného auth súboru Apache2 /etc/phpmyadmin/.htpasswd s novým používateľom s názvom padm. Ak nemáte príkaz htpasswd, budete si musieť do systému nainštalovať balík apache2-utils.

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

Teraz zadajte heslo pre Apache2 basic auth user padm a zopakujte heslo. Tým sa vygeneruje nový súbor hesiel /etc/phpmyadmin/.htpasswd.

Potom upravte konfiguráciu /etc/phpmyadmin/apache.conf pomocou nano editora.

sudo nano /etc/phpmyadmin/apache.conf

Pridajte konfiguráciu do "" ako je uvedené nižšie.

<Directory /usr/share/phpmyadmin>
...
...
AllowOverride All

Po dokončení uložte a zatvorte súbor.

Potom spustite príkaz uvedený nižšie, aby ste povolili modul Apache2 mod_rewrite.

sudo a2enmod rewrite

Vytvorte nový súbor /usr/share/phpmyadmin/.htaccess pomocou nano editora.

sudo nano /usr/share/phpmyadmin/.htaccess

Pridajte do súboru nasledujúcu konfiguráciu.

AuthType Basic
AuthName "Restricted Files"
AuthUserFile /etc/phpmyadmin/.htpasswd
Require valid-user

Po dokončení uložte a zatvorte súbor.

Teraz reštartujte službu Apache2, aby ste použili nové zmeny.

sudo systemctl restart apache2

Nakoniec sa vráťte do webového prehliadača a obnovte adresu URL phpMyAdmin (napr. http://192.168.10.15/padm). Teraz budete vyzvaní na základné overenie Apache2.

Zadajte používateľovi padm svoje heslo a kliknite na tlačidlo Prihlásiť sa. Ak sa váš používateľ a heslo zhodujú s konfiguráciou /etc/phpmyadmin/.htpasswd súbor, potom budete môcť získať dashboard phpMyAdmin, inak sa zobrazí chybové hlásenie, ako napríklad „421 Unauthorized“.

Teraz ste zabezpečili phpMyAdmin so základnou autentifikáciou Apache2. Túto metódu odporúčame použiť s certifikátmi SSL na webovom serveri Apache2.

Blokovanie pokusu o prihlásenie phpMyAdmin pomocou väzenia Fail2ban

V tomto scenári budete musieť nainštalovať a nakonfigurovať Fail2ban na vašom počítači ubuntu. Použitie väzenia Fail2ban obmedzí zlyhanie autentifikácie proti phpMyAdmin a obmedzí útok hrubou silou. Fail2ban bude blokovať všetky zistené škodlivé pokusy o prihlásenie do phpMyAdmin.

Failban funguje tak, že kontroluje log súbor aplikácie, takže budete musieť povoliť log súbor pre phpMyAdmin.

Upravte konfiguráciu phpMyAdmin /etc/phpmyadmin/config.inc.php pomocou nano editora.

sudo nano /etc/phpmyadmin/config.inc.php

Pridajte nasledujúcu konfiguráciu na koniec riadku. Toto zaznamená celú autentifikáciu phpMyAdmin do súboru Syslog /var/log/auth.log.

...
...
...
$cfg['AuthLog'] = 'syslog';

Po dokončení uložte a zatvorte súbor.

Potom upravte konfiguráciu väzenia Fail2ban /etc/fail2ban/jail.local pomocou nano editora.

sudo nano /etc/fail2ban/jail.local

Vyhľadajte väzenie s názvom „phpmyadmin-syslog“ a pridajte možnosť „enabled=true“, aby ste povolili väzenie.

[phpmyadmin-syslog]
enabled = true
port    = http,https
logpath = %(syslog_authpriv)s
backend = %(syslog_backend)s

Po dokončení uložte a zatvorte súbor.

Teraz reštartujte službu Fail2ban pomocou nižšie uvedeného príkazu, aby ste použili novú konfiguráciu väzenia.

sudo systemctl restart fail2ban

Ak chcete overiť väzenie "phpmyadmin-syslog", spustite príkazy fail2ban-client nižšie.

Kontrola zoznamu povolených väzení Fail2ban.

sudo fail2ban-client status

Kontrola podrobností o väzení Fail2ban phpmyadmin-syslog.

sudo fail2ban-client status phpmyadmin-syslog

Nižšie si môžete pozrieť podrobný stav väzenia phpmyadmin-syslog. Na nižšie uvedenej snímke obrazovky môžete vidieť, že jedna IP adresa „192.168.10.1“ je blokovaná funkciou Fail2ban.

Ak skontrolujete protokolový súbor /var/log/auth.log pomocou nižšie uvedeného príkazu.

cat /var/log/auth.log

Nižšie uvidíte protokoly z autentifikácie phpMyAdmin. Môžete vidieť, že IP adresa „192.168.10.1“ bola rozpoznaná ako škodlivé prihlásenie z dôvodu použitia nesprávneho používateľa a hesla.

V tomto bode ste zabezpečili phpMyAdmin pomocou viacerých rôznych metód, ďalšou úvahou je použitie SSL na každom virtuálnom hostiteľovi na vašom serveri. Vďaka tomu je váš phpMyAdmin ešte bezpečnejší, pretože SSL šifruje spojenia medzi vaším webovým prehliadačom a serverom.

Záver

gratulujem! Teraz ste sa naučili, ako nainštalovať a nakonfigurovať phpMyAdmin na najnovšom Ubuntu 22.04. Tiež ste sa naučili niekoľko metód na zabezpečenie inštalácie phpMyAdmin vrátane zmeny predvolenej adresy URL cesty, pridania autentifikácie pomocou základného overenia Apache2 a blokovania škodlivých pokusov o prihlásenie pomocou Fail2ban Jail.