Настройка mariadb debian 10

Обновлено: 03.07.2024

MariaDB – это открытая реляционная система управления базами данных (СУБД), которая является частью стека LAMP (Linux, Apache, MySQL, PHP/Python/Perl). Для управления данными MariaDB использует SQL (Structured Query Language). MariaDB – это форк проекта MySQL, разработанный и поддерживаемый создателями MySQL в 2009 году из-за вопросов лицензирования.

Если вкратце, то установить MariaDB можно в три этапа: обновить индекс локальных пакетов, установить пакет mariadb-server и запустить сценарий безопасности:

sudo apt update
sudo apt install mariadb-server
sudo mysql_secure_installation

В этом мануале мы более подробно расскажем об установке и настройке MariaDB 10.3 на сервер Debian 10.

Требования

  • Сервер Debian 10.
  • Пользователь с доступом к sudo.
  • Базовый брандмауэр.

1: Установка MariaDB

Debian 10 содержит пакет MariaDB 10.3 в стандартном репозитории. Это его версия MySQL/MariaDB по умолчанию.

Чтобы установить ее, обновите индекс пакетов:

sudo apt update

Теперь установите пакет:

sudo apt install mariadb-server

Команда установит MariaDB, но не предложит вам выбрать пароль или изменить другие настройки. На данный момент установка MariaDB имеет несколько уязвимостей, которые нужно устранить. Для этого пакет mariadb-server предоставляет специальный скрипт.

2: Настройка MariaDB

После завершения установки нужно запустить сценарий безопасности, который удалит ненадёжные параметры и защитит БД от несанкционированного доступа.

Этот сценарий задаст ряд вопросов, с помощью которых он внесет поправки в параметры безопасности БД. Сначала он попросит ввести текущий root-пароль. Поскольку вы установили MariaDB только что и еще не внесли никаких изменений в конфигурацию, этого пароля у вас пока что нет, поэтому просто нажмите Enter.

В следующем запросе скрипт предложит настроить пароль root для базы данных. Введите N и нажмите клавишу Enter. В Debian учетная запись root MariaDB тесно связана с автоматизированным обслуживанием системы, поэтому изменять стандартные методы аутентификации этой учетной записи нельзя. Иначе при обновлении пакета БД может повредиться, а доступ к учетной записи root может быть утрачен. Позже мы рассмотрим, как настроить дополнительную учетную запись администратора, если аутентификация сокетов вам не подходит.

На остальные вопросы можно нажать Y и Enter. Это удалит анонимных пользователей и тестовые базы данных, отключит удалённый root логин и обновит текущие настройки MariaDB.

3: Настройка пользовательских привилегий и парольной аутентификации (опционально)

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

Поскольку сервер использует root-пользователя для таких задач, как ротация логов, запуск и остановка сервера, аутентификацию учетной записи root лучше не изменять. Изменение учетных данных в файле /etc/mysql/debian.cnf может сработать на начальном этапе, но дальнейшие обновления пакетов перезапишут все изменения. Вместо этого разработчики рекомендуют создать отдельную учетную запись администратора с парольной аутентификацией.

Итак, создайте аккаунт под названием admin с теми же правами, что и у root, но с поддержкой парольной аутентификации. Для этого откройте командную строку MariaDB:

Затем создайте нового пользователя с привилегиями root и поддержкой парольной аутентификации. Укажите в команде имя и пароль своего пользователя.

MariaDB [(none)]> GRANT ALL ON *.* TO 'admin'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;

MariaDB [(none)]> FLUSH PRIVILEGES;

Закройте оболочку MariaDB:

MariaDB [(none)]> exit

4: Тестирование MariaDB

При установке из стандартного репозитория СУБД MariaDB запускается автоматически. Чтобы убедиться в этом, проверьте состояние сервиса:

sudo systemctl status mariadb

Вы получите такой вывод:

Если MariaDB по какой-то причине не запустилась, введите:

sudo systemctl start mariadb

Для дополнительной проверки вы можете попробовать подключиться к базе данных с помощью инструмента mysqladmin (это клиент, который позволяет запускать административные команды). Например, эта команда подключится к MariaDB как root и выведет версию с помощью Unix-сокета:

sudo mysqladmin version
mysqladmin Ver 9.1 Distrib 10.3.15-MariaDB, for debian-linux-gnu on x86_64
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Server version 10.3.15-MariaDB-1
Protocol version 10
Connection Localhost via UNIX socket
UNIX socket /var/run/mysqld/mysqld.sock
Uptime: 48 min 14 sec
Threads: 7 Questions: 474 Slow queries: 0 Opens: 177 Flush tables: 1 Open tables: 31 Queries per second avg: 0.163

Если вы создали дополнительного администратора, вы можете выполнить эту операцию с помощью такой команды:

mysqladmin -u admin -p version

Теперь СУБД MariaDB запущена и работает должным образом.

Заключение

Вы успешно создали базовую установку MariaDB.

Теперь вы можете добавить в нее данные или обеспечить более надежную защиту своему серверу. Также можно установить другие программы из стека LEMP или LАMP.

Как установить MariaDB на Debian 10

На момент написания этой статьи последней версией MariaDB, доступной в репозиториях Debian, была версия 10.3.

Выполните следующие шаги от имени пользователя root или пользователя с правами sudo, чтобы установить MariaDB в Debian 10:

Начните с обновления индекса пакетов:

Установите серверные и клиентские пакеты MariaDB, выполнив следующую команду:

Сервис MariaDB запустится автоматически. Чтобы убедиться в этом, проверьте статус службы:


Результат должен выглядеть примерно так:


Обеспечение безопасности MariaDB

MariaDB поставляется со сценарием, который может помочь вам повысить безопасность установки. Чтобы запустить скрипт mysql_secure_installation в вашем терминале:


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

Если этот параметр выбран, сценарий перезагрузит таблицы привилегий, чтобы изменения вступили в силу немедленно.

Все шаги подробно объяснены, и на все вопросы рекомендуется отвечать «Д» (да).

Методы аутентификации

По умолчанию пользователь root MariaDB использует unix_socket плагин аутентификации, который проверяет действующий идентификатор пользователя при вызове mysql клиентского инструмента.

Это означает, что вы можете подключиться к серверу MariaDB как root, только если вы вызываете mysql команду как системный root или добавляете sudo к команде.

Для повышения безопасности рекомендуется оставить плагин аутентификации по умолчанию и разрешить пользователю root аутентифицироваться только через сокеты Unix.

Если вы хотите изменить корневую аутентификацию на классическую, войдите на сервер MariaDB:


Выполните следующие инструкции, чтобы изменить плагин аутентификации:

Теперь вы можете подключиться к серверу MariaDB, используя новый пароль:


Изменение плагина аутентификации также позволит вам войти в систему как root из внешней программы, такой как phpMyAdmin.

Заключение

В этом руководстве мы показали вам, как установить и защитить MariaDB на сервере Debian 10.


26 мая 2021 23:05:30 | 0 comments

Установка MariaDB 10.5 на Debian 10

Пару лет назад я писал статью про установку MariaDB 10.4 на Debian 9. С тех пор утекло много времени, уже давненько вышла MariaDB 10.5 и пора написать про ее установку. В установке и настройке MariaDB 10.5 есть несколько нюансов, поэтому будьте внимательны.

Итак, давайте попробуем установить MariaDB 10.5 на чистую систему Debian 10 (Buster).

На момент написания статьи актуальна версия MariaDB 10.5.10
Полный список изменений можно найти apt-get update apt-get install dirmngr curl wget -y

Результат работы скрипта:

P.S. Для любителей все делать руками есть удобный портал, где можно более гибко выбрать нужный репозитарий в зависимости от географического положения вашего сервера.

3. Обновляем список пакетов:

4. Устанавливаем последнюю версию MariaDB 10.5.x:

В процессе установки инсталлятор попросит нас придумать пароль пользователя root, на данном этапе мы его оставим пустым и поменяем потом.

После установки проверим статус работы MariaDB:

А так же попробуем подключиться к БД с помощью команды mariadb:

Мы успешно подключились к серверу MariaDB.

5. Теперь запустим мастер настройки безопасности:

На вопрос:
Enter current password for root (enter for none):
нажимаем Enter, текущий пароль root у нас пустой.

Далее вопрос:
Change the root password? [Y/n]
вводим Y, да мы хотим поменять пароль root
и далее придумываем СЛОЖНЫЙ пароль root

Далее вопрос:
Remove anonymous users? [Y/n]
вводим Y, мы хотим удалить анонимного пользователя.

Далее вопрос:
Disallow root login remotely? [Y/n]
вводим Y, да мы хотим запретить подключаться под пользователем root с удаленных машин.

Далее вопрос:
Remove test database and access to it? [Y/n]
вводим Y, да мы хотим удалить тестовую базу test

И последний вопрос:
Reload privilege tables now? [Y/n]
вводим Y, да мы хотим перезагрузить таблицу привилегий для вступления их в силу.

После этого мы выполнили минимальные меры по защите нашего экземпляра MariaDB.

Чтобы проверить, что под root с пустым паролем нас не пустят нам нужно залогиниться под непривилегированным пользователем и попробовать выполнить (когда у нас спросят пароль root, мы нажмем Enter, тем самым пароль будет пустым):

Как мы видим с пустым паролем root нас больше не пускают.

А теперь так же находясь под непривилегированным пользователем на запрос пароля введем его:

Отлично, все получилось.

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

Favorite

Добавить в избранное (1 оценок, среднее: 5,00 из 5)

Как установить MariaDB на Debian 10

В этой статье объясняется, как установить MariaDB в Debian 10.

Установка MariaDB в Debian 10

Для установки MariaDB в Debian 10 выполните следующие действия как пользователь root или пользователь с привилегиями sudo:

  1. Начните с обновления индекса пакетов:
  2. Установите серверные и клиентские пакеты MariaDB, выполнив следующую команду:

Как запустить сервер MariaDB

Как запустить сервер MariaDB при загрузке

Вывод должен выглядеть примерно так:

Защита MariaDB

MariaDB поставляется со скриптом, который может помочь вам повысить безопасность установки. Чтобы запустить скрипт mysql_secure_installation в вашем терминале:

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

Если этот параметр выбран, сценарий перезагрузит таблицы привилегий, гарантируя, что изменения вступят в силу немедленно.

Все шаги объяснены подробно, и рекомендуется ответить «Y» (да) на все вопросы.

Методы аутентификации

По умолчанию корневой пользователь MariaDB использует плагин аутентификации unix_socket, который проверяет эффективный идентификатор пользователя при вызове в mysql клиентского инструмента.

Это означает, что вы можете подключиться к серверу MariaDB как пользователь root, только если вы вызываете команду mysql как системный root или добавляете sudo к команде.

Для повышения безопасности рекомендуется оставить подключаемый модуль аутентификации по умолчанию и разрешить пользователю root проходить аутентификацию только через сокеты Unix.

Если вы хотите изменить аутентификацию root на классическую, войдите на сервер MariaDB:

Запустите следующие операторы, чтобы изменить плагин аутентификации:

Теперь вы можете подключиться к серверу MariaDB, используя новый пароль:

Изменение плагина аутентификации также позволит вам войти в систему как root из внешней программы, такой как phpMyAdmin.

Заключение

В этой статье мы показали, как установить и защитить MariaDB на сервере Debian 10.

Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Читайте также: