Как установить и защитить phpMyAdmin с помощью Apache в Ubuntu 18.04

Как установить и настроить phpMyAdmin с Apache в Ubuntu 18.04

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

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

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

Предпосылки

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

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

Установка phpMyAdmin

Чтобы установить phpMyAdmin на сервер Ubuntu 18.04, выполните следующие действия:

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

     sudo apt update && sudo apt upgrade
  2. Установите пакет phpMyAdmin из репозиториев Ubuntu по умолчанию с помощью следующей команды:

     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

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

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

Вместо изменения метода аутентификации для пользователя MySQL root мы создадим нового административного пользователя 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 на свой сервер Ubuntu 18.04. Теперь вы можете приступить к созданию баз данных MySQL, пользователей и таблиц , а также выполнять различные запросы и операции с MySQL.

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

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

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

Источник

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

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