Mariadb&MySQL - 12 Рекомендаций по безопасности в MySQL / MariaDB для Linux

12 Рекомендаций по безопасности в MySQL / MariaDB для Linux

Рубрики:

MySQL

Метки:

, , ,

MySQL является самой популярной в мире системой баз данных с открытым исходным кодом, а MariaDB (форк MySQL) является самой быстрорастущей в мире системой баз данных с открытым исходным кодом. После установки сервера MySQL он небезопасен в конфигурации по умолчанию, и обеспечение его безопасности является одной из важнейших задач общего управления базой данных.

Это будет способствовать усилению и повышению общей безопасности сервера Linux, поскольку злоумышленники всегда сканируют уязвимости в любой части системы, а базы данных в прошлом были ключевыми целевыми областями. Типичным примером является грубое применение пароля root для базы данных MySQL.

В этом руководстве мы объясним полезные рекомендации по безопасности MySQL / MariaDB для Linux.

 

1. Безопасная установка MySQL

Это первый рекомендуемый шаг после установки сервера MySQL в направлении защиты сервера базы данных. Этот скрипт облегчает повышение безопасности вашего сервера MySQL, предлагая вам:

  • установить пароль для учетной записи root, если вы не установили его во время установки.
  • отключитье удаленный вход пользователя root, удалив доступ к учетной записи root вне локального хоста.
  • удалить учетные записи анонимных пользователей и проверить базу данных, к которой по умолчанию могут получить доступ все пользователи, даже анонимныe.

 

 

После запуска установите пароль root и ответьте на ряд вопросов, введя [Да/Y] и нажмите [Enter].

Secure-MySQL-Installation - 12 Рекомендаций по безопасности в MySQL / MariaDB для Linux

 

 

2. Привязка сервера базы данных к адресу localhost

Эта конфигурация ограничит доступ с удаленных машин, она говорит серверу MySQL принимать соединения только с локального хоста. Вы можете установить его в основном файле конфигурации.

 

 

Добавьте следующую строку ниже в разделе [mysqld].

 

 

3. Отключить LOCAL INFILE в MySQL

В рамках усиления безопасности необходимо отключить local-infile, чтобы предотвратить доступ к базовой файловой системе из MySQL, используя следующую директиву в разделе [mysqld].

 

 

4. Измените порт MYSQL по умолчанию

Переменная Port устанавливает номер порта MySQL, который будет использоваться для прослушивания соединений TCP/IP. Номер порта по умолчанию – 3306, но вы можете изменить его в разделе [mysqld], как показано.

 

 

5. Включить ведение журнала MySQL

Журналы — это один из лучших способов понять, что происходит на сервере, в случае любых атак вы можете легко увидеть любые действия, связанные с вторжением, из файлов журналов. Вы можете включить ведение журнала MySQL, добавив следующую переменную в разделе [mysqld].

 

 

6. Установите соответствующее разрешение для файлов MySQL.

Убедитесь, что у вас установлены соответствующие разрешения для всех файлов сервера MySQL и каталогов данных. Файл /etc/my.conf должен быть доступен для записи только пользователю root. Это блокирует других пользователей от изменения конфигурации сервера базы данных.

 

 

7. Удалить историю оболочки MySQL

Все команды, которые вы выполняете в оболочке MySQL, хранятся клиентом mysql в файле истории: ~/.mysql_history. Это может быть опасно, поскольку для любых создаваемых вами учетных записей все имена пользователей и пароли, введенные в оболочке, будут записаны в файл истории.

 

 

8. Не запускайте команды MySQL из командной строки

Как вы уже знаете, все команды, которые вы вводите на терминале, хранятся в файле истории, в зависимости от используемой вами оболочки (например, ~/.bash_history для bash). Злоумышленник, которому удается получить доступ к этому файлу истории, может легко увидеть любые записанные там пароли.

Настоятельно не рекомендуется вводить пароли в командной строке, примерно так:

 

 

Когда вы проверите последний раздел файла истории команд, вы увидите введенный выше пароль.

 

Рекомендуемый способ подключения MySQL:

 

 

9. Определите пользователей базы данных приложения

Для каждого приложения, работающего на сервере, предоставьте доступ только пользователю, который отвечает за базу данных для данного приложения. Например, если у вас есть сайт WordPress, создайте определенного пользователя для базы данных сайта WordPress следующим образом.

 

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

 

 

10. Используйте дополнительные плагины безопасности и библиотеки

MySQL включает в себя ряд подключаемых модулей безопасности для: аутентификации попыток клиентов подключиться к серверу MySQL, проверки пароля и защиты хранилища для конфиденциальной информации, которые все доступны в бесплатной версии.

Вы можете найти больше здесь: https://dev.mysql.com/doc/refman/5.7/en/security-plugins.html

 

 

11. Регулярно меняйте пароли MySQL

Это распространенный совет по безопасности информации / приложений / системы. Как часто вы будете это делать, будет полностью зависеть от вашей внутренней политики безопасности. Однако это может помешать «шпионам», которые могли отслеживать вашу активность в течение длительного периода времени, получить доступ к вашему серверу mysql.

 

 

12. Обновляйте MySQL Server регулярно

Настоятельно рекомендуется регулярно обновлять пакеты mysql / mariadb, чтобы быть в курсе обновлений безопасности и исправлений ошибок из репозитория производителя. Обычно пакеты в стандартных репозиториях операционной системы устарели.

 

После внесения любых изменений в сервер mysql/mariadb всегда перезапускайте службу.

 

 

Спасибо за уделенное время на прочтение статьи!

Если возникли вопросы, задавайте их в комментариях.

Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!

Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Ciscoкурсы по кибербезопасности,  полный курс по кибербезопасностикурсы DevNet (программируемые сети) от Академии Ciscoкурсы Linux от Linux Professional Institute на платформе SEDICOMM University (Университет СЭДИКОММ).

Курсы Cisco и Linux с трудоустройством!

Спешите подать заявку! Осталось пару мест. Группы стартуют 22 июля, а следующая 19 августа, 23 сентября, 21 октября, 25 ноября, 16 декабря, 20 января, 24 февраля.
Что Вы получите?
  • Поможем стать экспертом в сетевом администрировании и получить международные сертификаты Cisco CCNA Routing & Switching или Linux LPI.
  • Предлагаем проверенную программу и учебник экспертов из Cisco Networking Academy и Linux Professional Institute, сертифицированных инструкторов и личного куратора.
  • Поможем с трудоустройством и сделать карьеру. 100% наших выпускников трудоустраиваются.
Как проходит обучение?
  • Проводим вечерние онлайн-лекции на нашей платформе или обучайтесь очно на базе Киевского офиса.
  • Спросим у вас об удобном времени для практик и подстроимся: понимаем, что времени учиться мало.
  • Если хотите индивидуальный график — обсудим и осуществим.
  • Выставим четкие дедлайны для самоорганизации. Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
А еще поможем Вам:
  • отредактировать резюме;
  • подготовиться к техническим интервью;
  • подготовиться к конкурсу на понравившуюся вакансию;
  • устроим на работу в Cisco по программе Cisco Incubator, New Graduate и Experienced. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.
Чтобы учиться на курсах Cisco CCNA Routing & Switching и Linux LPI, подайте заявку или получите бесплатную консультацию.

Рубрики:

MySQL

Метки:

, , ,

Больше похожих постов

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Заполните поле
Заполните поле
Пожалуйста, введите корректный адрес email.
Вы должны согласиться с условиями для продолжения

Поиск по сайту
Лучшее
Популярное
Рубрики
Меню
Send this to a friend