Назад | Перейти на главную страницу

Насколько безопасно хранить пароль root mysql в /root/.my.conf?

Я никогда не думал об этом раньше. Я использую менеджер паролей для всех своих учетных записей (web / server-admin / и т. Д.).

Но сегодня я читал об установке Nextcloud на сервере Debian, и там сказано:

Вам следует сохранить свое имя пользователя root и пароль MariaDB в файле .my.cnf, так как это позволит вам войти в MariaDB и выполнять команды SQL без запроса пароля.

@ Как установить Nextcloud 12 Server на Debian 9 с HTTPS

Нужно ли мне?

В поисках ответа на этот вопрос я нашел вот что: Пароль root mysql - где его хранить?, где они подразумевают, что это нормальная ситуация.

Я уже запустил mysql_secure_installation сценарий. Итак, пароль root уже изменен. Следует ли мне поместить этот пароль в этот /root/.my.cnf файл?

Есть ли где-нибудь дополнительная информация об этом? Мне действительно трудно в это поверить: хранить пароль в виде обычного текста на моем сервере кажется мне очень плохой идеей.

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

Я лично считаю это плохим советом по ряду причин.

  • Обычно вы не должны находиться в системе с правами root.
  • Даже если бы вы были, вы обычно не должны быть MySQL корень.
  • Даже если это так, вы должны использовать вместо этого диспетчер паролей или клиент SQL, который поддерживает безопасное сохранение паролей.

Удобство здесь не стоит компромиссов безопасности и удобно только в том случае, если вы в любом случае уже выполнили некоторые другие небезопасные методы.

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

Я не знаю, совместима ли MariaDB с функцией MySQL для хранения ваших учетных данных, зашифрованных с помощью Редактор конфигурации MySQL в ~/.mylogin.cnf но это может быть одним из вариантов, если вы хотите хранить пароли на сервере.

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

Лично я всегда проявляю осторожность и делаю это только в тех случаях, когда вы не возражаете, если информация, которая должна быть защищена паролем, небезопасна или иным образом полностью уничтожена злоумышленником.