PhpMyAdmin – это веб-приложение для управления базами данных MySQL. Он предлагает удобные инструменты для работы с базой данных и при этом не требует знаний SQL-команд или взаимодействия с терминальной строкой.
PhpMyAdmin позволяет управлять базами данных: создавать, изменять или удалять их. С его помощью возможен импорт и экспорт данных в базу в различных форматах. PhpMyAdmin дает возможность выполнять SQL-запросы напрямую из веб-интерфейса, что может потребоваться при управлении данными, выгрузке отчетов или проведении сложных операций с базой. Веб-интерфейс phpMyAdmin на Nginx-сервере предоставляет удобный способ просмотра и редактирования данных в таблицах БД. Это позволяет легко просматривать содержимое таблиц, фильтровать данные и вносить изменения в записи.
Перед тем как установить phpMyAdmin на Debian следует обновить пакеты системы и установить стек LEMP (Linux, Nginx, MySQL, PHP).
sudo apt update
sudo apt-get install nginx
sudo systemctl start nginx
sudo systemctl enable nginx
sudo apt-get install mysql-server
Во время установки потребуется указать пароль root для базы данных.
sudo systemctl start mysql
sudo systemctl enable mysql
sudo apt-get install php php-fpm php-mysql
sudo nano /etc/php/7.4/fpm/php.ini.
Вы можете заменить значения в файле php.ini в соответствии с требованиями вашего проекта.
sudo systemctl restart php7.4-fpm
sudo nano /etc/nginx/sites-available/default
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.4-fpm.sock;
}
location ~ /\.ht {
deny all;
}
sudo systemctl restart nginx
После выполнения всех указанных действий, стек LEMP будет успешно установлен на вашем сервере Debian.
Для стабильной работы ОС Debian и загрузки phpMyAdmin рекомендуем использовать услугу VDS-хостинга от RU-CENTER. На каждом тарифе вам доступны: панель управления сервером, безлимитный трафик, аппаратная виртуализация KVM, выделенный адрес IPv4 и круглосуточная поддержка.
Когда предварительные шаги выполнены, перейдем непосредственно к загрузке phpMyAdmin.
sudo apt install phpmyadmin
Во время установки вам потребуется выбрать веб-сервер, укажите предпочтительный веб-сервер Nginx и продолжите установку.
sudo ln -s /usr/share/phpmyadmin /var/www/html/phpmyadmin
В данной ссылке предполагается, что ваш веб-сервер Nginx настроен на директорию /var/www/html для вашего документ-корня. Если это не так, замените путь в команде на соответствующий в вашей системе.
sudo systemctl restart Nginx
Чтобы зайти в PhpMyAdmin достаточно выполнить несколько простых действий.
Если учетные данные введены правильно, вы будете перенаправлены на главную страницу PhpMyAdmin, где вы сможете управлять вашими базами данных и производить различные операции с ними.
Обратите внимание, что для входа в PhpMyAdmin требуется иметь учетную запись с правами доступа к базам данных MySQL. Если у вас возникнут проблемы или ошибки при входе, проверьте, что вы правильно указали учетные данные.
Настройка безопасности в PhpMyAdmin включает ряд мероприятий для защиты вашей базы данных от несанкционированного доступа.
Отдельно рассмотрим как ограничить доступ root, чтобы повысить безопасность системы.
Чтобы отключить доступ root-пользователя в PhpMyAdmin в файле конфигурации (config.inc.php, как правило, находится в каталоге установки) измените значение $cfg['Servers'][$i]['AllowRoot'] с true на false:
$cfg['Servers'][$i]['AllowRoot'] = false.
Сохраните сделанные изменения.
Отключение доступа root-пользователя дает еще один уровень безопасности. Рекомендуем всегда создавать отдельные учетные записи пользователей с ограниченными правами для обычных задач по управлению базами данных, а не использовать root-пользователя.
Установка второго шлюза аутентификации в phpMyAdmin включает использование модуля аутентификации для второго фактора, например, Google Authenticator.
sudo apt install libpam-google-authenticator
Эта команда устанавливает модуль аутентификации Google Authenticator, используемый для второго шага аутентификации.
google-authenticator
Выполните настройку Google Authenticator, следуя инструкциям на экране, чтобы создать QR-код и получить секретный ключ. Вам будет предложено настроить дополнительные параметры: использование временных паролей и использование скрытых ключей. Рекомендуем сохранить секретный ключ в безопасном месте.
sudo nano /etc/pam.d/phpmyadmin
sudo nano /etc/phpmyadmin/config.inc.php
$cfg['LoginCookieValidity'] = 60 * 60 * 2;
Эта строка устанавливает длительность срока действия cookie для аутентификации. Здесь значение установлено на 2 часа (60 60 2), измените его в соответствии с вашими требованиями..
sudo systemctl restart Nginx
Теперь при попытке входа в phpMyAdmin будет запрошен ввод кода аутентификатора Google Authenticator после стандартной аутентификации.
В качестве второго шага аутентификации вы можете использовать другие модули для второго фактора: аппаратные ключи или SMS-подтверждения, аутентификации через базу данных или настройки входа через LDAP.