Kako instalirati PhpMyAdmin s Apacheom u RHEL sustavima


U ovom članku provest ćemo vas kroz korak po korak postupak instaliranja najnovije verzije PhpMyAdmin s web poslužiteljem Apache na distribucijama koje se temelje na RHEL-u kao što je CentOS Stream , Fedora, Rocky Linux i Alma Linux.

Što je PhpMyAdmin?

PhpMyAdmin je popularan i moćan alat za upravljanje bazom podataka temeljen na webu, a najnovija verzija osigurava vam pristup najnovijim značajkama i sigurnosnim poboljšanjima. Do kraja ovog vodiča moći ćete s lakoćom upravljati svojim MySQL ili MariaDB bazama podataka koristeći PhpMyAdmin.

Preduvjeti

Prije nego što počnemo, provjerite imate li sljedeće:

  • Pristup sustavu RHEL, CentOS Stream, Fedora, Rocky Linux ili AlmaLinux.
  • Provjerite možete li se prijaviti kao root korisnik ili imate sudo privilegije za instaliranje softvera.
  • Postojeći snop LAMP koji uključuje Apache, MySQL/MariaDB i PHP. Ako nemate LAMP, možete slijediti ove korake za postavljanje.

Korak 1: Ažurirajte sustav

Prije instaliranja bilo kojeg softvera, ključno je osigurati da je vaš sustav ažuran pokretanjem sljedeće naredbe dnf.

sudo dnf update

Ovo će ažurirati sve pakete na vašem sustavu na najnovije verzije.

Korak 2: Instalirajte Apache web poslužitelj

PhpMyAdmin je alat temeljen na webu, a da biste ga koristili, morate instalirati Apache web poslužitelj pomoću sljedeće naredbe.

sudo dnf install httpd

Nakon instaliranja, pokrenite uslugu Apache i omogućite joj da se pokrene pri pokretanju.

sudo systemctl start httpd
sudo systemctl enable httpd

Korak 3: Instalirajte MariaDB ili MySQL

Trebat će vam i poslužitelj baze podataka. Možete odabrati instalaciju MariaDB ili MySQL, ali mi ćemo u ovom primjeru koristiti MariaDB.

sudo dnf install mariadb-server

Nakon instaliranja, pokrenite uslugu MariaDB i omogućite joj da se pokrene pri pokretanju.

sudo systemctl start mariadb
sudo systemctl enable mariadb

Zatim osigurajte svoju MariaDB instalaciju pokretanjem skripte, koja će od vas tražiti da unesete lozinku za root korisnika, onemogućite udaljene root prijave i uklonite anonimne korisnike. Također će ukloniti testnu bazu podataka, kojoj prema zadanim postavkama mogu pristupiti anonimni korisnici.

sudo mysql_secure_installation

Korak 4: Instalirajte PHP

PhpMyAdmin izgrađen je pomoću PHP, tako da moramo instalirati PHP i neka potrebna proširenja pomoću sljedeće naredbe.

sudo dnf install php php-mysqlnd php-json php-mbstring

Korak 5: Instalirajte PhpMyAdmin

Sada nastavimo s instaliranjem PhpMyAdmin na našem Linux sustavu odlaskom na korijenski direktorij dokumenata web poslužitelja /var/www/html kao što je prikazano.

cd /var/www/html

Zatim preuzmite najnoviju verziju PhpMyAdmin pomoću sljedeće naredbe wget kao što je prikazano.

sudo wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.tar.gz

Nakon preuzimanja, izdvojite preuzetu arhivu i preimenujte direktorij radi praktičnosti.

sudo tar -xvzf phpMyAdmin-latest-all-languages.tar.gz
sudo mv phpMyAdmin-*/ phpmyadmin

Napravite konfiguracijsku datoteku za PhpMyAdmin.

sudo cp /var/www/html/phpmyadmin/config.sample.inc.php /var/www/html/phpmyadmin/config.inc.php

Uredite konfiguracijsku datoteku:

sudo nano /var/www/html/phpmyadmin/config.inc.php

Pronađite sljedeći redak i postavite svoj vlastiti blowfish_secret:

$cfg['blowfish_secret'] = 'your_secret';

Spremite i izađite iz datoteke.

Korak 6: Otvorite Apache port u vatrozidu

Prema zadanim postavkama, Apache obično koristi portove 80 i 443 za HTTP i HTTPS, odnosno. Da biste otvorili Apache portove i omogućili pristup PhpMyAdmin na vašem poslužitelju, pokrenite:

sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
sudo firewall-cmd --zone=public --add-port=443/tcp --permanent
sudo firewall-cmd --reload

Ove naredbe dodaju pravilo za dopuštanje dolaznog prometa na navedenom priključku i ponovno učitavaju vatrozid za primjenu promjena.

Korak 7: Ponovno pokrenite web poslužitelj Apache

Na kraju ponovno pokrenite Apache da primijenite promjene:

sudo systemctl restart httpd

Korak 8: Pristupite PhpMyAdmin

Sada možete pristupiti PhpMyAdmin putem svog web-preglednika navigacijom do IP adrese ili naziva domene vašeg poslužitelja nakon čega slijedi “/phpmyadmin” u URL-u:

http://your_server_ip/phpmyadmin

Prijavite se koristeći svoje MySQL ili MariaDB vjerodajnice.

Korak 9: Dopustite vanjski pristup u PhpMyAdmin

Otvorite konfiguracijsku datoteku PhpMyAdmin.

sudo vi /etc/httpd/conf/httpd.conf

Pronađite odjeljak ili odjeljak u kojem je vaš PhpMyAdmin konfiguriran i ažurira direktivu Require da omogući sve IP adrese za pristup PhpMyAdmin.

<Directory "/var/www/html/phpmyadmin">
    ...
    Require all granted
    ...
</Directory>

Gornja konfiguracija dopušta pristup s bilo koje IP adrese, ali ako želite ograničiti pristup na određene IP adrese, zamijenite Require all granted s Require ip your_ip.

Ponovno pokrenite Apache za primjenu promjena.

sudo systemctl restart httpd

Sada biste trebali moći pristupiti PhpMyAdmin iz vanjskog svijeta pomoću IP adrese ili domene vašeg poslužitelja.

http://your_server_ip/phpmyadmin

Imajte na umu da otvaranje pristupa PhpMyAdmin iz vanjskog svijeta može predstavljati sigurnosne rizike. Provjerite imate li jaki mehanizam provjere autentičnosti i razmislite o korištenju HTTPS-a za šifriranu komunikaciju. Osim toga, ograničite pristup samo na pouzdane IP adrese ako je moguće ili osigurajte URL za prijavu na PhpMyAdmin.

Promijenite URL za prijavu na phpMyAdmin

Zadani URL za prijavu za phpMyAdmin je predvidljiv i često ga napadaju zlonamjerni akteri koji pokušavaju iskoristiti ranjivosti. Promjena URL-a za prijavu dodaje dodatni sloj sigurnosti, što neovlaštenim korisnicima otežava pristup vašem sučelju za upravljanje bazom podataka.

Da biste to učinili, izradite konfiguracijsku datoteku /etc/httpd/conf.d/phpMyAdmin.conf.

vi /etc/httpd/conf.d/phpMyAdmin.conf

Zatim dodajte sljedeću konfiguraciju.

#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>

Zamijenite /my željenim prilagođenim URL-om za prijavu. Spremite promjene i izađite iz uređivača teksta.

Nakon što napravite promjene u konfiguracijskim datotekama, ponovno pokrenite Apache kako biste primijenili izmjene:

systemctl restart httpd

Otvorite svoj web preglednik i idite na novi phpMyAdmin URL za prijavu.

http://yourdomain.com/my/

Postavljanje SSL-a za phpMyAdmin

Osiguranje komunikacije između Apache web poslužitelja i phpMyAdmina ključno je za zaštitu osjetljivih informacija kao što su vjerodajnice za prijavu i sadržaj baze podataka. Jedan od učinkovitih načina da se to postigne je konfiguracija SSL (Secure Socket Layer) za phpMyAdmin na Apache web poslužitelju.

Da biste to učinili, prvo instalirajte modul mod_ssl na svoj poslužitelj.

yum install httpd mod_ssl openssl

Zatim stvorite direktorij za pohranu certifikata i generirajte samopotpisani SSL certifikat i privatni ključ kao što je prikazano.

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

Nakon izrade SSL certifikata i ključa, otvorite Apache SSL konfiguracijsku datoteku.

vi /etc/httpd/conf.d/ssl.conf

Zatim dodajte sljedeće retke u konfiguracijsku datoteku.

SSLEngine on
SSLCertificateFile /etc/httpd/ssl/apache.crt
SSLCertificateKeyFile /etc/httpd/ssl/apache.key

Spremite promjene i ponovno pokrenite Apache web poslužitelj.

systemctl restart httpd

Sada otvorite konfiguracijsku datoteku phpMyAdmin.

vi /var/www/html/phpmyadmin/config.inc.php

Dodajte sljedeće retke da forsirate SSL za phpMyAdmin.

$cfg['ForceSSL'] = true;

Spremite promjene i izađite iz uređivača teksta.

Na kraju, otvorite svoj web-preglednik i idite na sljedeći URL za pristup phpMyAdmin-u putem sigurne SSL veze.

https://yourdomain.com/my/

Imajte na umu da je poruka koja ukazuje na nesigurnu vezu isključivo posljedica korištenja samopotpisanog certifikata. Za nastavak kliknite na "Napredno" i potvrdite sigurnosnu iznimku.

Zaključak

Čestitamo! Uspješno ste instalirali PhpMyAdmin s Apacheom na vaš RHEL, CentOS Stream, Rocky Linux ili AlmaLinux sustav. Ovaj web-bazirani alat pojednostavljuje upravljanje vašim bazama podataka, čineći zadatke poput stvaranja baze podataka, upita i upravljanja podacima lakim.