Рейтинг:0

Что инициирует запуск MariaDB для разрешения IP-адресов?

флаг in

В моем Журналы Windows > Приложение я вижу это Предупреждения

IP-адрес «xxx.xxx.xxx.xxx» не может быть разрешен: такой хост неизвестен.

IP мне неизвестен. Эти Предупреждения войти как:

Имя журнала: Приложение
Источник: МарияДБ
Идентификатор события: 100
Уровень: Предупреждение

- <Событие xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
  - <Система>
      <Имя поставщика="MariaDB" /> 
      <EventID Qualifiers="49152">100</EventID> 
      <Версия>0</Версия> 
      <Уровень>3</Уровень> 
      <Задача>0</Задача> 
      <Код операции>0</Код операции> 
      <Ключевые слова>0x80000000000000</Ключевые слова> 
      <TimeCreated SystemTime="2021-12-16T23:32:07.8659376Z" /> 
      <EventRecordID>2182760</EventRecordID> 
      <Корреляция /> 
      <Execution ProcessID="0" ThreadID="0" /> 
      <Канал>Приложение</Канал> 
      <Компьютер>vm-white</Компьютер> 
      <Безопасность/> 
    </Система>
  - <Данные События>
      <Data>Не удалось разрешить IP-адрес 'xxx.xxx.xxx.xxx': такой хост неизвестен.</Data> 
    </EventData>
</Событие>

Я размещаю сайты WordPress, а также Matomo (приложение для веб-аналитики с открытым исходным кодом). Может ли это каким-то образом пытаться использовать MariaDB для поиска записей rDNS для привязки?

Что бы еще это сделать? Вредоносный плагин WordPress?

Я сбит с толку.


Я пытался

[mysqld]
адрес привязки = 127.0.0.1

чтобы увидеть, повлияет ли это на эти зарегистрированные Предупреждения; но почему-то мои сайты загружались дольше. Так что я расстегнул его. Все мои пользователи настроены на использование локальный хост и нет 127.0.0.1. Основываясь на этом пропустить информацию о разрешении имени Мне, вероятно, было бы лучше отключить разрешение имен, и это могло бы объяснить, почему я получаю эти Предупреждения если они уйдут.


Боб предложил проверить настройки моего брандмауэра. Я внес некоторые коррективы и буду продолжать проверять журналы на наличие изменений.

настройки брандмауэра для MariaDB


Теперь, только что получил это Предупреждение

IP-адрес «34.96.130.11» был преобразован в имя хоста «11.130.96.34.bc.googleusercontent.com», которое напоминает сам IPv4-адрес.

флаг cn
Bob
На первый взгляд, корень вашей проблемы заключается в том, что вы предоставляете сервер базы данных Интернету в целом, когда он предназначен для внутренней службы, а не для общедоступной. Проверьте и настройте параметры брандмауэра для порта по умолчанию 3306 или любого другого порта, на использование которого настроена MariaDB.
MeSo2 avatar
флаг in
@Bob Я изменил настройки брандмауэра, но только что получил еще один преобразователь DNS _Warning_. Должен ли я добавить настройку исходящего трафика брандмауэра, чтобы предотвратить внешнее подключение MariaDB?
Nikita Kipriyanov avatar
флаг za
Что касается вашего последнего предупреждения, то оно "слишком подозрительно". Кто-то добавил код, который сравнивает IP-адрес в виде четверки с точками и результат запроса PTR и выдает это предупреждение. Мне не нужно думать, что это очень полезно. PTR может быть установлен на что угодно, это зависит от усмотрения владельца IP-адреса, вы никогда не можете полагаться на него, поэтому никогда не следует считать его правильным, официальным, вежливым, приятным и так далее, поэтому сравнение глупо. Игнорируйте это предупреждение как бесполезное.
Nikita Kipriyanov avatar
флаг za
`bind-address = 127.0.0.1` - это *самый правильный и безопасный* способ его настройки, если вам не нужно подключаться к БД с других хостов. Собственно это и должно появиться *быстрее*. Как вы указываете сервер БД в приложениях? Лучшим способом было бы использовать просто «localhost» или даже «127.0.0.1» в качестве имени хоста БД в приложениях.
MeSo2 avatar
флаг in
@NikitaKipriyanov Сначала я подключался с помощью `localhost` к моему приложению с кодом asp через драйвер ODBC MariaDB, например: =____;PORT=3306;CONN_TIMEOUT=120;CHARSET=utf8mb4;READ_TIMEOUT=20;WRITE_TIMEOUT=5;Option=3`. Теперь, изменив его на «127.0.0.1», он стал очень отзывчивым. Хороший!
Рейтинг:1
флаг za

Хотя можно ограничить доступ к серверу СУБД с помощью брандмауэра, лучше вообще не делать его доступным из Интернета. Так будет максимально безопасно.

Вы попробовали это правильно:

[mysqld]
адрес привязки = 127.0.0.1

Странно, что он оказался безответственным при подключении с помощью локальный хост. Вместо этого он должен появиться быстрее, потому что Мы надеемся, что ОС, взаимодействующая через петлевой интерфейс, избегает некоторых слоев в сетевом стеке.. Это может означать некоторое разрешение имен (например, DNS или хозяева) проблема на автомате. Это мудро избегать разрешения имен в этом случае, используя буквальный IP-адрес локального хоста 127.0.0.1. Просто укажите его в коннекторе как адрес сервера СУБД.


Последнее предупреждение о том, что имя хоста «похоже на сам IPv4-адрес» бесполезно. Имя хоста является результатом DNS-запроса, а значение имени хоста в записи PTR полностью контролируется владельцем IP-адреса. В него можно вложить что угодно, его можно сделать похожим на сам IP-адрес, или похожим на какой-то другой IP-адрес (для большей путаницы), или быть шуткой, или строкой из стихотворения, или быть грубым и грубым. Он не передает достоверной информации, которую вы могли бы рассмотреть в контексте безопасности. Просто проигнорируйте это предупреждение, а лучше вообще отключите такие предупреждения и не тратьте ресурсы на такие глупые сравнения.

MeSo2 avatar
флаг in
Изменение моих пользователей на «127.0.0.1» имело неожиданный положительный побочный эффект на этот другой вопрос, который у меня был: https://serverfault.com/questions/1086062/stop-event-id-4625-remote-logon-request-over -logon-process-ntlmssp Очень приятно! Этот ответ на самом деле не то, что мне нужно, но он сделал мой день.
Nikita Kipriyanov avatar
флаг za
Я чувствую, что это был пример решенной проблемы XY, потому что вы объяснили, для чего вам это нужно, и мы закрыли основную причину вместо того, чтобы решать проблемы, которые у вас возникли с прослушиванием публичного выступления. Что касается формального ответа, я чувствую, что вы неправильно настроили брандмауэр. Я никогда не доверял этим «профилям» домена/частного/общедоступного. Вы полностью уверены в том, что является "частным" в данном случае? Явное правило работало бы лучше и надежнее, когда вы должны были перечислить все разрешенные IP-адреса, оба из них (общедоступный IP-адрес сервера и локальный хост).
MeSo2 avatar
флаг in
Я не знал, что MariaDB начнет (или сможет) разрешать IP-адреса. И поэтому мне до сих пор не ясно, что может вызвать такое поведение. Все, что я делаю, это размещаю простое веб-приложение. Это просто странное поведение для базы данных - делать это при каждом звонке посетителя. Я тоже не очень доверяю этим "профильным" настройкам; Я предпочитаю использовать «Типы интерфейса», чтобы блокировать вещи.Для справки «Частный» определяется как: _Частный профиль — это профиль, назначаемый пользователем и используемый для обозначения частных или домашних сетей_. Зачем мне включать общедоступный IP-адрес сервера (мой DNS также размещен локально).
Nikita Kipriyanov avatar
флаг za
Нет, в случае MySQL это не странно. Помните, что вы указываете имена хостов при создании пользователей и назначении привилегий, например. `ПРЕДОСТАВИТЬ привилегии НА \`db.table\` ДЛЯ 'имя пользователя'@'имя хоста', ИДЕНТИФИЦИРОВАННОЕ ПО 'паролю'`. Он действительно записывает это имя хоста в поле `mysql.user.Host` и проверяет соответствие обратного DNS во время аутентификации. Обычно используется `localhost` или `%`, например. доступ предоставляется только к самому серверу или к любому адресу (с использованием подстановочного знака MySQL), но вы можете иметь более жесткий контроль. Я использую эту функцию на одном кластере.
MeSo2 avatar
флаг in
Правильно ли я предполагаю, что теперь это будет означать, что я сталкиваюсь с [атаками SQL-инъекций] (https://en.wikipedia.org/wiki/SQL_injection)? У меня нет ничего (насколько мне известно) в моем коде, который бы запрашивал внешнее соединение.
Nikita Kipriyanov avatar
флаг za
Нет. Внедрение SQL всегда осуществляется через какую-либо брешь в приложении. Он вводит вредоносный запрос в действительный запрос приложения, поэтому с точки зрения базы данных приложение подключается в полном объеме, но делает некоторые неприятные вещи. В журнале, который вы видели, показана попытка прямого подключения к базе данных. Это похоже на сканирование SSH/FTP/RDP/любых паролей, только с MySQL/MariaDB.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.