GNU/Linux >> Znalost Linux >  >> Ubuntu

Nainstalujte phpMyAdmin s LAMP Stack na Ubuntu 20.04 LTS

PhpMyAdmin je bezplatný a open source webový nástroj pro správu databází napsaný v programovacím jazyce PHP. Pomocí phpMyAdmin mohou správci databází snadno spravovat jeden a/nebo více databázových serverů buď prostřednictvím webového prohlížeče. To může být užitečné pro ty, kterým nevyhovuje MySQL prompt. phpMyAdmin umožňuje správcům databáze provádět nejrůznější úkoly správy databází, jako je vytváření, úpravy, přejmenování, mazání databází, import a export databází, vytváření tabulek, polí a polí, spouštění příkazů SQL a mnoho dalších. V tomto tutoriálu se chystáme nainstalovat phpMyAdmin se zásobníkem LAMP na serverový operační systém Ubuntu 20.04 LTS.

Nainstalujte phpMyAdmin se zásobníkem LAMP na Ubuntu 20.04 LTS

Chcete-li nainstalovat phpMyAdmin na server Ubuntu 20.04 LTS, měli byste mít funkční zásobník LAMP. Pokud jste ještě nenainstalovali zásobník LAMP, postupujte podle následujícího průvodce:

  • Nainstalujte Apache, MySQL, PHP (LAMP) Stack na Ubuntu 20.04 LTS

Jakmile nastavíte zásobník LAMP, povolte úložiště 'universe' , pokud již není povoleno.

$ sudo add-apt-repository universe
$ sudo apt update

Nyní nainstalujte phpMyAdmin a všechny další požadované závislosti na Ubuntu 20.04 pomocí příkazů:

$ sudo apt install phpmyadmin php-mbstring php-zip php-gd php-json php-curl

Dále vyberte webový server, který by měl být automaticky nakonfigurován pro spuštění phpMyAdmin. Vyberte webový server pomocí šipek NAHORU/DOLŮ a stiskněte klávesu MEZERNÍK. Jakmile zvolíte webový server, uvidíte před ním symbol * (hvězdička). Stiskněte klávesu TAB pro výběr OK a znovu stiskněte klávesu ENTER pro pokračování.

PhpMyAdmin vyžaduje instalaci a konfiguraci databáze, než ji bude možné používat. Můžete to udělat pomocí dbconfig-command.

Zvolte Ano pro konfiguraci databáze pro phpmyadmin pomocí dbconfig-common:

Pro registraci na databázovém serveru MySQL musíte zadat heslo pro phpmyadmin. Pokud heslo nezadáte, vygeneruje se náhodné heslo.

Zadejte silné heslo a pokračujte stisknutím klávesy ENTER:

Znovu zadejte heslo:

Když jsem psal tuto příručku, když jsem se pokusil nastavit heslo pro phpmyadmin, vyhodí to následující chybu:

 An error occurred while installing the database:
mysql said: ERROR 1819 (HY000) at line 1: Your password does not satisfy
 the current policy requirements . Your options are:                                  
* abort - Causes the operation to fail; you will need to downgrade,             
reinstall, reconfigure this package, or otherwise manually intervene          
to continue using it. This will usually also impact your ability to           
install other packages until the installation failure is resolved.            
* retry - Prompts once more with all the configuration questions                
(including ones you may have missed due to the debconf priority               
setting) and makes another attempt at performing the operation.               
* retry (skip questions) - Immediately attempts the operation again,            
skipping all questions. This is normally useful only if you have 
solved the underlying problem since the time the error occurred.              
* ignore - Continues the operation ignoring dbconfig-common errors.             
This will usually leave this package without a functional database.

K této chybě dochází, protože jsme povolili VALIDATE PASSWORD komponentu, jak je popsáno v části s názvem "2.2 Změna metody ověřování pro uživatele root MySQL" v návodu k instalaci zásobníku LAMP připojeném výše.

Chcete-li tento problém vyřešit, musíte dočasně zakázat komponentu Validate Password a znovu ji povolit po nastavení hesla pro phymyadmin. Kliknutím na OK zavřete výše uvedenou chybovou zprávu a zvolte "přerušit" zrušit instalaci phpmyadmin.

Nyní se přihlaste k výzvě Mysql spuštěním následujícího příkazu:

$ mysql -u root -p

Z příkazového řádku mysql vylaďte následující příkaz, abyste deaktivovali plugin Validate Password:

mysql> UNINSTALL COMPONENT "file://component_validate_password";

Upozorňujeme, že výše uvedený příkaz plugin pouze zakáže, ale neodebere jej. Můžete to povolit později. Poté zadejte „exit“ pro ukončení výzvy Mysql.

mysql> exit

Nyní zkuste znovu nainstalovat phpmyadmin pomocí příkazu:

$ sudo apt install phpmyadmin php-mbstring php-zip php-gd php-json php-curl

Zvolte "Ano" a stiskněte ENTER pro konfiguraci databáze pro phpmyadmin pomocí dbconfig-common. Tentokrát bude instalace phpmyadmin fungovat bez problémů.

Jakmile je phpmyadmin nainstalován, znovu povolte plugin Ověřit heslo. Chcete-li tak učinit, přihlaste se do výzvy Mysql:

$ mysql -u root -p

Z příkazového řádku mysql vylaďte následující příkaz, abyste deaktivovali plugin Validate Password:

mysql> INSTALL COMPONENT "file://component_validate_password";

Chcete-li nabídku mysql ukončit, zadejte příkaz exit.

mysql> exit

Nakonec povolte mbstring php a restartujte službu Apache, abyste aktualizovali změny, jak je uvedeno níže.

$ sudo phpenmod mbstring
$ sudo systemctl restart apache2

Nyní můžete ověřit, zda je rozšíření mbstring povoleno nebo ne, načtením souboru info.php z webového prohlížeče.

Chcete-li tak učinit, přejděte ve svém prohlížeči na adresu http://IP-adresa/info.php.

Uvidíte, že je povolen plugin mbstring.

Vytvořte vyhrazeného uživatele pro přístup k řídicímu panelu phpMyAdmin

Jakmile je phpMyAdmin nainstalován, uživatel databáze se jmenuje 'phpmyadmin' se automaticky vytvoří s heslem správce, které jste nastavili během instalace. K řídicímu panelu phpmyAdmin se můžete přihlásit pomocí uživatele 'phpmyadmin' nebo mysql root uživatel. Je však doporučeno vytvořit specializovaného uživatele pro správu databází prostřednictvím webového rozhraní phpMyAdmin.

Chcete-li tak učinit, přihlaste se do prostředí mysql pomocí příkazu:

$ mysql -u root -p

Zadejte své heslo root mysql. Nyní budete v prostředí mysql.

Chcete-li vytvořit nového vyhrazeného uživatele pro phpmyadmin, zadejte následující příkaz:

mysql> CREATE USER 'phpmyadminuser'@'localhost' IDENTIFIED BY 'Password123#@!';

Zde phpmyadmin je nový uživatel pro přístup k řídicímu panelu phpmyadmin. Heslo pro phpmyadminuser je Password123#@! . Nahraďte tyto hodnoty svými vlastními.

Dále udělte příslušná oprávnění 'phpmyadminuser' pomocí příkazu:

mysql> GRANT ALL PRIVILEGES ON *.* TO 'phpmyadminuser'@'localhost' WITH GRANT OPTION;

Nakonec ukončete prostředí mysql:

mysql> exit

Nyní jsme vytvořili vyhrazeného uživatele pro správu databází přes webové rozhraní phpmyadmin. Pokračujme a přistupme k řídicímu panelu phpmyadmin.

Přístup k řídicímu panelu phpMyAdmin

Otevřete webový prohlížeč a přejděte na http://ip-address/phpmyadmin nebo http://domena/phpmyadmin . Měli byste vidět přihlašovací stránku phpmyadmin. Přihlaste se do rozhraní phmyadmin buď pomocí mysql root uživatele nebo nového uživatele, kterého jsme vytvořili v předchozím kroku.

Takto vypadá řídicí panel phpMyAdmin:

Od této chvíle můžete spravovat své databáze prostřednictvím webového rozhraní phpMyAdmin.

Zabezpečte phpMyAdmin

Tato část poskytuje několik tipů pro zabezpečení instalace PhpMyAdmin. Vezměte prosím na vědomí, že následující kroky nemohou phpMyAdmin ochránit na 100 %. Nicméně alespoň zpomalí jakékoli pokusy pachatele proniknout do vašeho phpmyadmin dashboardu.

Zakažte přihlášení kořenového adresáře MySQL k řídicímu panelu phpmyadmin

Povolit uživateli root v mysql přístup k řídicímu panelu phpMyAdmin není bezpečné, zejména při správě databází přes síť. To je důvod, proč jsme v předchozí části vytvořili vyhrazeného uživatele. Protože již máme vyhrazeného uživatele, můžeme bezpečně zakázat přihlášení root mysql pro přístup k řídicímu panelu phpmyadmin, abychom minimalizovali útoky.

Obecně se phpmyadmin instaluje pod /usr/share/phpmyadmin/ adresář a jeho konfigurační soubory jsou uloženy v adresáři /etc/phpmyadmin.

Upravit konfigurační soubor phpmyadmin:

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

Přidejte/upravte následující parametry:

[...]
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['AllowRoot'] = FALSE;
[...]

Uložte a zavřete soubor.

Restartujte webový server Apache pomocí příkazu:

$ sudo systemctl restart apache2

Nyní se zkuste přihlásit do phpmyadmin jako uživatel root. Zobrazí se Přístup odepřen chybová zpráva:

Přihlašovací stránka phpMyAdmin s ochranou heslem

Protože je phpMyAdmin snadným cílem útočníků, dalším doporučeným úkolem je zabezpečit webovou přihlašovací stránku phpyMyAdmin. Nejběžnějším způsobem ochrany phpMyAdmin před neoprávněným přístupem je použití vestavěného .htaccess v Apache. autentizační a autorizační funkce.

Nejprve povolte použití .htaccess soubor přepíše úpravou /phpmyadmin.conf soubor:

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

Přidejte „AllowOverride All“ řádku v sekce, jak je uvedeno níže.

<Directory /usr/share/phpmyadmin>
    Options SymLinksIfOwnerMatch
    DirectoryIndex index.php
    AllowOverride All

Stiskněte CTL+X následuje Y uložte a zavřete soubor.

Restartujte službu apache a aktualizujte změny pomocí příkazu:

$ sudo systemctl restart apache2

Dále vytvořte soubor s názvem .htaccess v rámci /usr/share/phpmyadmin/ adresář pomocí příkazu:

$ sudo nano /usr/share/phpmyadmin/.htaccess

Přidejte do něj následující řádky:

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

Uložte a zavřete soubor.

Nyní spusťte následující příkaz a vytvořte nového uživatele, například ostechnix :

$ sudo htpasswd -c /etc/phpmyadmin/.htpasswd ostechnix

Nahraďte 'ostechnix' libovolným uživatelským jménem dle vašeho výběru. Budete požádáni o zadání hesla pro nového uživatele. Zadejte jej dvakrát.

Ukázkový výstup:

New password: 
Re-type new password: 
Adding password for user ostechnix

Nyní jsme přidali další vrstvu zabezpečení pro přístup k webovému rozhraní phpMyAdmin. Od této chvíle, kdykoli se pokusíte vstoupit do webového rozhraní phpMyAdmin, budete vyzváni k zadání dalšího uživatelského jména a jeho hesla, které jste právě nakonfigurovali v předchozím kroku.

Jakmile zadáte správné uživatelské jméno a heslo, budete přesměrováni na skutečnou přihlašovací stránku phpmyadmin. Pro přístup k řídicímu panelu Phpmyadmin stačí zadat přihlašovací údaje k databázi.

Související čtení:

  • Nainstalujte phpMyAdmin s LEMP Stack na Ubuntu 20.04 LTS

Ubuntu
  1. Nainstalujte WordPress s LAMP Stack na Ubuntu 20.04

  2. Nainstalujte phpMyAdmin na Ubuntu 14.10

  3. Jak nainstalovat LAMP Stack na Ubuntu 22.04 LTS

  1. Jak nainstalovat phpMyAdmin se zásobníkem LAMP na Ubuntu

  2. Nainstalujte phpMyAdmin s LAMP Stack na Ubuntu 18.04 LTS

  3. Nainstalujte phpMyAdmin s LEMP Stack na Ubuntu 20.04 LTS

  1. Nainstalujte MEAN.JS Stack v Ubuntu 18.04 LTS

  2. Jak nainstalovat WordPress s LAMP Stack na Ubuntu 20.04

  3. Jak nainstalovat phpMyAdmin s Apache (LAMP) na Ubuntu 18.04