Jak nainstalovat PhpMyAdmin s Apache v systémech RHEL
V tomto článku vás provedeme krok za krokem procesem instalace nejnovější verze PhpMyAdmin s webovým serverem Apache v distribucích založených na RHEL, jako je CentOS Stream , Fedora, Rocky Linux a Alma Linux.
Co je to PhpMyAdmin?
PhpMyAdmin je oblíbený a výkonný webový nástroj pro správu databází a nejnovější verze vám zajistí přístup k nejaktuálnějším funkcím a vylepšením zabezpečení. Na konci této příručky budete moci snadno spravovat své databáze MySQL nebo MariaDB pomocí PhpMyAdmin.
Předpoklady
Než začneme, ujistěte se, že máte následující:
- Přístup k systému RHEL, CentOS Stream, Fedora, Rocky Linux nebo AlmaLinux.
- Ujistěte se, že se můžete přihlásit jako uživatel root nebo mít oprávnění sudo k instalaci softwaru.
- Stávající zásobník LAMP, který zahrnuje Apache, MySQL/MariaDB a PHP. Pokud nemáte LAMP, můžete jej nastavit podle těchto kroků.
Krok 1: Aktualizujte systém
Před instalací jakéhokoli softwaru je důležité zajistit, aby byl váš systém aktuální, spuštěním následujícího příkazu dnf.
sudo dnf update
Tím se aktualizují všechny balíčky ve vašem systému na nejnovější verze.
Krok 2: Nainstalujte webový server Apache
PhpMyAdmin je webový nástroj a k jeho používání je třeba nainstalovat webový server Apache pomocí následujícího příkazu.
sudo dnf install httpd
Po instalaci spusťte službu Apache a povolte její spuštění při startu.
sudo systemctl start httpd
sudo systemctl enable httpd
Krok 3: Nainstalujte MariaDB nebo MySQL
Budete také potřebovat databázový server. Můžete si vybrat instalaci MariaDB nebo MySQL, ale v tomto příkladu použijeme MariaDB.
sudo dnf install mariadb-server
Po instalaci spusťte službu MariaDB a povolte její spuštění při spuštění.
sudo systemctl start mariadb
sudo systemctl enable mariadb
Dále zabezpečte instalaci MariaDB spuštěním skriptu, který vás vyzve k zadání hesla pro uživatele root, zakáže vzdálené přihlášení root a odstraní anonymní uživatele. Odstraní také testovací databázi, ke které mají ve výchozím nastavení přístup anonymní uživatelé.
sudo mysql_secure_installation
Krok 4: Nainstalujte PHP
PhpMyAdmin je postaven na PHP, takže musíme nainstalovat PHP a některá požadovaná rozšíření pomocí následujícího příkazu.
sudo dnf install php php-mysqlnd php-json php-mbstring
Krok 5: Nainstalujte PhpMyAdmin
Nyní pokračujte v instalaci PhpMyAdmin na náš systém Linux tak, že přejdete do kořenového adresáře dokumentů webového serveru /var/www/html, jak je znázorněno.
cd /var/www/html
Dále si stáhněte nejnovější verzi PhpMyAdmin pomocí následujícího příkazu wget, jak je znázorněno.
sudo wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.tar.gz
Po stažení stažený archiv rozbalte a pro usnadnění přejmenujte adresář.
sudo tar -xvzf phpMyAdmin-latest-all-languages.tar.gz
sudo mv phpMyAdmin-*/ phpmyadmin
Vytvořte konfigurační soubor pro PhpMyAdmin.
sudo cp /var/www/html/phpmyadmin/config.sample.inc.php /var/www/html/phpmyadmin/config.inc.php
Upravte konfigurační soubor:
sudo nano /var/www/html/phpmyadmin/config.inc.php
Najděte následující řádek a nastavte si vlastní blowfish_secret:
$cfg['blowfish_secret'] = 'your_secret';
Uložte a ukončete soubor.
Krok 6: Otevřete port Apache na firewallu
Ve výchozím nastavení Apache běžně používá porty 80 a 443 pro HTTP a HTTPS, respektive. Chcete-li otevřít porty Apache a povolit přístup k PhpMyAdmin na vašem serveru, spusťte:
sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
sudo firewall-cmd --zone=public --add-port=443/tcp --permanent
sudo firewall-cmd --reload
Tyto příkazy přidají pravidlo povolující příchozí provoz na zadaném portu a znovu načtěte bránu firewall, aby se změny uplatnily.
Krok 7: Restartujte webový server Apache
Nakonec restartujte Apache, abyste použili změny:
sudo systemctl restart httpd
Krok 8: Přístup k PhpMyAdmin
Nyní můžete přistupovat k PhpMyAdmin prostřednictvím webového prohlížeče tak, že přejdete na adresu IP nebo název domény vašeho serveru a v adrese URL zadáte „/phpmyadmin“:
http://your_server_ip/phpmyadmin
Přihlaste se pomocí přihlašovacích údajů MySQL nebo MariaDB.
Krok 9: Povolte externí přístup v PhpMyAdmin
Otevřete konfigurační soubor PhpMyAdmin.
sudo vi /etc/httpd/conf/httpd.conf
Najděte sekci
nebo sekci, kde je nakonfigurován váš PhpMyAdmin, a aktualizujte direktivu Vyžadovat
, aby umožnila všechny IP adresy pro přístup k PhpMyAdmin.
<Directory "/var/www/html/phpmyadmin">
...
Require all granted
...
</Directory>
Výše uvedená konfigurace umožňuje přístup z libovolné IP adresy, ale pokud chcete omezit přístup ke konkrétním IP adresám, nahraďte Vyžadovat vše uděleno
za Vyžadovat ip your_ip
.
Pro použití změn restartujte Apache.
sudo systemctl restart httpd
Nyní byste měli mít přístup k PhpMyAdmin z vnějšího světa pomocí IP adresy nebo domény vašeho serveru.
http://your_server_ip/phpmyadmin
Pamatujte, že otevření přístupu k PhpMyAdmin z vnějšího světa může představovat bezpečnostní rizika. Ujistěte se, že máte k dispozici silný ověřovací mechanismus, a zvažte použití HTTPS pro šifrovanou komunikaci. Pokud je to možné, omezte přístup pouze na důvěryhodné adresy IP nebo zabezpečte přihlašovací adresu URL PhpMyAdmin.
Změňte přihlašovací adresu phpMyAdmin
Výchozí přihlašovací adresa URL pro phpMyAdmin je předvídatelná a běžně se na ni zaměřují útočníci, kteří se pokoušejí zneužít zranitelnosti. Změna přihlašovací adresy URL přidává další vrstvu zabezpečení a ztěžuje neoprávněným uživatelům přístup k rozhraní pro správu databáze.
Chcete-li tak učinit, vytvořte konfigurační soubor /etc/httpd/conf.d/phpMyAdmin.conf.
vi /etc/httpd/conf.d/phpMyAdmin.conf
Dále přidejte následující konfiguraci.
#Alias /phpMyAdmin /var/www/html/phpmyadmin
Alias /my /var/www/html/phpmyadmin
<Directory /var/www/htm/lphpmyadmin>
AddDefaultCharset UTF-8
<IfModule mod_authz_core.c>
# Apache 2.4
<RequireAny>
Require all granted
# Additional IP or hostname-based access control can be added here
</RequireAny>
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
Order Deny,Allow
Deny from All
Allow from 127.0.0.1
Allow from ::1
# Additional IP or hostname-based access control can be added here
</IfModule>
</Directory>
Nahraďte /my
požadovanou vlastní přihlašovací adresou URL. Uložte změny a ukončete textový editor.
Po provedení změn v konfiguračních souborech restartujte Apache a použijte změny:
systemctl restart httpd
Otevřete webový prohlížeč a přejděte na novou přihlašovací adresu phpMyAdmin.
http://yourdomain.com/my/
Nastavení SSL pro phpMyAdmin
Zabezpečení komunikace mezi webovým serverem Apache a phpMyAdminem je klíčové pro ochranu citlivých informací, jako jsou přihlašovací údaje a obsah databáze. Jedním z účinných způsobů, jak toho dosáhnout, je konfigurace SSL (Secure Socket Layer) pro phpMyAdmin na webovém serveru Apache.
Chcete-li tak učinit, nejprve na svůj server nainstalujte modul mod_ssl.
yum install httpd mod_ssl openssl
Dále vytvořte adresář pro uložení certifikátu a vygenerujte certifikát SSL s vlastním podpisem a soukromý klíč, jak je znázorněno.
mkdir /etc/httpd/ssl
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/httpd/ssl/apache.key -out /etc/httpd/ssl/apache.crt
Po vytvoření certifikátu SSL a klíče otevřete konfigurační soubor Apache SSL.
vi /etc/httpd/conf.d/ssl.conf
Dále přidejte do konfiguračního souboru následující řádky.
SSLEngine on
SSLCertificateFile /etc/httpd/ssl/apache.crt
SSLCertificateKeyFile /etc/httpd/ssl/apache.key
Uložte změny a restartujte webový server Apache.
systemctl restart httpd
Nyní otevřete konfigurační soubor phpMyAdmin.
vi /var/www/html/phpmyadmin/config.inc.php
Přidejte následující řádky, abyste vynutili SSL pro phpMyAdmin.
$cfg['ForceSSL'] = true;
Uložte změny a ukončete textový editor.
Nakonec otevřete webový prohlížeč a přejděte na následující adresu URL pro přístup k phpMyAdmin přes zabezpečené připojení SSL.
https://yourdomain.com/my/
Uvědomte si prosím, že zpráva označující nezabezpečené připojení je způsobena výhradně použitím certifikátu s vlastním podpisem. Chcete-li pokračovat, klikněte na „Upřesnit“ a potvrďte bezpečnostní výjimku.
Závěr
Gratulujeme! Úspěšně jste nainstalovali PhpMyAdmin s Apache na svůj systém RHEL, CentOS Stream, Rocky Linux nebo AlmaLinux. Tento webový nástroj zjednodušuje správu vašich databází, takže úkoly, jako je vytváření databáze, dotazy a správa dat, jsou hračkou.