Адрес привязки и сервер MySQL

Я наткнулся на адрес привязки при попытке настроить сервер MySQL. Подробности того, почему я хочу настроить адрес привязки, приведены по ссылке ниже.

Несколько имен хостов и несколько привилегий?

Теперь я хочу понять назначение адреса привязки. В том смысле, является ли адрес привязки адресом, который мы назначаем машине, на которой размещен сервер MySQL?

Я понятия не имею. Было бы очень полезно, если бы кто-то мог объяснить мне цель этого. Кроме того, присвоение 0.0.0.0 адресу привязки создаст какие-либо недостатки безопасности/циклы?

Ответ 1

Адрес, указанный в bind, сообщает MySQL, где прослушивать. 0.0.0.0 - это специальный адрес, который означает "привязать к каждой доступной сети".

Только клиентское программное обеспечение, которое может открыть соединение с сервером, используя тот же адрес, который указан в опции "bind", будет разрешено для подключения.

Некоторые примеры:

  • Если MySQL связывается с 127.0.0.1, то только программное обеспечение на одном компьютере сможет подключиться (потому что 127.0.0.1 всегда локальный компьютер).
  • Если MySQL связывается с 192.168.0.2 (и IP-адрес компьютера сервера 192.168.0.2 и это в подсети а /24), то любые компьютеры на том же подсеть (все, что начинается с 192.168.0) сможет подключиться.
  • Если MySQL связывается с 0.0.0.0, то любой компьютер, который может связаться с сервером компьютера через сеть сможете подключиться.

Это все соединения транспортного уровня. Удаленные компьютеры по-прежнему должны соответствовать уровню приложения, то есть им все равно потребуются правильные учетные данные для входа и параметры хоста из mysql.user.