Как установить и защитить phpMyAdmin с Apache в Debian 9

Как установить и настроить phpMyAdmin с Apache в Debian 9

phpMyAdmin — бесплатное приложение на базе PHP с открытым исходным кодом, разработанное для упрощения администрирования серверов MySQL и MariaDB через веб-интерфейс.

phpMyAdmin позволяет управлять базами данных MySQL, учетными записями пользователей и привилегиями, выполнять SQL-операторы, импортировать и экспортировать данные в самых разных форматах и многое другое.

В этом руководстве описываются шаги, необходимые для установки и защиты phpMyAdmin в Debian 9 с веб-сервером Apache.

Предпосылки

Прежде чем приступить к изучению этого руководства, убедитесь, что выполнены следующие требования:

Хотя это необязательно, рекомендуется подключаться к установке phpMyAdmin по HTTPS. Если ваш домен ещё не защищён SSL, вы можете следовать этому руководству и защитить Apache с помощью Let's Encrypt в Debian 9 .

Установка phpMyAdmin

Для установки phpMyAdmin в Debian 9 выполните следующие шаги:

  1. Обновите индекс пакетов и обновите системные пакеты до последних версий:

     sudo apt update && sudo apt upgrade
  2. Установите пакет phpMyAdmin из репозиториев Debian по умолчанию, введя:

     sudo apt install phpmyadmin

    Установщик попросит вас выбрать веб-сервер, который следует автоматически настроить для запуска phpMyAdmin. Выберите Apache, нажав Space , а затем Enter .

    настройка веб-сервера phpmyadmin

    Далее вам будет предложено использовать dbconfig-common для настройки базы данных, выберите Yes и нажмите Enter .

    настройка базы данных phpmyadmin

    Введите пароль для phpMyAdmin для регистрации в базе данных, выберите OK и нажмите Enter .

    настройка пароля phpmyadmin

    Подтвердите пароль, выберите OK и нажмите Enter .

    настройка phpmyadmin подтверждение пароля
  3. После завершения процесса установки перезапустите Apache, чтобы изменения вступили в силу:

     sudo systemctl restart apache2

Создание административного пользователя MySQL

В системах Debian под управлением MariaDB 10.1 (и более поздних версий) пользователь root по умолчанию настроен на использование метода аутентификации auth_socket .

Плагин auth_socket аутентифицирует пользователей, подключающихся с локального хоста через файл сокета Unix. Это означает, что вы не сможете пройти аутентификацию как пользователь root, указав пароль.

Вместо изменения метода аутентификации для пользователя root в MySQL мы создадим нового административного пользователя MySQL. Этот пользователь будет иметь те же привилегии, что и пользователь root, и будет использовать метод аутентификации mysql_native_password .

Мы будем использовать этого пользователя для входа в панель управления phpMyAdmin и выполнения административных задач на нашем сервере MySQL или MariaDB.

Начните с входа на сервер MySQL как пользователь root:

 sudo mysql

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

 CREATE USER 'padmin'@'localhost' IDENTIFIED BY 'super-strong-password'; GRANT ALL PRIVILEGES ON *.* TO 'padmin'@'localhost' WITH GRANT OPTION;

Мы назвали администратора padmin . Вы можете использовать любое имя, только не забудьте установить надёжный пароль.

Доступ к phpMyAdmin

Чтобы получить доступ к интерфейсу phpMyAdmin, откройте ваш любимый браузер и введите доменное имя вашего сервера или публичный IP-адрес, а затем /phpmyadmin :

 https://your_domain_or_ip_address/phpmyadmin

Введите ранее созданные вами учетные данные администратора и нажмите кнопку « Go .

вход в phpmyadmin

После входа в систему вы увидите панель управления phpMyAdmin, которая будет выглядеть примерно так:

интерфейс phpmyadmin

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

Чтобы добавить дополнительный уровень безопасности, мы защитим паролем каталог phpMyAdmin, настроив базовую аутентификацию.

Сначала мы создадим файл паролей для пользователей с помощью инструмента htpasswd , входящего в состав пакета Apache. Файл .htpasswd будет храниться в каталоге /etc/phpmyadmin :

 sudo htpasswd -c /etc/phpmyadmin/.htpasswd padmin

В этом примере мы создаём пользователя с именем padmin . Вы можете выбрать любое имя пользователя, оно не обязательно должно совпадать с именем администратора MySQL.

Приведенная выше команда предложит вам ввести и подтвердить пароль пользователя.

 New password: Re-type new password: Adding password for user padmin

Если вы хотите добавить дополнительного пользователя, вы можете использовать ту же команду без флага -c :

 sudo htpasswd /etc/phpmyadmin/.htpasswd padmin2

Следующим шагом будет настройка Apache для защиты паролем каталога phpMyAdmin и использования файла .htpasswd .

Для этого откройте файл phpmyadmin.conf , который был автоматически создан во время установки phpMyAdmin:

 sudo nano /etc/apache2/conf-available/phpmyadmin.conf

И отредактируйте/вставьте следующие строки, выделенные желтым цветом:

/etc/apache2/conf-available/phpmyadmin.conf

  /usr/share/phpmyadmin > Options +FollowSymLinks +Multiviews +Indexes # edit this line DirectoryIndex index.php AllowOverride None AuthType basic AuthName "Authentication Required" AuthUserFile /etc/phpmyadmin/.htpasswd Require valid-user  mod_php5.c > ...

Сохраните и закройте файл, а затем перезапустите Apache, чтобы изменения вступили в силу:

 sudo systemctl restart apache2

Теперь при доступе к phpMyAdmin вам будет предложено ввести учетные данные ранее созданного вами пользователя:

 https://your_domain_or_ip_address/phpmyadmin 
базовая аутентификация phpmyadmin

После входа в базовую аутентификацию вы попадете на страницу входа в phpMyAdmin, где вам необходимо ввести учетные данные администратора MySQL.

Также хорошей идеей будет изменить псевдоним /phpmyadmin на что-то более уникальное и безопасное.

Заключение

Поздравляем! Вы успешно установили phpMyAdmin на свой сервер Debian 9. Теперь вы можете приступить к созданию баз данных MySQL, пользователей и таблиц , а также выполнять различные запросы и операции MySQL.

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

debian phpmyadmin mysql mariadb apache php Не используете Debian 9?
Выберите другую ОС:
центос 7 убунту 18.04

Связанные руководства

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *