如何禁用root登录访问PhpMyAdmin

如果您在使用phpMyAdmin定期通过网络来管理你的数据库计划(或更糟的是,在互联网上!),你不想使用root账号。 这不仅适用于phpmyadmin,也适用于任何其他基于Web的界面。

/etc/phpmyadmin/config.inc.php ,查找下面一行,并确保AllowRoot指令设置为false:

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

在PhpMyAdmin中禁用根登录

Ubuntu / Debian,那么您需要如图所示添加以下两行:

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

保存更改并重新启动Apache。

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

然后按照上面的提示中列出的步骤去phpMyAdmin的登录页面( https://<ip address>/phpmyadmin ),并尝试以root登陆:

root访问在Phpmyadmin中被禁用

然后连接到通过在命令提示符下你的MySQL / MariaDB的数据库,并使用凭据,如需要访问每一个数据库中创建许多帐户。 在这种情况下,我们将创建一个名为JDOE与密码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)

然后让我们使用上面的凭据登录。 如您所见,此帐户只能访问一个数据库:

启用PhpMyAdmin访问用户

恭喜! 您已禁用对phpmyadmin安装的root访问权限,现在可以使用它来管理数据库。

我强烈建议你到一个额外的安全层添加到您的phpMyAdmin安装使用的.htaccess密码保护安装HTTPS(SSL证书) ,以避免以纯文本格式通过网络发送用户名密码

赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏