→ При разработке сайта лендинг в подарок! ЖМИ! ←
Июл
13

MySQL и пользователь root

Выполнение MySQL от имени root может иметь катастрофические последствия. Это было одной из главных причин, приведших к компрометации  сайта арасhe.org. Лучше всего создать пользователя samoychka или эквивалентного и запускать  под оболочкой safe_mysql от имени этого пользователя.

Один только этот шаг позволит существенно повысить защищенность. Необходимо обеспечить этому непривилегированному пользователю доступ к каталогам данных  и выполнение двоичного модуля  Сначала надо завершить работу сервера, что делается с помощью специальной команды:

  • mysqladmin -p -и root shutdown

Допустим, что каталог данных mysql расположен в /home/mysql/data, тогда надо предоставить доступ к этим каталогам только пользователю samoychka (в последующих командах указывается как samoychka). Это можно обеспечить выполнением в оболочке следующих команд:

  • chown -R samoychka /home/mysql/data
  • chmod -R go-rwx /home/mysql/data

При наличии в этих каталогах символических ссылок те же команды должны быть выполнены с адресатом этих символических ссылок. Кроме того, проверьте, чтобы сокет unix не находился в том же каталоге данных. Это обеспечивается параметром настройки -with-unix-socket-path прикомпиляции.

Наконец, перезапустим сервер MySQL. Это делается с помощью сценария safejnysql , выполняемого от имени пользователя mysql :

  • safe_mysql -user=samoychka

Можно обойти использование параметра user при каждом запуске mysql , если задать его в файле my. cnf в разделе [mysqld] :

  • user=samoychka

Еще одна мера предосторожности заключается в защите файла /etc/my, cnf .Иначе ничто не помешает кому-нибудь установить в директиве User пользователя root. Владельцем этого файла должен быть root, но права чтения должны быть предоставлены всем. Это достигается командами:

  • chown root /etc/my.cnf
  • chmod 644 /etc/my.cnf

Целесообразно удалить различные малозначительные компоненты, включенные в установку по умолчанию, в том числе:

  • Удалить тестовую базу данных
  • Отключить удаленный доступ
  • Отключить доступ без имени пользователя
  • Задать пароль для root

Прокомментировать

Рубрики

Наши услуги

В прямом эфире