Поскольку я совершенно не знаком с веб-хостингом и настройкой веб-серверов, прошу прощения за мои глупые вопросы;)
Вчера я загрузил свое веб-приложение в digitalocean. Приложение представляет собой очень простой веб-сайт с логином пользователя (сборка на Python) для отображения результирующих данных по периодическим задачам (выполнение длительной задачи один раз в день и очень коротких задач каждую минуту).
Все построено с помощью докера. Весь стек состоит из веб-сервера (NGINX), сервера базы данных (mariadb) и брокера сообщений (rabbitmq, необходимого для периодических задач).
После того, как я запустил приложение, все работало стабильно около 2 часов, пока не вылетело первый раз (небольшая проблема с подключением к базе данных). Чтобы узнать, что конкретно вызвало сбой, я вошел в журналы контейнера mariadb и увидел следующее (помимо реальной причины сбоя):
[Warning] Access denied for user 'chucky'@'85.87.19.37' (using password: YES)
Дело в том, что я единственный пользователь, и я не настраивал пользователя с именем «chucky». Так что для меня похоже, что кто-то узнал IP-адрес моей капли digitalocean и попытался войти на сайт. Правильно ли я это интерпретирую? Если да, то мне совершенно интересно, как кто-то мог так быстро узнать IP-адрес новой, свежей капли?
Кроме того, мне было интересно, как кто-нибудь «взломает» дроплет, если ничего не установлено. Так что только сырая, пустая капля - ничего не установлено. Возможно ли это вообще, или всегда должен быть веб-сервер (или сервер базы данных), служащий своего рода «шлюзом» для доступа к файловой системе сервера?
Заранее спасибо, ребята, и мне очень любопытно услышать ваши ответы.
Боты постоянно пытаются получить доступ ко всем общедоступным ресурсам, это нормально и считается фоновым шумом.
Но: В вашей конфигурации MariaDB не должна быть общедоступной для начала, только между частными адресами / контейнерами на хосте. Вы должны открывать для публики только те вещи, которые должны быть открыты (например, веб-сервер и SSH-сервер в самой капле), ничего больше.