Kako instalirati PhpMyAdmin sa Apacheom u RHEL sistemima
U ovom članku ćemo vas provesti kroz korak po korak proces instaliranja najnovije verzije PhpMyAdmin sa Apache web serverom na RHEL-baziranim distribucijama kao što je CentOS Stream >, Fedora, Rocky Linux, i Alma Linux.
Šta je PhpMyAdmin?
PhpMyAdmin je popularan i moćan web-bazirani alat za upravljanje bazom podataka, a posjedovanje najnovije verzije osigurava vam pristup najnovijim funkcijama 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 počnemo, uvjerite se da imate sljedeće:
- Pristup sistemu RHEL, CentOS Stream, Fedora, Rocky Linux ili AlmaLinux.
- Provjerite možete li se ili prijaviti kao root korisnik ili imate sudo privilegije za instaliranje softvera.
- Postojeći stog LAMP, koji uključuje Apache, MySQL/MariaDB i PHP. Ako nemate LAMP, možete slijediti ove korake da ga postavite.
Korak 1: Ažurirajte sistem
Prije instaliranja bilo kojeg softvera, ključno je osigurati da je vaš sistem ažuriran tako što ćete pokrenuti sljedeću dnf komandu.
sudo dnf update
Ovo će ažurirati sve pakete na vašem sistemu na najnovije verzije.
Korak 2: Instalirajte Apache Web server
PhpMyAdmin je alat zasnovan na webu, a da biste ga koristili, morate instalirati Apache web server koristeći sljedeću naredbu.
sudo dnf install httpd
Jednom instaliran, pokrenite Apache uslugu i omogućite joj da se pokrene pri pokretanju.
sudo systemctl start httpd
sudo systemctl enable httpd
Korak 3: Instalirajte MariaDB ili MySQL
Također će vam trebati server baze podataka. Možete odabrati da instalirate ili MariaDB ili MySQL, ali ćemo u ovom primjeru koristiti MariaDB.
sudo dnf install mariadb-server
Kada se instalira, 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, zabranite udaljenu root prijavu i uklonite anonimne korisnike. Također će ukloniti testnu bazu podataka, kojoj po defaultu mogu pristupiti anonimni korisnici.
sudo mysql_secure_installation
Korak 4: Instalirajte PHP
PhpMyAdmin je napravljen sa PHP, tako da moramo instalirati PHP i neka potrebna proširenja koristeći sljedeću naredbu.
sudo dnf install php php-mysqlnd php-json php-mbstring
Korak 5: Instalirajte PhpMyAdmin
Sada, nastavimo s instalacijom PhpMyAdmin na naš Linux sistem navigacijom do korijenskog direktorija dokumenata web servera /var/www/html kao što je prikazano.
cd /var/www/html
Zatim preuzmite najnoviju verziju PhpMyAdmin koristeći sljedeću naredbu wget kao što je prikazano.
sudo wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.tar.gz
Nakon preuzimanja, raspakirajte preuzetu arhivu i preimenujte direktorij radi praktičnosti.
sudo tar -xvzf phpMyAdmin-latest-all-languages.tar.gz
sudo mv phpMyAdmin-*/ phpmyadmin
Kreirajte konfiguracionu datoteku za PhpMyAdmin.
sudo cp /var/www/html/phpmyadmin/config.sample.inc.php /var/www/html/phpmyadmin/config.inc.php
Uredite konfiguracijski fajl:
sudo nano /var/www/html/phpmyadmin/config.inc.php
Pronađite sljedeću liniju i postavite vlastiti blowfish_secret:
$cfg['blowfish_secret'] = 'your_secret';
Sačuvajte i izađite iz datoteke.
Korak 6: Otvorite Apache port u firewalld-u
Prema zadanim postavkama, Apache obično koristi portove 80 i 443 za HTTP i HTTPS, respektivno. Da otvorite Apache portove i dozvolite pristup PhpMyAdmin na vašem serveru, 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 komande dodaju pravilo koje dozvoljava dolazni saobraćaj na navedenom portu i ponovo učitava zaštitni zid da primeni promene.
Korak 7: Ponovo pokrenite Apache Web server
Konačno, ponovo pokrenite Apache da primijenite promjene:
sudo systemctl restart httpd
Korak 8: Pristupite PhpMyAdmin-u
Sada možete pristupiti PhpMyAdmin putem vašeg web pretraživača tako što ćete otići do IP adrese ili imena domene vašeg servera praćenog "/phpmyadmin" u URL-u:
http://your_server_ip/phpmyadmin
Prijavite se koristeći svoje MySQL ili MariaDB vjerodajnice.
Korak 9: Dozvolite vanjski pristup u PhpMyAdmin
Otvorite PhpMyAdmin konfiguracijski fajl.
sudo vi /etc/httpd/conf/httpd.conf
Pronađite odjeljak
ili odjeljak u kojem je vaš PhpMyAdmin konfiguriran i ažurira Require
direktivu da omogući sve IP adrese za pristup PhpMyAdmin.
<Directory "/var/www/html/phpmyadmin">
...
Require all granted
...
</Directory>
Gornja konfiguracija dozvoljava pristup sa bilo koje IP adrese, ali ako želite ograničiti pristup na određene IP adrese, zamijenite Zahtijevaj sve odobrene
sa Zahtijevaj ip svoj_ip
.
Ponovo pokrenite Apache da primijenite promjene.
sudo systemctl restart httpd
Sada biste trebali moći pristupiti PhpMyAdmin iz vanjskog svijeta koristeći IP adresu ili domenu vašeg servera.
http://your_server_ip/phpmyadmin
Zapamtite, otvaranje pristupa PhpMyAdmin iz vanjskog svijeta može predstavljati sigurnosni rizik. Uvjerite se da imate jak mehanizam autentifikacije 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 sigurni URL za prijavu na PhpMyAdmin.
Promijenite URL za prijavu na phpMyAdmin
Zadani URL za prijavu za phpMyAdmin je predvidljiv i obično gađaju zlonamjerni akteri koji pokušavaju da iskoriste ranjivosti. Promjena URL-a za prijavu dodaje dodatni sloj sigurnosti, što otežava neovlaštenim korisnicima pristup vašem interfejsu za upravljanje bazom podataka.
Da biste to učinili, kreirajte /etc/httpd/conf.d/phpMyAdmin.conf konfiguracijski fajl.
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
sa vašim željenim prilagođenim URL-om za prijavu. Sačuvajte promene i izađite iz uređivača teksta.
Nakon što izvršite promjene u konfiguracijskim datotekama, ponovo pokrenite Apache da biste primijenili izmjene:
systemctl restart httpd
Otvorite svoj web pretraživač i idite na novi phpMyAdmin URL za prijavu.
http://yourdomain.com/my/
Postavljanje SSL-a za phpMyAdmin
Osiguravanje komunikacije između Apache web servera i phpMyAdmin-a je ključno za zaštitu osjetljivih informacija kao što su vjerodajnice za prijavu i sadržaj baze podataka. Jedan efikasan način da se to postigne je konfigurisanje SSL (Secure Socket Layer) za phpMyAdmin na Apache web serveru.
Da biste to učinili, prvo instalirajte mod_ssl modul na vaš server.
yum install httpd mod_ssl openssl
Zatim kreirajte 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 kreiranja SSL certifikata i ključa, otvorite Apache SSL konfiguracijsku datoteku.
vi /etc/httpd/conf.d/ssl.conf
Zatim dodajte sljedeće redove u konfiguracijski fajl.
SSLEngine on
SSLCertificateFile /etc/httpd/ssl/apache.crt
SSLCertificateKeyFile /etc/httpd/ssl/apache.key
Sačuvajte promene i ponovo pokrenite Apache web server.
systemctl restart httpd
Sada otvorite konfiguracionu datoteku phpMyAdmin.
vi /var/www/html/phpmyadmin/config.inc.php
Dodajte sljedeće redove da forsirate SSL za phpMyAdmin.
$cfg['ForceSSL'] = true;
Sačuvajte promene i izađite iz uređivača teksta.
Konačno, otvorite svoj web pretraživač i idite na sljedeći URL da biste pristupili phpMyAdminu preko 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. Da biste nastavili, kliknite na "Napredno" i potvrdite sigurnosni izuzetak.
Zaključak
Čestitamo! Uspješno ste instalirali PhpMyAdmin sa Apacheom na svoj RHEL, CentOS Stream, Rocky Linux ili AlmaLinux sistem. Ovaj alat zasnovan na webu pojednostavljuje upravljanje vašim bazama podataka, čineći zadatke poput kreiranja baze podataka, upita i upravljanja podacima lakim.