phpMyAdmin installeren op Rocky Linux
phpMyAdmin is een gratis en open-source programma dat je in staat stelt MySQL en MariaDB databases vanuit de web browser te beheren. phpMyAdmin is een volledig capabele web-applicatie geschreven in PHP met als hoofddoel het beheer van MySQL/MariaDB via het web te regelen. Het biedt een robuuste en gebruikersvriendelijke interface voor het beheer van databanken, tabellen, databankgebruikers, basishandelingen (maken, lezen, bijwerken, verwijderen), en nog veel meer.
phpMyAdmin is een PHP web-applicatie die onder elk besturingssysteem kan draaien, ook onder Windows, macOS, Linux, en BSDs. De belangrijkste onderdelen die je moet installeren voordat je phpMyAdmin installeert zijn PHP pakketten en een webserver, dat kan Apache, Nginx, enz. zijn.
In deze gids leer je hoe je phpMyAdmin kunt installeren met de LAMP Stack op Rocky Linux. Deze gids kan toegepast worden op de server met een bestaande LAMP Stack installatie of de verse server zonder LAMP Stack pakketten.
Vereisten
- Een Rocky Linux systeem.
- Een gebruiker met root of sudo rechten. Deze gebruiker zal gebruikt worden voor het installeren van nieuwe pakketten en het aanbrengen van wijzigingen in het hele systeem.
Installeren van httpd en MariaDB
Eerst installeer je de Apache of httpd webserver en de MariaDB databaseserver. Als je al deze pakketten al geïnstalleerd hebt, kun je deze stappen overslaan.
1. Voer het onderstaande commando uit om de pakketten httpd en mariadb te installeren.
sudo dnf install httpd mariadb mariadb-server
Typ‘y‘ en druk op‘Enter‘ om te bevestigen en de pakketten te installeren.
2. Als de installatie voltooid is, voer je het volgende commando uit om de diensten httpd en mariadb in te schakelen zodat ze automatisch kunnen draaien tijdens het opstarten van het systeem.
sudo systemctl enable mariadb
sudo systemctl enable httpd
3. Start nu de httpd en mariadb dienst met het onderstaande commando.
sudo systemctl start mariadb
sudo systemctl start httpd
4. Controleer daarna de httpd en mariadb diensten door het volgende commando uit te voeren.
sudo systemctl status mariadb
sudo systemctl status httpd
Als je mariadb dienst actief is en draait, zie je soortgelijke uitvoer als hieronder.
Als je httpd dienst actief is en draait, zie je soortgelijke uitvoer als hieronder.
PHP installeren op Rocky Linux
Na het installeren van httpd en MariaDB pakketten, zul je nu PHP pakketten installeren op Rocky Linux. Voor deze gids installeer je PHP pakketten uit de Remi repository. Als je al PHP pakketten geïnstalleerd hebt, kun je deze stap overslaan.
1. Voer het volgende commando uit om de EPEL repository op Rocky Linux toe te voegen.
sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
Typ nu ‘y’ en druk op‘Enter‘ om de EPEL repository toe te voegen.
2. Voeg daarna de remi repository aan het Rocky Linux systeem toe met het onderstaande commando.
sudo dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm
Typ ‘y’ en druk op‘Enter‘ om de remi repository toe te voegen.
3. Voordat je PHP pakketten installeert, moet je de PHP module repository terugzetten en de PHP module uit de remi repository inschakelen.
Voer het volgende commando uit om de php module te resetten.
sudo dnf module reset php
Nu wordt je gevraagd om de GPG sleutel van het remi repository toe te voegen. Typ ‘y’ voor alle GPG-gerelateerde vragen en druk op ‘Enter’.
Nu kun je de PHP remi repository inschakelen met het volgende commando.
sudo dnf module enable php:remi-7.4
Typ‘y‘ en druk op‘Enter‘ om de PHP remi repository in te schakelen, speciaal voor PHP versie 7.4.
4. Nu kun je PHP pakketten installeren met het onderstaande commando.
sudo dnf install -y php php-common php-mysqlnd php-curl php-gd php-bcmath php-mcrypt php-mbstring php-xml php-zip
5. Nadat de installatie voltooid is, start je de httpd dienst opnieuw om de nieuwe configuratie toe te passen.
sudo systemctl restart httpd
MariaDB installatie beveiligen
Als je voor deze installatie een vers systeem gebruikt, is het aan te bevelen deze stap te volgen voor het beveiligen van de mariadb inzet. Maar, als je huidige systeem al mariadb heeft, kun je deze stap overslaan.
1. Voer het volgende commando uit om het root wachtwoord voor mariadb in te stellen en de installatie te beveiligen.
sudo mysql_secure_installation
Typ nu een nieuw wachtwoord voor de mariadb root gebruiker en typ‘Y‘ voor alle vragen, die te maken hebben met de basisbeveiliging van de mariadb inzet.
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!
In order to log into MariaDB to secure it, we'll need the current
password for the root user. If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.
Enter current password for root (enter for none):
OK, successfully used password, moving on...
Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.
Set root password? [Y/n] Y
New password: TYPE NEW PASSWORD for mariadb root user
Re-enter new password:REPEAT
Password updated successfully!
Reloading privilege tables..
... Success!
By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
production environment.
Remove anonymous users? [Y/n] Y
... Success!
Normally, root should only be allowed to connect from 'localhost'. This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] Y
... Success!
By default, MariaDB comes with a database named 'test' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.
Remove test database and access to it? [Y/n] Y
- Dropping test database...
... Success!
- Removing privileges on test database...
... Success!
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n] Y
... Success!
Cleaning up...
All done! If you've completed all of the above steps, your MariaDB
installation should now be secure.
Thanks for using MariaDB!
Nu kun je verder naar de volgende stap.
Download de phpMyAdmin broncode
1. Verander de werkdirectory in‘/var/www‘ en download de broncode van phpMyAdmin met het wget commando zoals hieronder.
cd /var/www/
wget https://files.phpmyadmin.net/phpMyAdmin/5.1.1/phpMyAdmin-5.1.1-all-languages.zip
2. Pak nu de phpMyAdmin broncode uit en je krijgt de nieuwe mapnaam als‘phpMyAdmin-VERSIE-NUMMER‘. Hernoem nu de directory in‘phpmyadmin‘ zoals hieronder.
unzip phpMyAdmin-5.1.1-all-languages.zip
mv phpMyAdmin-5.1.1-all-languages phpmyadmin
3. Verander vervolgens de eigenaar van de‘phpmyadmin‘ directory in de‘apache‘ gebruiker met het chown commando zoals hieronder.
sudo chown -R apache:apache phpmyadmin
Ga nu naar de volgende stap voor het configureren van phpMyAdmin.
Het instellen van phpMyAdmin
Voor dit stadium ga je de phpMyAdmin installatie configureren.
1. Verander de werkdirectory in de‘/var/www/phpmyadmin‘ directory en kopieer de voorbeeldconfiguratie naar ‘config.inc.php‘, verander dan de eigenaar van het configuratiebestand in de gebruiker‘apache‘.
cd /var/www/phpmyadmin/
cp config.sample.inc.php config.inc.php
chown apache:apache config.inc.php
2. Genereer vervolgens een willekeurig sterk en getal (secret) met het onderstaande openssl commando.
openssl rand -hex 16
Kopieer het gegenereerde geheim naar je notitie.
3. Bewerk de phpMyAdmin configuratie ‘config.inc.php’ met nano editor.
nano config.inc.php
Verander de waarde van“$cfg[‘blowfish_secret’] = ‘…..’;” met je gegenereerde geheim bovenaan zoals hieronder.
$cfg['blowfish_secret'] = 'e5c4d8f3e2569dab102873a67481c8bb'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
Druk nu op‘Ctrl+x‘, typ‘y‘, en druk op‘Enter‘ om de configuratie op te slaan en af te sluiten.
Nieuwe Database voor phpMyAdmin maken
Voor deze stap maak je een nieuwe databank en gebruiker voor phpMyAdmin. Deze databank zal gebruikt worden om phpMyAdmin configuraties in op te slaan.
1. log in op de mariadb shell met het onderstaande mysql commando.
mysql -u root -p
Typ je mariadb root wachtwoord en druk op‘Enter‘.
2. Maak een nieuwe databanknaam‘phpmyadmin‘ met de onderstaande query.
CREATE DATABASE phpmyadmin;
3. Genereer het versleutelde wachtwoord met de volgende query. En let erop dat je het ruwe wachtwoord ‘mystrongpassword’ verandert in je wachtwoord.
SELECT PASSWORD('mystrongpassword');
Kopieer het versleutelde wachtwoord naar je notitie.
4. Maak vervolgens een nieuwe gebruikersnaam‘pma‘ met het versleutelde wachtwoord erop. Geef de gebruiker dan toegang tot de databank‘phpmyadmin‘, en pas nieuwe veranderingen toe.
CREATE USER 'pma'@'localhost' IDENTIFIED VIA mysql_native_password USING '*617DA9A67DC81CE28027875FA123071F038CC7CA';
GRANT SELECT, INSERT, UPDATE, DELETE ON phpmyadmin.* TO 'pma'@'localhost';
FLUSH PRIVILEGES;
Typ nu‘quit‘ om de mariadb shell te verlaten.
5. Na het aanmaken van de database en de gebruiker moet je het databaseschema voor phpMyAdmin importeren.
Verander de werkdirectory in‘/var/www/phpmyadmin/sql‘.
cd /var/www/phpmyadmin/sql
Voer het volgende commando uit om het databaseschema te importeren naar de databank‘phpmyadmin‘.
mysql -u root -p phpmyadmin < create_tables.sql
Typ je database root wachtwoord en druk op‘Enter‘.
Apache/Httpd configuratie toevoegen voor phpMyAdmin
Voor deze stap maak je een nieuwe Apache/httpd configuratie voor phpMyAdmin. Ook zul je de Apache basisauthenticatie configureren voor extra beveiliging van phpMyAdmin.
1. Verander de werkdirectory in‘/etc/httpd/conf.d‘ en maak met nano editor een nieuwe configuratie‘phpmyadmin.conf’.
cd /etc/httpd/conf.d/
nano phpmyadmin.conf
Kopieer en plak de volgende configuratie.
# Alias for accessing phpmyadmin
Alias /phpmyadmin /var/www/phpmyadmin
# document root phpmyadmin
<Directory /var/www/phpmyadmin>
# Enable Basic authentication
AuthType Basic
AuthName "Please Enter Your Password"
AuthUserFile /var/www/phpmyadmin/.htpasswd
Require valid-user
# If you're paranoid - use this and allow a specific IP address
# Order deny,allow
# Deny from all
# Allow from 127.0.0.1
# Allow from ::1
</Directory>
Druk op‘Ctrl+x‘, typ‘y‘ en druk dan op‘Enter‘ om op te slaan en af te sluiten.
2. Voer het volgende commando uit om een nieuw apache basis authenticatie wachtwoord te maken. Verander de gebruiker‘johndoe‘ met je gebruikersnaam.
htpasswd -c /var/www/phpmyadmin/.htpasswd johndoe
Typ het wachtwoord voor je gebruiker en herhaal.
3. Verander vervolgens de werkdirectory in‘/var/www/phpmyadmin‘ en maak met nano editor een nieuwe configuratie ‘.htaccess’.
cd /var/www/phpmyadmin/
nano .htaccess
Kopieer en plak de volgende configuratie.
AuthUserFile /var/www/phpmyadmin/.htpasswd
AuthGroupFile /dev/null
AuthName "Secret"
AuthType Basic
require valid-user
<Files ~ "^.(htpasswd|htaccess)$">
deny from all
</Files>
Druk op‘Ctrl+x‘, typ‘y‘ en druk dan op‘Enter‘ om op te slaan en af te sluiten.
4. Verander vervolgens het eigendom van het configuratiebestand ‘.htaccess‘ en ‘.htpasswd‘ (gegenereerd met htpasswd commando) in de‘apache‘ met het volgende commando.
chown apache:apache .htaccess .htpasswd
5. Je moet de httpd configuratie verifiëren en zorgen dat je geen fouten hebt, start dan de httpd dienst opnieuw om de nieuwe veranderingen toe te passen.
sudo apachectl configtest
sudo systemctl restart httpd
Verifieer de installatie van phpMyAdmin
1. Open je webbrowser en typ het IP adres van je server in, volgend met het directory pad‘/phpmyadmin‘.
http://SERVER-IP/phpmyadmin/
Typ de gebruiker en het wachtwoord uit de Apache/httpd basis authenticatie.
Als je gebruiker en wachtwoord juist zijn, krijg je de phpMyAdmin login pagina. Zo niet, dan word je naar dezelfde pagina doorverwezen of krijg je een pagina met‘401 Unautorhized‘ toegang.
2. Typ op de phpMyAdmin login pagina de database gebruiker‘root‘ en het wachtwoord en klik dan op‘Go‘ om in te loggen in phpMyAdmin.
Nu krijg je het phpMyAdmin dashboard zoals hieronder.
Op de bovenste schermafbeelding zie je de details van de MariaDB databaseserver. Ook zie je de gegevens van de LAMP Stack onder de rubriek ‘Webserver’.
Conclusie
Gefeliciteerd! Je hebt nu met succes phpMyAdmin geïnstalleerd op Rocky Linux. In het volgende stadium kun je je database gemakkelijk beheren met phpMyAdmin. Je kunt je bestaande database importeren of gewoon een nieuwe database maken voor je webapplicatie, of je kunt gewoon wat gegevens bijwerken met de MySQL query via de phpMyAdmin SQL query.