Access denied for user 'root'@'...' (using password: YES)
Access denied for user 'root'@'...' (using password: YES)
Access denied for user 'root'@'...' (using password: YES)
Эти сообщения появляются, потому что злоумышленники пытаются подобрать root пароль к базе. Делают они это бесконечным перебором. И со временем таких желающих станет только больше. Поэтому обязательно ограничивайте доступ к порту по ip через iptables или отключите прослушивание порта в настройках MySQL совсем.
Отключение сетевых функций MySQL
Для отключения сетевых функций в MySQL откройте в текстовом редакторе конфигурационный файл этой СУБД по адресу/etc/my.cnf
. И пропишите там две директивы bind-address и skip-networking в секции [mysqld], чтобы получилось так:
[mysqld]
bind-address = 127.0.0.1
skip-networking = on
После внесения изменений файл сохраните его и перезапустите сервис mysql:
systemctl restart mysqld
Чуть подробнее об этих директивах:bind-address - адрес, который прослушивает сервер. Если задать 127.0.0.1, то сервер будет слушать только себя, не отвечая на внешние запросы.
skip-networking - отключает использование сети. То есть никакие TCP/IP соединения не будут обработаны. СУБД будет использовать только сокет.
Проверка значений директив MySQL
Чтобы проверить действительно ли были установлены значения bind_address и skip_networking на нужные, стоит выполнить следующие SQL запросы. Сначала откройте MySQL в консоли сервера с помощью одноимённой команды:mysql
Появится строка для ввода SQL запросов. Выполните поочерёдно два:
SHOW GLOBAL VARIABLES like 'bind_address';
SHOW GLOBAL VARIABLES like 'skip_networking';
В результате будет возвращены значения этих директив. Они должны быть "127.0.0.1" и "ON" соответственно. Если этого не произошло. то значит что их значения перезаписываются ниже по файлу конфигурации. И в конце, чтобы окончательно убедиться, что MySQL перестала прослушивать порт, выполните команду для распечатки списка портов, которые прослушиваются:
netstat -lntup
В появившемся списке не должно быть ничего с портом ":3306". Читайте подробнее об команде "netstat" в статье Кто слушает порт в Linux.