我一直在使用 phpMyAdmin,我认为它是一款不错的工具,但我在互联网上读到了很多有关安全漏洞的文章。您会推荐在生产网络服务器上安装/使用 phpMyAdmin 吗?
我认为如果我只允许通过本地主机访问,并将其更改为非标准端口会有所帮助。但这足够吗?
答案1
您会建议在生产网络服务器上安装/使用 phpMyAdmin 吗?
不,只是。
phpMyAdmin 的安全历史臭名昭著,详情如下安全焦点。
您没有说您使用的是什么平台,但假设您有远程访问权限,我建议:
当您需要执行基本任务(例如检查状态或执行转储)时。
学习如何凭记忆使用一些基本的 SQL 和命令行实用程序。您会发现,它通常比使用 phpMyAdmin 更快地实现相同的结果,并且在紧急情况下它们将发挥绝对无价的作用。
当您需要执行没有 GUI 就难以完成或不可能完成的任务时。
使用具有隧道访问(例如 SSH)的本地客户端访问本地主机上的 MySQL 服务器。这样,您就拥有了良好客户端、安全传输和受限访问的所有功能。一些良好的客户端是 Navicat、HeidiSQL 和 SQLyog。其中一些客户端甚至会自动为您设置隧道。
答案2
我们将其安装在生产机器上,并将其直接暴露在互联网上。但我们是一家网络托管商,因此对此别无选择。
最重要的是及时了解新版本并关注安全邮件列表。我们还可以使用升级脚本一键升级我们的 phpMyAdmin 安装。
答案3
至少,更改默认文件夹...我的日志中充满了数百次寻找“phpmyadmin”文件夹变体的尝试。我更喜欢使用随机的东西,至少它可以避开机器人。
另外,限制对受信任 IP 的访问,或使用受密码保护的目录,并确保 Mysql 中的用户不会轻易被黑客入侵(或为 phpmyadmin 创建非常受限制和专门的用户)。
答案4
更改其运行的端口充其量是“通过模糊性实现安全”,不要依赖于由此获得的任何安全收益;您可能会摆脱一些脚本小子,但您也将承担管理非标准设置的责任。
我想说的是 - 如果可以的话,不要在生产服务器上使用它 - 即,如果业务没有明确要求它。至少可以提高安全性的一种方法是始终将其“关闭”,除非管理员将其打开,即使这样,无论是通过策略还是非活动超时,它都应该关闭。
这类似于说“我确实想要一扇前门,但我会一直把它锁上,除非我需要使用它,那时我会暂时打开它”。
最后,请记住,为用户/员工提供便利总是很容易的,而取消它则要困难得多,所以再说一遍,除非真的需要,否则不要添加它。