Установка phpmyadmin для linux

Установка phpMyAdmin в Linux

Типичная задача для администраторов хостинг-площадок — это установка, настройка и обслуживание серверов баз данных (БД). Сюда также входит и предоставление клиентам хостинга удалённого доступа для управления своими БД, например для сайтов. Обычный пользователь, если он выполняет администрирование своих БД самостоятельно, хотя и не избавлен от необходимости знать язык SQL, однако со стороны хотинг-провайдера разумно предоставить ему удобный интерфейс для управления БД на хостинге. Для этого идеально подходит универсальное веб-приложение phpMyAdmin, которое предоставляет пользователю веб-интерфейс для полноценного доступа и управления БД. Это весьма удобное решение, поскольку совершенно не зависит от платформы и специфики клиентов — достаточно использовать любой веб-браузер. Конечно, phpMyAdmin полезен не только для хостинга, но и для ведения разработки.

Что для этого нужно?

Поскольку phpMyAdmin – это веб-приложение, а из названия понятно, что оно написано на языке PHP и, следовательно — работает благодаря интерпретатору PHP, то естественно, необходимо иметь в системе установленные и корректно настроенные веб-сервер (например Apache), а также интерпретатор PHP.

Третьим компонентом, без которого установка phpMyAdmin будет бессмысленной — это СУБД (система управления базами данных) MySQL.

Пакеты всех трёх необходимых компонентов, т. е. веб-сервера, интерпретатора PHP, а также сервера MySQL всегда есть в репозиториях всех дистрибутивов Linux. Имена пакетов будут разными в разных системах, но это уже вопрос более индивидуальный и выясняется отдельно.

Варианты установки для Linux

Следует заметить, что даже само приложение phpMyAdmin поставляется в виде отдельного пакета в большинстве дистрибутивов Linux. Практически всегда пакет называется phpmyadmin (как например в системах Ubuntu) или имеет похожее наименование. Он имеет соответствующие зависимости, т. е. вместе с phpMyAdmin будут также установлены (в большинстве популярных дисрибутивов Linux) веб-сервер Apache и интерпретатор PHP.

Таким образом, в том случае, если нет необходимости иметь самую свежую версию phpMyAdmin (поскольку не всегда в репозиториях всегда всё самое свежее) и нет желания возиться с системными файлами и файлами конфигураций, то можно просто воспользоваться системой управления пакетами (СУП) дистрибутива. Например, для Ubuntu:

При этом будет предложено на некоторых этапах установки выполнить некоторые настройки, например автоматическую настройку виртуального хоста веб-сервера и т. д. Этот процесс интуитивно понятен и сложностей не вызывает.

После завершения установки phpMyAdmin будет доступен по адресу http://localhost/phpmyadmin из любого веб-браузера.

Надо понимать, что при установке phpMyAdmin из системного репозитория происходит автоматическое скачивания пакета, его распаковка в определённый каталог, настройка веб-сервера для работы с виртуальным хостом phpmyadmin, а также установка некоторых зависимых модулей для Apache и PHP. Всё это выполняют установочные и конфигурационные скрипты. Такой вариант установки подходит для преимущественно локального использования phpMyAdmin и в большей степени удобен для разработчиков.

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

  • скачивание архива приложения phpMyAdmin с официального сайта https://www.phpmyadmin.net/downloads;
  • распаковка содержимого скачанного архива в папку виртуального хоста;
  • настройка виртуального хоста;
  • проверка конфигурации DNS или редактирование файла /etc/hosts для виртуального хоста phpMyAdmin;
  • включение виртуального хоста в конфигурацию веб-сервера;
  • перезапуск веб-сервера или полная перезагрузка его конфигурации.

Как можно видеть, не самый короткий список действий, но очень важно уметь выполнять их вручную.

Скачивание дистрибутива и его установка

Для получения архива с phpMyAdmin можно воспользоваться простой утилитой wget:

Архив будет сохранён в текущем каталоге, в данном случае в домашний каталог текущего пользователя (пусть это будет пользователь john)

/. Теперь необходимо произвести «установку» phpMyAdmin в каталог виртуального хоста Apache, например в

/htdocs. Под установкой здесь подразумевается распаковка файлов архива с помощью команды unzip , поскольку скачанный архив имеет формат *.zip:

Читайте также:  Windows cmd добавить команду

Эта команда распакует содержимое архива в каталог

/htdocs/phpMyAdmin-4.8.5-all-languages . Теперь можно задать корректное имя каталога с phpMyAdmin, переименовав его например в phpmyadmin:

Если используется TAR-архив (например phpMyAdmin-4.8.5-all-languages.tar.gz), то в этом случае следует использовать команду tar:

Собственно, на этом «установка» phpMyAdmin завершена. Далее следует произвести конфигурацию веб-сервера (в данном случае Apache), настроив для него виртуальный хост с соответствующим адресом, на котором будет работать phpMyAdmin.

Настройка виртуального хоста phpMyAdmin

Виртуальный хост — это программно-аппаратный интерфейс, через который веб-сервер взаимодействует с веб-приложениями и предоставляет им различные ресурсы. А для того, чтобы веб-сервер «знал» по какому адресу и порту взаимодействовать с веб-приложением, а также в каком каталоге оно находится, существуют специальные основные параметры виртуального хоста, в данном случае задаваемые с помощью директив Apache.

Каждому веб-приложению соответствует свой конфигурационный файл виртуального хоста. Но иногда это может быть один файл, включающий несколько конфигураций виртуальных хостов. Это зависит от дистрибутива Linux, но в подавляющем большинстве используются отдельные файлы.

По-умолчанию Apache использует для виртуальных хостов каталог /var/www, однако это можно изменить, задав использование, например, каталога с домашними подкаталогами пользователей, т. е. /home, это более удобно. Пусть веб-сервер Apache сконфигурирован таким образом, что директорией виртуальных хостов является /home. Тогда установленное ранее в каталог /home/john/htdocs/phpmyadmin приложение phpMyAdmin будет доступно веб-серверу. Теперь нужно задать параметры виртуального хоста phpmyadmin. Для этого следует создать файл phpmyadmin.conf в каталоге /etc/apache2/sites-available :

В данном случае файл 000-default.conf – это файл-шаблон. На основе которого можно быстро создать рабочую конфигурацию для новых виртуальных хостов. Отредактировав всего несколько параметров. Таким образом, содержимое только что созданного файла phpmyadmin.conf с учётом всех правок будет следующим:

Для наглядности из содержимого удалены комментарии. Ключевыми директивами здесь являются ServerName и DocumentRoot без которых функционирование виртуального хоста невозможно. Эти директивы задают имя хоста и путь к файлам веб-приложения соответственно. Теперь конфигурация для виртуального хоста готова и хранится в каталоге /etc/apache2/sites-available в файле phpmyadmin.conf. Далее необходимо включить виртуальный хост phpmyadmin.

Включение виртуального хоста для phpMyAdmin

Включенные виртуальные хосты Apache хранятся в каталоге /etc/apache2/sites-enabled . Обычно здесь содержатся символические ссылки на файлы конфигурации из каталога /etc/apache2/sites-available . Таким образом, включение виртуального хоста — это создание соответствующей символической ссылки на его файл конфигурации. В данном случае для виртуального хоста phpmyadmin это можно сделать так:

Такое разделение стимулирует поддерживать порядок и не путаться в конфигурации, когда виртуальных хостов очень много. Без сомнения, это очень удобно.

Другим способом включить виртуальный хост является команда:

В данном случае Apache самостоятельно найдёт файл phpmyadmin.conf и создаст соответствующую символическую ссылку. Команда a2ensite доступна из дополнительно поставляемого пакета. В системах Ubuntu он имеет имя apache2-utils. По аналогии можно найти соответствующие пакеты и для других дистрибутивов Linux. Для отключения виртуального хоста используется команда a2dissite, аналогично a2ensite. Либо можно удалить символическую ссылку вручную.

После включения/выключения виртуального хоста phpmyadmin следует перезапустить веб-сервер Apache. Однако вместе с этим нужно позаботиться о том, как будет распознаваться доменное имя хоста phpmyadmin. Либо для этого нужно использовать полноценную систему DNS, либо редактировать файл hosts на той машине, с которой необходим доступ к хосту. Т. е. в данном случае к phpmyadmin. В последнем случае в фале /etc/hosts необходимо добавить строку:

Для второго примера 192.168.0.100 – IP-адрес того компьютера, на котором размещён виртуальный хост phpmyadmin.

После редактирования файла hosts (или соответствующей настройки DNS) и перезапуска вебсервера, если всё сделано корректно, по адресу http://phpmyadmin в веб-браузере должна быть отображена страница авторизации phpMyAdmin:

После успешной авторизации пользователь может работать с БД через веб-интерфейс в соответствии с привилегиями, предоставленными ему администратором MySQL-сервера. И уже перейти к работе и настройки через phpmyadmin

Особенности предоставления доступа к виртуальному хосту

Если для каталога phpmyadmin, в котором находятся исполняемые файлы приложения phpMyAdmin установлено разрешение на исполнение для всех остальных пользователей в системе, а не только для владельца и/или группы. То Apache будет без проблем с ним работать. Ведь по-умолчанию Apache работает от пользователя www-data но не от пользователя-владельца виртуального хоста phpmyadmin. Если же разрешение на исполнение для каталога phpmyadmin отнять у остальных пользователей (к которым и относится www-data), то Apache уже не сможет получить к нему доступ. О чём и сердито сообщит:

Читайте также:  Обучение для windows movie maker

Особенности доступа к виртуальным хостам необходимо учитывать. И настраивать права доступа в соответствии с регламентом по обеспечению безопасности системы. Для подобных случаев даже предусмотрены специальные модули Apahe. Реализующие запуск отдельных экземпляров процесса Apache от имени разных пользователей-владельцев виртуальных хостов. Одним из таких модулей является mpm-itk. Это оптимальное решение, которое обеспечивает максимальную безопасность наряду с оптимальной производительностью веб-сервера. К тому же избавляет администраторов от скрупулёзной настройки. Поскольку данный модуль очень простой для интеграции и конфигурирования.

Заключение

В заключении следует отметить, что подобным образом происходит установка не только phpMyAdmin, но и других веб-приложений. В любом случае необходимо производить настройку виртуальных хостов, что является довольно «громоздкой» задачей. Именно поэтому многие системные администраторы пишут универсальные скрипты, которые выполняют всю работу автоматически.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Источник

Установка phpMyAdmin на любой Linux сервер

PhpMyAdmin — это удобная панель управления сервером баз данных через вэб-интерфейс. В данной инструкции по ее установке мы не будем привязываться к какому-либо конкретному дистрибутиву. Я просто расскажу универсальный метод ее установки на любой, будь то Ubuntu, CentOS или же Debian. И не важно, какое серверное ПО у тебя установлено — Nginx, Apache или OpenLiteSpeed, следовать данной инструкции можно имея любое.

Разумеется, что у тебя уже должен быть установлен WEB-сервер и сервер баз данных MySQL или MariaDB. Я буду рассказывать все по шагам, но для наглядности приведения примеров в данной статье я использую web сервер OpenLiteSpeed установленный на ОС Ubuntu Server. В тех местах, где возможны некоторые различия, например в путях разных серверов, я обращу на это внимание.

Загрузка phpMyAdmin

Скачать саму панель управления БД можно на официальном сайте — https://www.phpmyadmin.net. Далее ее можно загрузить на свой сервер посредством SSHFS или FTP или же через файл менеджер панели управления VPS/VDS. Такой метод я оставляю на усмотрения читателя, а в статье приведу пример загрузки непосредственно на сервер с использованием программы wget.

Подключаемся к серверу любым удобным методом, например по SSH, если ты установил свой WEB-сервер и сервер базы данных, то SSH у тебя скорее всего уже настроен и ты умеешь им пользоваться.

Переходим в корневой каталог сервера — это тот каталог (папка) в котором расположен корень сайта (index.php или index.html). Сделать это можно с помощью команды cd в терминале (я буду показывать установку на примере OpenLiteSpeed из моей предыдущей статьи — Как установить LOMP (OpenLiteSpeed, MariaDB, PHP8) на Ubuntu Server ) поэтому каталоги (папки) из моих примеров будут указаны относительно хоста по умолчанию именно для этого WEB-сервера. У тебя корневые каталоги будут отличаться, поэтому не забывай изменять в приведенных командах пути на свои. Например, для NGINX ( Как установить LEMP в Ubuntu 20.04 ) путь по умолчанию будет /usr/share/nginx/html/ , а для APACHE — /var/www/html/

Теперь, с помощью программы wget производим загрузку архива с панелью с официального сайта по прямой ссылке (ссылка может измениться, например, с выходом новой версии, так что если загрузка не происходит — обратись к офф. сайту для уточнения прямой ссылки на актуальную версию):

Данную команду для загрузки можно просто скопировать, пути в ней менять не нужно:

Если при загрузке возникла ошибка

Теперь интересный момент — если ты только что установил сервер и не до конца настроил права доступа должным образом, то доступ у твоего пользователя к корневому каталогу сервера отсутствует и ты, скорее всего, получишь ошибку « wget: unable to resolve host address ‘pma.zip’ «.

Решается это либо выполнением вышеприведенной команды от имени суперпользователя (например с помощью sudo) — но такой подход к работе с сервером не корректен с точки зрения безопасности — сервер не должен работать от root и мы не будем с ним работать через sudo. Либо, что уже правильнее — нужно присвоить каталог сервера своему пользователю с помощью команды ( не забудь изменить путь к корневому каталогу сервера ):

Читайте также:  Windows не стартует после обновления

Но, например, при установке NGINX права на сервер и его каталоги имеет пользователь и группа www-data и в таком случае более правильным решением будет присвоить своему пользователю членство в данной группе с помощью команды:

В двух командах, приведенных выше $USER — это переменная среды, и ее можно не менять на имя своего пользователя, она итак его содержит.

Продолжаем. Либо ошибки при загрузке у тебя не возникло и права доступа у тебя настроены верно, либо ты воспользовался приведенным выше советом и получил-таки доступ к корневому каталогу сервера и файл с панелью был успешно загружен с помощью вышеприведенной команды ( wget https://files.phpmyadmin.net/phpMyAdmin/5.1.1/phpMyAdmin-5.1.1-all-languages.zip -O pma.zip )

Проверяем, что файл pma.zip был загружен к нам на сервер:

Если такой файл существует, то произведем его распаковку:

Если в твоей системе команда unzip отсутствует — то установи пакет unzip из репозиториев своего дистрибутива.

Файлы распакуются в каталог phpMyAdmin-5.1.1-all-languages — переименуем его в phpmyadmin:

Установка phpMyAdmin

Первым шагом перед установкой мы создадим отдельного пользователя базы данных для работы через phpMyAdmin. Для этого на сервере перейдем в консоль управления MySQL/MariaDB, ниже я приведу примеры для обоих серверов баз данных.

Создание пользователя MySQL

Для MySQL вход осуществляется с помощью команды:

Добавляем нового пользователя с помощью команды:

Выдаем ему права:

Создание пользователя MariaDB

Для MariaDB вход осуществляется с помощью команды:

Добавляем нового пользователя с помощью команды:

Выдаем ему привелегии доступа:

Настройка phpMyAdmin

Для настройки мы используем минимально возможную конфигурацию в файле config.inc.php. Для более подробной документации по настройкам в данном файле обратись к официальному руководству — https://docs.phpmyadmin.net/en/latest/config.html. Но нам для работы с PMA хватит и минимальных настроек.

Данный файл нужно создать в каталоге phpmyadmin. После того, как мы скачали и распаковали нашу панель в корневой каталог сервера — в консоли мы остаемся в данном каталоге. Теперь нам необходимо с помощью команды cd переместиться в каталог phpmyadmin:

Затем создаем в нем файл config.inc.php :

С помощью любого текстового редактора, например nano (Как установить и использовать nano в Ubuntu) — записываем в конфигурационный файл следующее:

В данном тексте менять не нужно ничего, кроме blowfish_secret ключа — он нужен PMA для шифрования, его можно указать рандомно, главное, что его длина должна превышать 32 символа.

Подключение к phpMyAdmin

Теперь, после того, как мы создали файл настроек и пользователя для PMA — можно пробовать подключаться к панели через браузер. Для этого, если установка производилась в корень сервера в каталог ./phpmyadmin — нужно в адресной строке указать IP_Сервера/phpmyadmin, у меня это 192.168.0.104/phpmyadmin:

Вводим свои логин и пароль пользователя, которого мы создали в предыдущих пунктах данного руководства и попадаем в панель управления БД:

Пару слов о безопасности

После установки PMA — любой пользователь сети будет иметь к ней доступ через браузер. Соответственно, есть вероятность того, что кто-то захочет выполнить брутфорс логина и пароля. Поэтому ты можешь попробовать обезопасить себя с помощью следующих методов:

  1. Установка в папку с нестандартным названием, например не ./phpmyadmin, а ./snvuhw34nsfbk
  2. Использование отдельного пользователя для входа в БД из PMA, что мы и проделали в данной статье, только придумай имя посложнее, чем «pma»
  3. Аутентификация в каталог phpMyAdmin с помощью http_authorization
  4. Запрет на доступ к панели с чужих IP (подойдет, если у тебя самого статичный IP на рабочем ПК)

В принципе для защиты от брутфорс-ботов в большинстве своем выполнения первого и второго пунктов достаточно. Но, если хочется перебдеть — то все в твоих руках. Подробнее об организации http_authorization и запрете доступа по IP я рассказывать тут не буду, ибо у каждого свой WEB-сервер и инструкцию, как это сделать на твоем — читай в официальной документации к нему, направление, что искать — я дал.

Источник

Оцените статью