Незважаючи на те, що багато користувачів відчувають потребу в системі управління базами даних на зразок MySQL, робота з MySQL тільки за допомогою засобів командного рядка може викликати дискомфорт.
phpMyAdmin був створений для того, щоб користувачі могли управляти базою даних MySQL за допомогою веб-інтерфейсу. У цій статті ми розповімо про те, як встановити та налаштувати phpMyAdmin для безпечної роботи з вашими базами даних в Ubuntu 16.04.
перед установкою
Перед тим, як ми почнемо, переконайтеся, що у вас є все необхідне.
Перш за все, ми будемо виходити з того, що у вас є не-рутовий (non-root) користувач з привілеями sudo. Налаштувати таку обліковий запис користувача можна слідуючи крокам 1-4 в статті про первинну налаштування сервера на Ubuntu 16.04.
Ми також будемо вважати, що ви завершили настройку стека LAMP (Linux, Apache, MySQL та PHP) на вашому сервері з Ubuntu 16.04. Якщо ви ще не зробили цього, ви можете ознайомитися з цим процесом в статті про установку стека LAMP на Ubuntu 16.04.
І, нарешті, необхідно мати на увазі деякі питання безпеки при використанні phpMyAdmin, оскільки він:
- Безпосередньо взаємодіє з MySQL.
- Виконує аутентифікацію використовую логін і пароль MySQL.
- Виконує і повертає результати довільних запитів SQL.
Після виконання описаних вище заходів, ви можете почати слідувати кроків, зазначеним в цій статті.
Крок 1 - Установка phpMyAdmin
Спочатку встановимо phpMyAdmin з репозиторіїв Ubuntu за замовчуванням.
Для цього оновимо наш локальний індекс пакетів, а потім використовуємо систему управління пакетами apt для завантаження і установки необхідних файлів:
- sudo apt-get update
- sudo apt-get install phpmyadmin php-mbstring php-gettext
В процесі установки вам буде задано кілька запитань по конфігурації.
Увага:
Під час першого діалогу apache2 підсвічений, але не вибрати. Якщо ви не натиснете пробіл для вибору Apache, програми встановлення перемістить необхідні файли в процесі установки. Натисніть Пропуск. Tab. а потім Enter для вибору Apache.
- При виборі сервера, виберіть apache2.
- Дайте відповідь yes на питання, чи хочете ви використовувати dbconfig-common для настройки бази даних.
- У вас буде запропоновано ввести відповідний пароль адміністратора бази даних.
- Далі вам буде запропоновано ввести і повторити пароль для самого phpMyAdmin.
В процесі установки в директорію / etc / apache2 / conf-enabled / буде додано файл конфігурації phpMyAdmin для Apache.
Єдине, що ми повинні зробити вручну, так це включити розширення PHP mcrypt і mbstring наступними командами:
- sudo phpenmod mcrypt
- sudo phpenmod mbstring
Далі перезапустити Apache для застосування змін:
- sudo systemctl restart apache2
Тепер ви можете увійти в веб-інтерфейс використовуючи ім'я користувача root і пароль, заданий в процесі установки MySQL.
Після входу ви побачите схожий інтерфейс користувача:
Крок 2 - Робимо phpMyAdmin безпечніше
Налаштування Apache для дозволу використання .htaccess
Спочатку включимо можливість використання файлу .htaccess в нашому файлі конфігурації Apache.
Ми будемо редагувати файл в нашій конфигурационной директорії Apache:
- sudo nano /etc/apache2/conf-available/phpmyadmin.conf
Нам необхідно додати директиву AllowOverride All в секцію конфігураційного файлу:
Після того, як ви додали цей рядок, збережіть і закрийте файл.
Для застосування змін перезапустіть Apache:
- sudo systemctl restart apache2
Створення файлу .htaccess
Тепер, коли ми дозволили використовувати .htaccess для нашого застосування, нам необхідно створити такий файл.
Файл необхідно створити в директорії додатку. Ми можемо створити необхідний файл і відкрити його для редагування за допомогою такої команди:
- sudo nano /usr/share/phpmyadmin/.htaccess
Тепер введемо наступну інформацію:
Введені нами рядки означають наступне:
Після введення зазначених рядків, збережіть і закрийте файл.
Створення файлу пароля .htpasswd для аутентифікації
Тепер, коли ми задали шлях для нашого файлу пароля в директиві AuthUserFile в нашому файлі .htaccess. нам необхідно створити цей файл.
Для того, щоб це зробити, нам знадобиться встановити додатковий пакет зі стандартних репозиторіїв:
- sudo apt-get install apache2-utils
Тепер нам доступна утиліта htpasswd.
Зазначений нами раніше шлях виглядав наступним чином: /etc/phpmyadmin/.htpasswd. Створимо цей файл і додамо в нього першого користувача за допомогою такої команди:
- sudo htpasswd -c /etc/phpmyadmin/.htpasswd username
Вам буде запропоновано вибрати і підтвердити пароль для створеного користувача. Після цього файл буде створений і в нього буде додано хеш зазначеного вами пароля.
Для додавання нового користувача виконайте наступну команду без прапора -c.
- sudo htpasswd /etc/phpmyadmin/.htpasswd additionaluser
Тепер, коли ви налаштували доступ до піддиректорії phpMyAdmin, при спробі входу в phpMyAdmin вам буде запропоновано ввести логін і пароль користувача:
Після введення логіна і пароля ви будете перенаправлені на сторінку аутентифікації phpMyAdmin. Таким чином, ми створили додатковий захисний шар для вашого phpMyAdmin.
висновок
Тепер у вас є phpMyAdmin, готовий до роботи на вашому сервері з Ubuntu 16.04. Використовуючи його інтерфейс ви можете легко створювати бази даних, користувачів, таблиці і багато іншого, а також виконувати звичайні операції модифікації або видалення збережених даних.