Image

База знаний → Установка и настройка phpMyAdmin на Lemp Debian 12

[Виртуальные сервера]
Дата публикации: 12.07.2023

Для работы с базами данных через веб интерфейс существует веб редактор phpMyAdmin. Данный инструмент подключается к базе данных MariaDB и отображает существующие базы данных, позволяет создавать новые, редактировать данные в таблицах. В целом все тоже самое, что можно сделать в консоли mysql, но гораздо удобней и наглядней, особенно при частых работах с данными. Рассмотрим установку phpMyAdmin на Сервер Linux Debian 12 с предварительно настроенным Nginx + MariaDB + PHP (LEMP).

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

1. Установим необходимые компоненты и сам редактор баз данных

apt install php-mbstring
apt install phpmyadmin


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

  • []apache2
  • []lighttpd

В нашем случае сервер с предустановленным LEMP и мы оставляем оба поля пустыми и нажимаем ОК.

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

2. Основные настройки

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

mysql -u root -p

CREATE USER 'alldbuser'@'localhost' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON . TO 'alldbuser'@'localhost'; FLUSH PRIVILEGES;

Теперь при авторизации под пользователем alldbuser отображаются все базы данных созданные на данном сервере.

Если нужно установить пароль для пользователя root, воспользуйтесь приведенными командами:

mysql -u root
use mysql;
FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'YOURNEWPASSWORD';
FLUSH PRIVILEGES;
exit

Добавим ссылку на папку phpMyAdmin в корневой каталог веб сервера nginx:

ln -s /usr/share/phpmyadmin /usr/share/nginx/html

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

vi /etc/nginx/conf.d/default.conf

location /phpmyadmin { auth_basic "Admin Login"; auth_basic_user_file /etc/nginx/pma_pass; }

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

htpasswd -c /etc/nginx/pma_pass pma_username

Перезапустим службу nginx:

systemctl restart nginx

Теперь при переходе по ссылке http://server-ip/phpmyadmin появится окно для ввода логина и пароля. В нашем случае логином будет pma_username.

Настройка завершена, мы настоятельно рекомендуем вводить пароли только используя https протокол с SSL сертификатом, во избежание перехвата данных.





Нет комментариев