Zoeken op website

Hoe root-inlogtoegang tot PhpMyAdmin uit te schakelen


Als u van plan bent phpmyadmin regelmatig te gebruiken om uw databases via het netwerk (of erger nog, via internet!) te beheren, wilt u niet de root gebruiken > rekening. Dit geldt niet alleen voor phpmyadmin, maar ook voor elke andere webgebaseerde interface.

Zoek in /etc/phpmyadmin/config.inc.php naar de volgende regel en zorg ervoor dat de AllowRoot richtlijn is ingesteld op FALSE:

$cfg['Servers'][$i]['AllowRoot'] = FALSE;

In Ubuntu/Debian moet je deze twee regels toevoegen, zoals weergegeven:

/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['AllowRoot'] = false;

Sla de wijzigingen op en start Apache opnieuw.

------------- On CentOS/RHEL Systems -------------
systemctl restart httpd.service

------------- On Debian/Ubuntu Systems -------------
systemctl restart apache2.service

Volg daarna de stappen in de bovenstaande tips om naar de inlogpagina van phpmyadmin te gaan (https:///phpmyadmin) en probeer in te loggen als root:

Maak vervolgens via de opdrachtprompt verbinding met uw MySQL/MariaDB-database en maak met root-inloggegevens zoveel accounts aan als nodig is om toegang te krijgen tot één database. In dit geval maken we een account aan met de naam jdoe met wachtwoord jdoespassword:

mysql -u root -p
Enter password: 
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 24
Server version: 10.1.14-MariaDB MariaDB Server

Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> CREATE USER 'jdoe'@'localhost' IDENTIFIED BY 'jdoespassword';
Query OK, 0 rows affected (0.04 sec)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON gestion.* to 'jdoe'@'localhost';
Query OK, 0 rows affected (0.00 sec)

Laten we vervolgens inloggen met de bovenstaande inloggegevens. Zoals u kunt zien, heeft dit account slechts toegang tot slechts één database:

Gefeliciteerd! U heeft root-toegang tot uw phpmyadmin-installatie uitgeschakeld en kunt deze nu gebruiken om uw databases te beheren.

Ik raad u ten zeerste aan om een extra beveiligingslaag toe te voegen aan uw phpmyadmin-installatie met .htaccess-wachtwoordbeveiliging en HTTPS (SSL-certificaat) in te stellen om te voorkomen dat gebruikersnaam en wachtwoord worden verzonden in platte tekst via netwerk.