mysql - 绑定(bind)地址和MySQL服务器

标签 mysql linux security networking ubuntu

我在尝试配置 MySQL 服务器时遇到了绑定(bind)地址。我为什么要配置绑定(bind)地址的详细信息在下面的链接中。

Multiple hostnames and multiple privileges?

现在,我想了解绑定(bind)地址的用途。从某种意义上说,绑定(bind)地址是我们分配给托管 MySQL 服务器的机器的地址吗?

我不知道。如果有人可以向我解释它的目的,那将非常有帮助。此外,将 0.0.0.0 分配给绑定(bind)地址会产生任何安全漏洞/漏洞吗?

最佳答案

你在 bind 中指定的地址告诉 MySQL 在哪里监听。 0.0.0.0 是一个特殊地址,意思是“绑定(bind)到每个可用网络”。

只有能够使用“绑定(bind)”选项中指定的相同地址打开到服务器的连接的客户端软件才被允许连接。

一些例子:

  • 如果 MySQL 绑定(bind)到 127.0.0.1,那么 同一台计算机上的唯一软件 将能够连接(因为 127.0.0.1 始终是本地计算机)。
  • 如果 MySQL 绑定(bind)到 192.168.0.2(服务器计算机的 IP 地址为 192.168.0.2 并且它位于/24 子网上),然后是同一子网上的任何计算机 子网(以 192.168.0 开头的任何子网)将能够连接。
  • 如果 MySQL 绑定(bind)到 0.0.0.0,然后是能够访问服务器计算机的任何计算机 通过网络将能够连接。

这些都是传输级连接。远程计算机仍然需要符合应用程序级别的条件,也就是说它们仍然需要来自 mysql.user 的正确登录凭据和主机参数。

关于mysql - 绑定(bind)地址和MySQL服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3552680/

相关文章:

mysql - 重置自动增量起点

php - 在mysql中更新表得到奇怪的结果

regex - SED删除C程序注释

linux - 在 Linux 操作系统中,用户空间使用哪个内存区域(Normal 或 Highmem)?

security - 在同一 TCP 连接中使用不同的 TLS 记录版本

security - symfony2 中的两步验证

PHP 和 MySQL WP

mysql - 如何在 1 列 SQL 中保存多个数据

linux - Nginx 上游作为 url

c++ - 在 iOS 上的 C++ 中获取加密安全随机数