我可以用 root 登录 phpMyAdmin,即使它仅限于本地主机
I'm able to login on phpMyAdmin with root, even it's restricted to localhost
我可以使用 root 用户和其他用户登录 phpMyAdmin,即使我已限制登录到 localhost。我怎样才能解决这个问题并限制只有一个指定的用户远程访问。不应远程访问所有其他用户帐户,尤其是 root。
phpMyAdmin user accounts
正如@Matt Clark 指出的那样,MySQL 用户权限考虑了MySQL 和网络服务器之间的连接。为了限制用户连接到 phpMyAdmin,您必须将您的网络服务器配置为更具限制性或使用 phpMyAdmin 附带的一些保护措施。
Luuk 提到 AllowRoot 指令可以让您限制 root 连接,但您可能想查看 allow/deny 规则(或另外):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 等工具。
我可以使用 root 用户和其他用户登录 phpMyAdmin,即使我已限制登录到 localhost。我怎样才能解决这个问题并限制只有一个指定的用户远程访问。不应远程访问所有其他用户帐户,尤其是 root。
phpMyAdmin user accounts
正如@Matt Clark 指出的那样,MySQL 用户权限考虑了MySQL 和网络服务器之间的连接。为了限制用户连接到 phpMyAdmin,您必须将您的网络服务器配置为更具限制性或使用 phpMyAdmin 附带的一些保护措施。
Luuk 提到 AllowRoot 指令可以让您限制 root 连接,但您可能想查看 allow/deny 规则(或另外):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 等工具。