限制应用程序本身的 phpmyadmin 访问
Posted
技术标签:
【中文标题】限制应用程序本身的 phpmyadmin 访问【英文标题】:Restrict phpmyadmin access in the application itself 【发布时间】:2015-01-13 15:39:40 【问题描述】:我想将 phpmyadmin 访问权限限制为仅对某些 IP 地址。我无法更改服务器配置,而且我现在无法更改我的 httpd conf 文件。有没有办法在应用程序级别实现这一点?
【问题讨论】:
【参考方案1】:我注意到这是一个副本: How to restrict access to phpmyadmin?
但是由于我的答案还没有给出,所以我的想法是:
我发现实现此目的的一种方法是进入 phpmyadmin 的 config.inc.php。可以在phpmyadmin目录的根目录下找到。
$cfg['Servers'][$i]['AllowDeny']['order'] = 'deny,allow';
$cfg['Servers'][$i]['AllowDeny']['rules'] = array(
'deny % from all',
'allow % from 127.0.0.1',
'allow % from ::1',
'allow % from *YOUR_IP_ADDRESS_HERE*',
);
编辑:如果您使用代理,我认为大多数生产服务器都是。您还应该为 HTTP_X_FORWARDED_FOR 设置受信任的代理,如下所示:
$cfg['TrustedProxies'] = array('*PROXY_IP_HERE*' => 'HTTP_X_FORWARDED_FOR',);
【讨论】:
效果很好。帮我出去了。非常感谢。 请注意,不能将 ip 范围或 cidr 放入 TrustedProxies 数组中。已提交错误报告:github.com/phpmyadmin/phpmyadmin/issues/14917以上是关于限制应用程序本身的 phpmyadmin 访问的主要内容,如果未能解决你的问题,请参考以下文章
如何限制对 phpMyAdmin 中特定数据库用户帐户的访问?
Ubuntu 14 + Nginx + PHPMyAdmin:如何通过 IP 地址限制访问?
Apache 端口转发 80 到 8080 并访问托管在 Apache (80) 中的应用程序,即 phpMyadmin 和 Tomcat (8080)