我可以使用root登录phpMyAdmin,即使它仅限于本地主机



我可以使用root用户和其他用户登录phpMyAdmin,即使我限制登录到localhost。如何修复此问题,并将访问权限限制为仅远程访问一个指定用户。不应该远程访问其他所有用户帐户,尤其是root用户。

phpMyAdmin用户帐户

正如@Matt Clark所指出的,MySQL用户权限考虑MySQL和web服务器之间的连接。为了限制用户连接到phpMyAdmin,您必须将Web服务器配置为限制性更强,或者使用phpMyAdmin中包含的一些保护措施。

Luuk提到AllowRoot指令可以允许您限制root连接,但您可能需要查看允许/拒绝规则(或者另外查看(:https://docs.phpmyadmin.net/en/latest/config.html#cfg_Servers_AllowDeny_rules.这些文件位于phpMyAdmin配置文件config.inc.php中的服务器特定部分。如果您还没有config.inc.php文件,您可以在与phpMyAdmin主安装相同的目录中创建一个包含此内容的文件,然后将任何其他指令放在最后。

<?php
$i=0;
$i++;

如果你总是从同一个IP地址或范围连接,这样的东西可能会符合你的喜好,当然会根据正确的用户名和地址进行调整:

$cfg['Servers'][$i]['AllowDeny']['order'] = 'allow,deny';
$cfg['Servers'][$i]['AllowDeny']['rules'] = array('allow jan from 192.168.74.[0-255]');

或者,为了允许从任何IP地址访问,

$cfg['Servers'][$i]['AllowDeny']['order'] = 'allow,deny';
$cfg['Servers'][$i]['AllowDeny']['rules'] = array('allow jan from any');

顺便说一句,作为另外两种常见的安全措施,phpMyAdmin还支持双因素身份验证,并可以记录失败的登录尝试,这样就可以使用fail2ban这样的工具。

相关内容

最新更新