Ako bezpečne nainštalovať phpMyAdmin na Linuxe
Spravujete servery MySQL a databázy Linux a súhlasíte s tým, že správa príkazového riadku nie je pre každého? Nebolo by pre zmenu pekné mať rozhranie na správu front-endu a netráviť viac času zisťovaním príkazov MySQL? Inštalácia phpMyAdmin by bola pre vás vynikajúcim riešením. Čítajte ďalej a dozviete sa, ako nainštalovať phpMyAdmin!
phpMyAdmin je webové rozhranie nad MySQL, vďaka čomu je správa databáz pohodlná a stačí len pár kliknutí. A v tomto návode sa naučíte, ako nainštalovať a nakonfigurovať phpMyAdmin, ktorý vám pomôže začať.
Dni náhodných výpadkov databázovej tabuľky sú na konci tohto návodu! Poď a zistíme, ako si zachrániť prácu!
Predpoklady
Ak chcete postupovať podľa tohto sprievodcu, budete potrebovať nasledujúce zdroje:
- Budete potrebovať server Ubuntu 18.04 (alebo vyšší).
- Root alebo sudo prístup na serveri.
- Server musí mať nainštalovaný zásobník Linux, Apache, MySQL, PHP (LAMP). Pozrite si časť Ako nainštalovať zásobník LAMP na Ubuntu 18.04.
- Ďalší počítač s klientom Secure Shell (SSH) obsahuje rozšírenie Putty, Bitvise alebo Chome SSH. Tento tutoriál bude používať predpripraveného klienta SSH v systéme Windows 10 (
ssh.exe).
Inštalácia phpMyAdmin
Existuje niekoľko spôsobov, ako nainštalovať phpMyAdmin na Ubuntu. Najrýchlejšia a najbežnejšia metóda inštalácie je pomocou predvoleného nástroja pokročilého balíka alebo apt. Pri inštalácii phpMyAdmin postupujte podľa nasledujúcich krokov.
1. Otvorte svojho klienta SSH a prihláste sa na server Ubuntu.
ssh username@server_name_or_IP2. Potom spustite nasledujúci príkaz na aktualizáciu vyrovnávacej pamäte zdrojov úložiska balíkov vášho servera. Zabezpečíte tým, že neskôr nainštalujete najnovšie dostupné verzie softvéru.
sudo apt update -yDv závislosti od internetového pripojenia vášho servera a zaťaženia systému môže dokončenie príkazu na aktualizáciu trvať niekoľko minút.
3. Ďalej spustite príkaz apt install nižšie a nainštalujte balík phpmyadmin spolu s php-mbstring a php-gettext balíky.
sudo apt install phpmyadmin php-mbstring php-gettext -y4. Počas inštalácie phpMyAdmin sa vás nastavenie opýta na sériu otázok potrebných pre konfiguráciu phpMyAdmin.
Stlačením klávesov so šípkami na obrazovke konfigurácie webového servera presuňte kurzor na apache2 a stlačením medzerníka vyberte. Vedľa vášho výberu by sa mal objaviť znak hviezdičky [*]. Po vykonaní výberu stlačte Enter.
5. Na ďalšej obrazovke sa zobrazí výzva na inštaláciu a konfiguráciu databázy phpMyAdmin, uistite sa, že je zvýraznené
6. Inštalačný proces automaticky vytvorí nový používateľský účet MySQL s názvom phpMyAdmin, do výzvy na zadanie hesla zadajte nové heslo účtu a stlačte kláves Enter. Z bezpečnostných dôvodov zvážte použitie silného hesla.
7. Pri nasledujúcej výzve Potvrdenie hesla znova zadajte heslo phpMyAdmin a stlačte Enter. Počkajte, kým sa dokončí konfigurácia a kým sa vráti príkazový riadok.
8. Po dokončení inštalačného programu spustite príkaz uvedený nižšie, aby ste potvrdili, že konfiguračný súbor phpMyAdmin Apache /etc/apache2/conf-enabled/phpmyadmin.conf existuje.
ls /etc/apache2/conf-enabled/Súbor phpmyadmin.conf obsahuje nastavenia phpMyAdmin vrátane umiestnenia inštalácie a databázového servera, ktorý sa má použiť. Vo väčšine prípadov nemusíte tento súbor upravovať manuálne.
9. Aby ste sa uistili, že webový server dokáže adekvátne interpretovať konfiguráciu phpMyAdmin, spustite nižšie uvedený príkaz a povoľte rozšírenie PHP mbstring.
sudo phpenmod mbstring10. Aby sa zmeny prejavili, reštartujte službu webového servera spustením nasledujúceho príkazu.
sudo systemctl restart apache211. Nakoniec potvrďte, že webový server beží spustením nižšie uvedeného príkazu.
sudo systemctl status apache2
Získate výstup podobný snímke obrazovky nižšie. Ako vidíte, stav služby webového servera Apache je aktívny (spustený).
Vytvorenie dedikovaného privilegovaného účtu phpMyAdmin
Keď inštalujete phpMyAdmin, proces nastavenia automaticky vytvorí predvolený používateľský účet MySQL s názvom phpmyadmin. Tento účet má však privilegovaný prístup iba k samotnej databáze phpMyAdmin a nemá možnosti globálneho správcu.
Namiesto zvýšenia privilégií predvoleného používateľa je praktickejšie vytvorenie nového privilegovaného účtu s vlastným používateľským menom. prečo? Pretože zlí herci sa zvyčajne zameriavajú na predvolené používateľské účty na hackovanie.
Ak chcete vytvoriť nový vyhradený účet privilegovaného správcu, postupujte takto.
1. Zadajte shell MySQL z terminálu spustením nižšie uvedeného príkazu.
sudo mysqlAlebo ak chcete zadať MySQL ako užívateľ root:
sudo mysql -u root -p2. Na výzvu MySQL> spustite príkaz CREATE USER nižšie a vytvorte nového používateľa s menom ata a heslom je pa$$word. Neváhajte nahradiť používateľské meno a heslo, ako uznáte za vhodné.
CREATE USER 'ata'@'localhost' IDENTIFIED BY 'pa$$word';Snímka obrazovky nižšie ukazuje, že vytvorenie používateľa bolo úspešné.
3. Ďalej spustite príkaz GRANT ALL PRIVILEGES nižšie. Tento príkaz poskytne používateľovi ata úplný prístup ku všetkým databázam. Pridanie klauzuly WITH GRANT OPTION dáva tomuto používateľovi možnosť udeliť privilégiá aj iným používateľom.
GRANT ALL PRIVILEGES ON *.* TO 'ata'@'localhost' WITH GRANT OPTION;4. Teraz, keď ste vytvorili používateľa a udelili mu privilégiá, ukončite shell MySQL.
exitPrihlásenie do webového portálu phpMyAdmin
Po všetkých úlohách inštalácie a konfigurácie, ktoré ste doteraz vykonali, je teraz čas otestovať, či všetko funguje tak, ako ste očakávali.
1. Otvorte v počítači nové okno prehliadača.
2. Prejdite na http://your_domain_or_IP/phpmyadmin, kde your_domain_or_IP je IP adresa alebo DNS záznam smerujúci na váš phpMyAdmin server.
3. Na stránke Vitajte v phpMyAdmin, ktorá sa načíta, zadajte používateľské meno a heslo, ktoré ste vytvorili v predchádzajúcej časti, a kliknite na tlačidlo Prejsť .
Po prihlásení by ste teraz mali vidieť portál phpMyAdmin, ako je uvedené nižšie.
4. Ak chcete otestovať oprávnenia účtu, kliknite na kartu Databáza a zobrazí sa zoznam všetkých databáz na serveri. Potom kliknite na odkaz Skontrolovať oprávnenia napravo od názvu ľubovoľnej databázy.
Ako môžete vidieť nižšie, účet ata má všetky privilégiá k tejto databáze. A vďaka tomuto privilégiu je pre tento používateľský účet dostupná aj funkcia Pridať používateľský účet, ktorá vám umožňuje udeliť privilégiá iným používateľom.
Ochrana stránky phpMyAdmin heslom
Pre svoju všadeprítomnosť je phpMyAdmin obľúbeným cieľom hackerov. Zavedenie niektorých opatrení na ochranu vašej inštalácie je prvoradé.
Jedným z najrýchlejších spôsobov zabezpečenia prístupu k inštalácii phpMyAdmin je umiestnenie brány pred celú aplikáciu. Vyžaduje si to implementáciu vstavaných funkcií overovania a autorizácie .htaccess Apache pomocou direktívy AllowOverride.
Umiestnenie príslušných smerníc do súboru .htaccess ďalej zlepšuje bezpečnosť tým, že zabraňuje neexistujúcim používateľom v prístupe na stránku phpMyAdmin. Pri implementácii tohto bezpečnostného opatrenia postupujte nasledovne.
1. Spustite príkaz uvedený nižšie a začnite upravovať konfiguračný súbor phpMyAdmin na termináli.
sudo nano /etc/apache2/conf-available/phpmyadmin.conf2. Ďalej nájdite sekciu a vložte direktívu AllowOverride All. Keď to urobíte, konfigurácia bude vyzerať podobne ako na obrázku nižšie.
Na zarážky nepoužívajte tabulátory. Namiesto toho použite medzery.
3. Po pridaní smernice uložte a zatvorte súbor stlačením Ctrl+X, Y a Enter.
4. Aby sa zmeny prejavili, reštartujte službu webového servera Apache.
sudo systemctl restart apache25. Teraz vytvorte a upravte súbor /usr/share/phpmyadmin/.htaccess.
Vytvorením súboru .htacces v adresári /usr/share/phpmyadmin sa použije pravidlo obmedzenia prístupu na celú aplikáciu phpMyAdmin
sudo nano /usr/share/phpmyadmin/.htaccess6. Skopírujte nižšie uvedené smernice a vložte ich do súboru .htaccess. Pri úprave súboru stlačte CTRL+X, Y a Enter na uloženie a zatvorenie.
# Sets the authentication type to require entering the username and password.
AuthType Basic
# The message that the server displays on the credential prompt.
AuthName "Restricted Files"
# Specifies the file's location containing the valid users and passwords list.
AuthUserFile /etc/phpmyadmin/.htpasswd
# Allows the user who successfully authenticated to continue accessing phpMyAdmin.
Require valid-userNie všetky webové prehliadače zobrazujú hodnotu direktívy AuthName počas výziev na overenie.
7. Teraz spustite príkaz uvedený nižšie a vytvorte nový autentifikačný súbor (.htpasswd). Nahraďte používateľské meno používateľským menom, ktoré chcete pridať.
sudo htpasswd -c /etc/phpmyadmin/.htpasswd usernamePo každom stlačení klávesu Enter zadajte a znova zadajte nové heslo.
Ak chcete pridať ďalších používateľov, spustite namiesto toho príkaz
sudo htpasswd /etc/phpmyadmin/.htpasswd Additionaluser, kdeadditionaluserje nové používateľské meno.
8. Nakoniec otvorte svoj prehliadač a prejdite na svoju adresu phpMyAdmin (https://názov_domény alebo_IP/phpmyadmin) a zadajte používateľské meno a heslo, ktoré ste vytvorili v predchádzajúcom kroku.
Ak ste zadali správne používateľské meno a heslo, zobrazí sa vám prihlasovacia stránka phpMyAdmin.
Na druhej strane, ak overenie zlyhá, dostanete odpoveď Neoprávnené, ako je uvedené nižšie.
Záver
Gratulujem k dosiahnutiu konca. Naučili ste sa, ako nainštalovať phpMyAdmin v systéme Linux, nakonfigurovať a zabezpečiť aplikáciu. S phpMyAdmin vo vašom arzenáli je teraz správa MySQL cez príkazový riadok len ďalšou možnosťou spolu s novým webovým portálom, ktorý ste si nainštalovali.
Nezastavujte sa tu? Tento tutoriál sotva poškriabal povrch toho, čo phpMyAdmin dokáže. Možno môžete zvýšiť bezpečnosť phpMyAdmin ešte viac pomocou certifikátov, prístupu HTTPS a zakázania prihlásenia root. Veľa štastia!


















