Slik deaktiverer du root-påloggingstilgang til PhpMyAdmin


Hvis du planlegger å bruke phpmyadmin regelmessig for å administrere databasene dine over nettverket (eller enda verre, over Internett!), ønsker du ikke å bruke root-kontoen. Dette gjelder ikke bare for phpmyadmin, men også for alle andre nettbaserte grensesnitt.

I /etc/phpmyadmin/config.inc.php, se etter følgende linje og sørg for at AllowRoot-direktivet er satt til FALSE:

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

I Ubuntu/Debian må du legge til disse to linjene som vist:

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

Lagre endringer og start Apache på nytt.

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

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

Følg deretter trinnene som er skissert i tipsene ovenfor for å komme til phpmyadmin-påloggingssiden (https:///phpmyadmin) og prøv å logge på som root:

Koble deretter til MySQL/MariaDB-databasen din via ledeteksten, og bruk rotlegitimasjon for å opprette så mange kontoer som trengs for å få tilgang til én database hver. I dette tilfellet vil vi opprette en konto som heter jdoe med passord 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)

La oss deretter logge på med legitimasjonen ovenfor. Som du kan se, har denne kontoen kun tilgang til én database:

Gratulerer! Du har deaktivert root-tilgang til phpmyadmin-installasjonen din og kan nå bruke den til å administrere databasene dine.

Jeg anbefaler deg på det sterkeste å legge til et ekstra lag med sikkerhet til phpmyadmin-installasjonen din med oppsett av HTTPS (SSL-sertifikat) for å unngå å sende brukernavn og passord i vanlig tekstformat over nettverket.