Перейти к основному контенту

Как установить и защитить phpMyAdmin на Ubuntu 18.04/20.04

phpMyAdmin — веб-приложение для администрирования СУБД MySQL. Благодаря веб-интерфейсу работать с базами данными проще и быстрее, чем через консоль.

В этой статье мы пошагово покажем, как установить и обезопасить phpMyAdmin Ubuntu 18.04/20.04.

Этап 1. Подготовка к установке

  1. 1.
    Перед установкой phpMyAdmin подключитесь к серверу по SSH.
  2. 2.

    Создайте пользователя non-root с sudo-правами. Для этого выполните команду:

    adduser UserName

    Где UserName — имя нового пользователя.

    Система попросит ввести пароль для нового пользователя и дополнительную информацию.

  3. 3.

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

    usermod -aG sudo UserName

    Где UserName — имя созданного ранее пользователя.

  4. 4.
  5. 5.
    Обезопасьте соединение с сервером с помощью SSL-сертификата. Так как phpMyAdmin использует веб-интерфейс и требует ввода логина и пароля, использование HTTP-протокола небезопасно. Рекомендуем установить SSL-сертификат.

Готово, подготовка завершена, далее установите phpMyAdmin.

Этап 2. Установка phpMyAdmin

  1. 1.

    Обновите операционную систему до актуального состояния с помощью команды:

    sudo apt update
  2. 2.

    Установите расширения PHP, которые нужны для работы phpMyAdmin:

    sudo apt install php-mbstring php-zip php-gd php-json php-curl
  3. 3.

    Включите расширение PHP mbstring. Для этого выполните команду:

    sudo phpenmod mbstring
  4. 4.

    Установите phpMyAdmin:

    sudo apt install phpmyadmin
  5. 5.

    Во всплывающем окне «Конфигурация phpMyAdmin» выберите apache2 и нажмите Ok:

  6. 6.

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

  7. 7.

    Задайте root-пароль и нажмите Ok:

  8. 8.

    Повторите пароль и нажмите Ok:

    Если возникла ошибка

    Если при активации расширения возникла ошибка, это значит, что расширение не установлено. Установить расширение можно командой:

    sudo apt install php7.4-mbstring

    Где:

    • 7.4 — версию PHP, которая установлена на сервер. По умолчанию на Ubuntu 18.04 устанавливается версия 7.2, а на Ubuntu 20.04 — 7.4;

    • mbstring — нужное расширение.

  9. 4.

    Перезагрузите Apache командой:

    sudo systemctl restart apache2
  10. 5.

    Перейдите по адресу 123.123.123.123/phpmyadmin

    Вместо 123.123.123.123 укажите IP-адрес вашего сервера.

    Откроется страница авторизации в phpMyAdmin. Авторизуйтесь в панели, используя логин root и пароль, который вы указали при установке MySQL.

    phpMyAdmin установка phpMyAdmin установка

Готово, установка phpMyAdmin завершена.

Этап 3. Настройка безопасности phpMyAdmin

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

  1. 1.

    Откройте конфигурационный файл веб-сервера Apache:

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

    Добавьте следующую строку в файл:

    AllowOverride All

    phpMyAdmin Ubuntu phpMyAdmin Ubuntu

  3. 3.

    Сохраните и закройте файл. Перезагрузите Apache командой:

    sudo systemctl restart apache2
  4. 4.

    Создайте файл .htaccess для phpMyAdmin командой:

    sudo nano /usr/share/phpmyadmin/.htaccess

    Добавьте в файл следующие строки:

    AuthType Basic
    AuthName "Restricted Files"
    AuthUserFile /etc/phpmyadmin/.htpasswd
    Require valid-user

    Где:

    • AuthType Basic — тип авторизации. Basic означает, что авторизация будет осуществляться на основе пароля,
    • AuthName — текст приветствия в диалоге авторизации,
    • AuthUserFile — файл пароля, который используется для авторизации. Файл должен находиться в недоступной для внешнего мира директории. Ниже мы создадим этот файл,
    • Require valid-user — указывает, что только авторизованные пользователи могут иметь доступ к защищаемой системе.

    После ввода указанных строк сохраните и закройте файл.

    phpMyAdmin защитить phpMyAdmin защитить

  5. 5.

    Создайте файл, путь к которому был указан в 4 шаге в значении AuthUserFile, и добавьте в него пользователя.

    Сначала установите утилиту htpasswd:

    sudo apt-get install apache2-utils

    Создайте файл и первого пользователя командой:

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

    Где username — имя пользователя, с помощью которого будет происходить авторизация.

    Введите пароль для нового пользователя. После этого файл будет создан и в него будет добавлен хэш указанного вами пароля.

    Чтобы создать дополнительного пользователя, используйте эту же команду без флага -c.

  6. 6.

    Теперь при попытке зайти по адресу «123.123.123.123/phpmyadmin» (где 123.123.123.123 — IP-адрес вашего сервера) будет появляться окно авторизации:

    phpMyAdmin Linux установка

Готово, настройка безопасности завершена.

Ошибка при настройке авторизации. Отключение компонента Validate Password

Иногда при установке LAMP автоматически активируется плагин Validate Password. Из-за этого плагина может возникнуть ошибка при настройке авторизации в phpMyAdmin:

Чтобы её устранить, отключите Validate Password. Для этого:

  1. 1.

    Откройте командную строку MySQL:

    sudo mysql
  2. 2.

    Если вы активировали аутентификацию MySQL по паролю для пользователя с правами root, запустите команду:

    mysql -u root –p
  3. 3.

    Для отключения Validate Password введите команду:

    UNINSTALL COMPONENT "file://component_validate_password";
  4. 4.

    Закройте клиента MySQL:

    exit
  5. 5.
    Повторите все шаги, начиная со второго этапа.
Была ли эта статья полезной?
Пользователи, считающие этот материал полезным: 0 из 0