Hoe PhpMyAdmin te installeren met Apache in RHEL-systemen

In deze artikel gaan we u stap voor stap door het proces leiden van het installeren van de nieuwste versie van PhpMyAdmin met de Apache web server op RHEL-gebaseerde distributies zoals CentOS Stream, Fedora, Rocky Linux, en Alma Linux.

Wat is PhpMyAdmin?

PhpMyAdmin is een populaire en krachtige webgebaseerd hulpmiddel voor databasemanagement, en het hebben van de nieuwste versie zorgt ervoor dat u toegang hebt tot de meest recente functies en beveiligingsverbeteringen. Uiteindelijk zult u in staat zijn om uw MySQL of MariaDB-databases te beheren met gemak met behulp van PhpMyAdmin.

Vereisten

Voordat we beginnen, zorg er dan voor dat u het volgende heeft:

  • Toegang tot een RHEL, CentOS Stream, Fedora, Rocky Linux of AlmaLinux-systeem.
  • Zorg ervoor dat u zich als root-gebruiker kunt aanmelden of dat u sudo-rechten heeft om software te installeren.
  • Een bestaande LAMP stack, die Apache, MySQL/MariaDB en PHP omvat. Als je geen LAMP hebt, kun je deze stappen volgen om het in te stellen.

Stap 1: Werk het systeem bij

Voordat je software installeert, is het van cruciaal belang om ervoor te zorgen dat je systeem up-to-date is door de volgende dnf command uit te voeren.

sudo dnf update
Update Linux System

Dit zal alle pakketten op je systeem bijwerken naar de nieuwste versies.

Stap 2: Installeer de Apache Web Server

PhpMyAdmin is een web-based tool, en om deze te gebruiken, moet je de Apache web server installeren met behulp van de volgende opdracht.

sudo dnf install httpd
Install Apache in Linux

Zodra geïnstalleerd, start de Apache service en zet deze in om op te starten bij het opstarten.

sudo systemctl start httpd
sudo systemctl enable httpd

Stap 3: Installeer MariaDB of MySQL

Je hebt ook een database server nodig. Je kunt kiezen om MariaDB of MySQL te installeren, maar we kiezen in dit voorbeeld voor MariaDB.

sudo dnf install mariadb-server
Install MariaDB in Linux

Zodra geïnstalleerd, start de MariaDB service en zet deze in om op te starten bij het opstarten.

sudo systemctl start mariadb
sudo systemctl enable mariadb

Vervolgens beveilig je je MariaDB-installatie door het script uit te voeren, waarbij je wordt gevraagd een wachtwoord in te voeren voor de root-gebruiker, externe root-login te verbieden en anonieme gebruikers te verwijderen. Het verwijdert ook de testdatabase, die standaard toegankelijk is voor anonieme gebruikers.

sudo mysql_secure_installation
Secure MariaDB in Linux

Stap 4: PHP installeren

PhpMyAdmin is gebouwd met PHP, dus we moeten PHP en enkele vereiste extensies installeren met de volgende opdracht.

sudo dnf install php php-mysqlnd php-json php-mbstring
Install PHP in Linux

Stap 5: PhpMyAdmin installeren

Laten we nu doorgaan met het installeren van PhpMyAdmin op ons Linux-systeem door naar de documentrootmap van de webserver te navigeren /var/www/html zoals weergegeven.

cd /var/www/html

Vervolgens download je de nieuwste versie van PhpMyAdmin met behulp van de volgende wget-opdracht zoals weergegeven.

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

Zodra het is gedownload, haal je het gedownloade archief uit en noem je de map voor het gemak.

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

Maak een configuratiebestand voor PhpMyAdmin.

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

Bewerk het configuratiebestand:

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

Zoek de volgende regel op en stel je eigen blowfish_secret in:

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

Sla het bestand op en sluit het af.

Stap 6: Apache-poort openen in firewalld

Standaard gebruikt Apache meestal poorten 80 en 443 voor HTTP en HTTPS respectievelijk. Om de Apache-poorten te openen en toegang te krijgen tot PhpMyAdmin op uw server, voert u uit:

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

Deze opdrachten voegen een regel toe om inkomend verkeer op de opgegeven poort toe te staan en de firewall te herladen om de wijzigingen toe te passen.

Stap 7: Apache Web Server opnieuw starten

Tenslotte, start Apache opnieuw om de wijzigingen toe te passen:

sudo systemctl restart httpd

Stap 8: PhpMyAdmin openen

U kunt nu PhpMyAdmin openen via uw webbrowser door naar uw server’s IP-adres of domeinnaam te navigeren, gevolgd door “/phpmyadmin” in de URL:

http://your_server_ip/phpmyadmin

Log in met uw MySQL of MariaDB referenties.

PHPMyAdmin Login
PHPMyAdmin Dashboard

Stap 9: Externe toegang toestaan in PhpMyAdmin

Open het configuratiebestand van PhpMyAdmin.

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

Zoek de <Directory "/var/www/html"> sectie of de sectie waar uw PhpMyAdmin is geconfigureerd en werkt de Require richtlijn bij om toegang te geven tot PhpMyAdmin voor alle IP-adressen.

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

De bovenstaande configuratie staat toegang toe vanaf elke IP-adres, maar als u toegang wilt beperken tot specifieke IP-adressen, vervang Require all granted door Require ip your_ip.

Start Apache opnieuw om de wijzigingen toe te passen.

sudo systemctl restart httpd

Nu, u zou PhpMyAdmin van buitenaf moeten kunnen openen met uw server’s IP-adres of domein.

http://your_server_ip/phpmyadmin

Vergeet niet, openen toegang tot PhpMyAdmin van buitenaf kan beveiligingsrisico’s opleveren. Zorg ervoor dat u een sterke authenticatiemechanisme in plaats heeft en overweg met het gebruik van HTTPS voor versleutelde communicatie. Beperk bovendien toegang tot alleen vertrouwde IP-adressen indien mogelijk of secure PhpMyAdmin login URL.

Verander phpMyAdmin Login URL

De standaard login URL voor phpMyAdmin is voorspelbaar en vaak aangevallen door kwaadwillenden die proberen zwakheden uit te buiten. Het veranderen van de login URL voegt een extra laag van beveiliging toe, waardoor het moeilijker wordt voor niet-geautoriseerde gebruikers om toegang te krijgen tot uw databasebeheerinterface.

Om dit te doen, maak een /etc/httpd/conf.d/phpMyAdmin.conf configuratiebestand.

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

Voeg vervolgens de volgende configuratie toe.

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

Vervang /my met uw gewenste aangepaste login URL. Sla de wijzigingen op en sluit de teksteditor.

Na het aanpassen van de configuratiebestanden, start Apache opnieuw op om de wijzigingen toe te passen:

systemctl restart httpd

Open je webbrowser en navigeer naar het nieuwe phpMyAdmin inlog URL.

http://yourdomain.com/my/
phpMyAdmin Login URL

Het instellen van SSL voor phpMyAdmin

Het beveiligen van de communicatie tussen de Apache web server en phpMyAdmin is cruciaal om gevoelige informatie zoals inloggegevens en database inhoud te beschermen. Een effectieve manier om dit te bereiken is door SSL (Secure Socket Layer) voor phpMyAdmin op een Apache web server in te stellen.

Om dit te doen, installeer eerst de mod_ssl module op je server.

yum install httpd mod_ssl openssl

Maak vervolgens een map aan om het certificaat op te slaan en genereer een zelfondertekend SSL certificaat en een persoonlijke sleutel zoals hieronder weergegeven.

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
Create SSL Certificate for PhpMyAdmin

Na het maken van het SSL certificaat en de sleutel, open het Apache SSL configuratiebestand.

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

Voeg vervolgens de volgende regels toe aan het configuratiebestand.

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

Sla de wijzigingen op en start de Apache web server opnieuw op.

systemctl restart httpd

Open nu het phpMyAdmin configuratiebestand.

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

Voeg de volgende regels toe om SSL voor phpMyAdmin af te dwingen.

$cfg['ForceSSL'] = true;

Sla de wijzigingen op en sluit de teksteditor.

Tot slot, open je webbrowser en navigeer naar het volgende URL om phpMyAdmin te openen via een beveiligde SSL verbinding.

https://yourdomain.com/my/

Wees gewaarschuwd dat de melding over een onveilige verbinding uitsluitend te wijten is aan het gebruik van een zelfondertekend certificaat. Om verder te gaan, klik op “Advanced” en bevestig de beveiligingsuitzondering.

SSL Warning
Secure phpMyAdmin Login
Conclusie

Gefeliciteerd! U hebt PhpMyAdmin met Apache succesvol geïnstalleerd op uw RHEL, CentOS Stream, Rocky Linux of AlmaLinux systeem. Dit webgebaseerd hulpmiddel vereenvoudigt de beheer van uw databases, waardoor taken zoals databaseaanmaak, query’s en gegevensbeheer een fluitje van een cent zijn.

Source:
https://www.tecmint.com/install-phpmyadmin-rhel-centos-fedora-linux/