Phpmyadmin apache: 7. Устанавливаем PhpMyAdmin — Документация docs.cs-cart.ru 4.3.x

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

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

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

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

Содержание

Подготовка

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

  • LAMP (Linux, Apache, MySQL и PHP), установленный на вашем сервере CentOS .
  • Вы вошли в систему как пользователь с привилегиями sudo .

Хотя это не обязательно, рекомендуется получить доступ к вашей установке phpMyAdmin через HTTPS. Если у вас нет SSL на ваших сайтах, следуйте инструкциям по защите вашего Apache с помощью Let’s Encrypt в CentOS 7 .

Установка phpMyAdmin

Чтобы установить phpMyAdmin в системе CentOS 7, выполните следующие действия:

  1. phpMyAdmin недоступен в основных репозиториях CentOS 7. Чтобы установить phpMyAdmin, нам нужно сначала включить репозиторий EPEL :

    sudo yum install epel-release
  2. После включения репозитория EPEL мы можем установить phpMyAdmin и все его зависимости с помощью следующей команды:

    sudo yum install phpmyadmin

Настройка и защита phpMyAdmin

Файл конфигурации Apache для phpMyAdmin создается автоматически во время установки. По умолчанию все соединения, кроме соединений с localhost, запрещены. Поскольку мы будем получать доступ к phpMyAdmin из удаленных мест, нам необходимо изменить файл конфигурации и указать разрешенные IP-адреса.

Откройте файл конфигурации Apache phpMyAdmin:

sudo nano /etc/httpd/conf.d/phpMyAdmin.conf

Измените две строки, которые читают Require ip 127. 0.0.1 на IP-адрес вашего домашнего подключения. Если вы не знаете свой домашний IP-адрес, откройте поиск Google в своем веб-браузере и введите what is my ip IP-адрес.

/etc/httpd/conf.d/phpMyAdmin.conf

# Apache 2.4
<RequireAny>
    Require ip 192.168.42.57
    Require ip ::1
</RequireAny>

Закройте и сохраните файл.

Если вы хотите получить доступ к своей установке phpMyAdmin из любого места, добавьте Require all granted перед строкой Require ip .

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

Начните с создания нового файла аутентификации с помощью инструмента htpasswd . Мы будем хранить файл .htpasswd каталоге /etc/phpMyAdmin :

sudo htpasswd -c /etc/phpMyAdmin/.htpasswd admin

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

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

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

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

sudo htpasswd /etc/phpMyAdmin/.htpasswd admin2

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

sudo nano /etc/httpd/conf.d/phpMyAdmin.conf

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

/etc/httpd/conf.d/phpMyAdmin.conf

<Directory /usr/share/phpMyAdmin/>
    AddDefaultCharset UTF-8
    Options  +FollowSymLinks +Multiviews +Indexes
    AllowOverride None
    AuthType basic
    AuthName "Authentication Required"
    AuthUserFile /etc/phpMyAdmin/. htpasswd
    Require valid-user
   <IfModule mod_authz_core.c>
   ...

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

sudo systemctl restart httpd

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

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

https://your_domain_or_ip_address/phpmyadmin

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

Доступ к phpMyAdmin

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

https://your_domain_or_ip_address/phpmyadmin

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

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

Выводы

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

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

Настройка ссылок на почтовый клиент, phpMyAdmin, phpPgAdmin

Ссылка на внешнюю функцию формируется с помощью внутренних механизмов панели управления. Чтобы повлиять на формирование ссылки, используйте параметры-пути конфигурационного файла панели:

  • path roundcube-redirect — шаблон ссылки на почтовый клиент. Значение по умолчанию: http://$site/roundcube/
  • path phpmyadmin-redirect — шаблон ссылки на phpMyAdmin. Значение по умолчанию: http://$site/phpmyadmin/
  • path phppgadmin-redirect — шаблон ссылки на phpPgAdmin. Значение по умолчанию: http://$site/phppgadmin/

Обратите внимание!

При переходе в phpmyadmin в ссылке передаётся IP-адрес панели управления. ~ /phpmyadmin_new/setup {
deny all;
}

Формат пути:

http://[адрес ispmanager]/[введенный адрес]/phpmyadmin

Где:

  • адрес ispmanager – IP-адрес панели управления;
  • введенный адрес – путь, который пользователь может изменить.

Для изменения пути:

  1. В Основном меню выберите Настройки.
  2. В раскрывшемся списке выберите Конфигурация ПО.
  3. В открывшейся форме выберите Веб-интерфейс администрирования MySQL (phpMyAdmin) или Веб-интерфейс администрирования PostgreSQL (phpPgAdmin) и нажмите на кнопку Изменить.
  4. В отрывшейся форме заполните поле Адрес и нажмите на кнопку Сохранить.

Панель сохранит и обновит путь, например:

http://172.31.97.45/example/phpmyadmin

Apache VCL — установка и настройка phpMyAdmin

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

  1. phpmyadmin рекомендует выполнять установку с использованием доступных у вас пакетов Linux.
    раздача

    Для CentOS необходимо добавить репозиторий EPEL yum (что делается для установки
    код узла управления VCL; использовать yum install -y epel-release еще не установлен). Использовать
    следующее для установки phpMyAdmin из EPEL:

     yum установить -y phpMyAdmin
     
  2. По умолчанию phpMyAdmin в дистрибутивах на основе Red Hat ограничивает доступ только к локальному хосту. Изменить
    /etc/httpd/conf.d/phpMyAdmin.conf , чтобы изменить это. Желательно разрешать доступ только из некоторых
    определенные IP-адреса или диапазоны IP-адресов, чтобы phpMyAdmin не был открыт для всех, чтобы попытаться получить доступ.

    • В разделе добавьте

       Требовать IP x. x.x.x/y
       

      Где x.x.x.x/y представляет диапазон IP-адресов, например 192.168.100.1/24. Можно добавить несколько строк
      чтобы соответствовать нескольким диапазонам.

    • перезапустите httpd, чтобы активировать изменения

       systemctl перезапустить httpd
       
  3. Необходимо создать специальную базу данных, чтобы активировать некоторые из наиболее полезных функций phpMyAdmin.
    phpMyAdmin предоставляет скрипт для создания базы данных. Найдите файл create_tables.sql (для версии 4.4.15.10,
    это было в /usr/share/phpMyAdmin/sql/create_tables.sql). Создайте базу данных, используя

     mysql < /usr/share/phpMyAdmin/sql/create_tables.sql
     
  4. Пользователь управления должен быть создан в mysql/mariadb для использования phpMyAdmin (мы будем использовать pmacontrol,
    замените mypassword своим паролем! ):

     mysql -e "СОЗДАТЬ ПОЛЬЗОВАТЕЛЯ 'pmacontrol'@'localhost', ИДЕНТИФИЦИРОВАННОГО 'mypassword';"
     

    Сохраните следующее в файле с именем pmaprivs. sql , чтобы предоставить пользователю pmacontrol доступ к различным таблицам деталей:

     ПРЕДОСТАВЛЕНИЕ ИСПОЛЬЗОВАНИЯ В mysql.* TO 'pmacontrol'@'localhost';
    ПРЕДОСТАВИТЬ ВЫБОР (
    Хост, Пользователь, Select_priv, Insert_priv, Update_priv, Delete_priv,
    Create_priv, Drop_priv, Reload_priv, Shutdown_priv, Process_priv,
    File_priv, Grant_priv, References_priv, Index_priv, Alter_priv,
    Show_db_priv, Super_priv, Create_tmp_table_priv, Lock_tables_priv,
    Execute_priv, Repl_slave_priv, Repl_client_priv
    ) НА mysql.user TO 'pmacontrol'@'localhost';
    GRANT SELECT ON mysql.db TO 'pmacontrol'@'localhost';
    GRANT SELECT ON mysql.host TO 'pmacontrol'@'localhost';
    GRANT SELECT (Host, Db, User, Table_name, Table_priv, Column_priv)
    НА mysql.tables_priv TO 'pmacontrol'@'localhost';
    GRANT SELECT, INSERT, UPDATE, DELETE ON phpmyadmin.* TO 'pmacontrol'@'localhost';
     
     mysql < pmaprivs.sql
     
  5. Настройте отношения между таблицами phpMyAdmin-VCL:

    Файл с именем phpmyadmin. sql находится в каталоге mysql в исходном коде Apache VCL.
    код. Он добавит записи в таблицу pma_table_info в базе данных phpmyadmin. Эти записи
    вызвать отображение полезной информации при наведении указателя мыши на значения в базе данных VCL.

    Импорт файла SQL в базу данных phpmyadmin:

     mysql phpmyadmin < apache-VCL-2.5.1/mysql/phpmyadmin.sql
     
  6. Теперь вы сможете войти в phpMyAdmin, используя учетную запись, настроенную для VCL, чтобы получить доступ к
    база данных (можно указать в /etc/vcl/vcld.conf или /var/www/html/vcl/.ht-inc/secrets.php).

Как установить phpMyAdmin с Apache на Ubuntu 22.04 LTS

Учебное пособие для изучения шагов по установке phpMyAdmin на Ubuntu 22.04 LTS Jammy JellyFish с использованием веб-сервера Apache для управления MariaDB или MySQL через веб-браузер и графический интерфейс пользователя.

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

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

Создание новой базы данных
Удалить существующую базу данных
Копирование содержимого в новую базу данных
Резервное копирование в резервную копию
Восстановление из существующей резервной копии
Перенос с одного сервера на другой
Изменение пользователей и пароля с
Управление правами доступа

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

Поиск имен или содержимого переменных в базах данных
Замена значений
Шифрование обычного текста с использованием различных алгоритмов, например пароли
Множественный выбор переменных через графический интерфейс
Проверка баз данных на внутреннюю непротиворечивость и другие ошибки
Создание и удаление записей, параметров или значений
Создание, копирование или удаление отдельных таблиц
Четкое представление структуры баз данных

Давайте узнаем, как установить phpMyAdmin на сервер Ubuntu 22. 04, однако приведенные здесь шаги будут такими же и для других версий этого Linux.

Шаги по установке phpMyAdmin на сервере Ubuntu 22.04

1. Требования phpMyAdmin

2. Обновите сервер Ubuntu 22.04.

3. Установите сервер LAMP

Веб-сервер Apache

Настроить сервер MariaDB

Установите PHP и его расширение

4. Установите phpMyAdmin на Ubuntu 22.04.

Загрузите последнюю версию phpMyAdmin

Извлечь и настроить

5. Добавьте строку шифра Blowfish

6. Создайте файл конфигурации Apache Vhost

7. Войдите в веб-интерфейс phpMyAdmin.

Приблизительное время чтения: 8 минут

1. Требования phpMyAdmin

Для выполнения этого руководства нам потребуется сервер Ubuntu, доступ пользователя sudo без полномочий root, веб-сервер Apache, база данных, PHP и активное подключение к Интернету.

2. Обновите сервер Ubuntu 22.04

Первое, что мы должны сделать, это обновить наш сервер Linux, потому что большинство пакетов, которые нам нужны для настройки phpMyAdmin, будут взяты из репозитория Ubuntu Jammy JellyFish по умолчанию.

 sudo apt update && sudo apt upgrade 

Также установите:

 sudo apt install wget nano 

, MySQL/ MariaDB и PHP, установленные на сервере Linux. Что ж, для сервера Linux здесь мы используем Ubuntu, остальное мы установим на этом этапе.

Веб-сервер Apache

Apache — это веб-сервер с открытым исходным кодом, который можно установить напрямую из репозитория Ubuntu по умолчанию:

 sudo apt install apache2 

Включить его сервер:

 sudo systemctl enable apache2 
 перезапуск системы sudo systemctl apache2 
Настройка сервера MariaDB

Затем установите сервер MariaDB, который является ответвлением MySQL, и работайте точно так же. Как и Apache, его также можно настроить с помощью системного репозитория по умолчанию.

 sudo apt install mariadb-server mariadb-client 

Включить и запустить

 sudo systemctl enable --now mariadb 

Также защитите установку MariaDB:

 sudo mysql_ secure_installation 

Когда вы запускаете приведенную выше команду, она предоставит текстовый мастер для защиты вашего сервера базы данных. Вот вопросы, которые он задаст:

 Введите текущий пароль для root (не вводите, если нет): Нажмите  ENTER  .
Переключиться на аутентификацию unix_socket? Нажмите  N , затем  ВВОД .
Изменить пароль root? Нажмите  Y  , затем  ENTER  .
Удалить анонимных пользователей? Нажмите  Y  , затем  ENTER  .
Запретить удаленный вход в систему root? Нажмите  Y  , затем  ENTER  .
Удалить тестовую базу данных и доступ к ней? Нажмите  Y  , затем  ENTER  .
Перезагрузить таблицы привилегий сейчас? Нажмите  Y  , затем  ENTER  . 
Установите PHP и его расширение

phpMyAdmin — это программное обеспечение для управления базой данных SQL на основе PHP, поэтому нам нужен этот язык сценариев в нашей системе Ubuntu вместе с некоторыми распространенными расширениями PHP.

 sudo apt install php php-{fpm,mbstring,bcmath,xml,mysql,common,gd,cli,curl,zip} 

Также включите PHP fpm для запуска с FPM, если это еще не сделано:

 sudo systemctl enable php8.1-fpm --now 

4. Установите phpMyAdmin на Ubuntu 22.04

Один из способов установить phpMyAdmin — использовать диспетчер пакетов APT, который загрузит и установит его с помощью репозитория Ubuntu. Однако следует помнить, что версия phpMyadmin, установленная с помощью APT, не будет последней. Это связано с тем, что в долгосрочной версии Ubuntu используются чрезвычайно стабильные пакеты, поэтому вы не получите последнюю версию программного обеспечения. В такой ситуации мы можем вручную загрузить пакет phpMyadmin для настройки. Давайте посмотрим, как это сделать.

Загрузить последнюю версию phpMyAdmin

Данная команда автоматически извлечет и сохранит последний сжатый файл phpMyAdmin в формате Tar. Просто скопируйте и выполните его в командном терминале:

 wget https://www. phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.tar.gz 

Как только файл будет загружен в вашу систему, извлеките и переместите его в ваш веб-каталог.

Извлечение:

 tar xvf phpMyAdmin-*-all-languages.tar.gz 

Теперь переместите его:

 sudo mv phpMyAdmin-*/ /var/www/html/phpmyadmin 

Кроме того, не забудьте создать временную папку с именем « tmp » внутри извлеченного каталога, иначе это создаст предупреждение в интерфейсе phpMyAdmin.

 sudo mkdir -p /var/www/html/phpmyadmin/tmp 

5. Добавьте строку шифрования Blowfish

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

 sudo cp /var/www/html/phpmyadmin/config.sample.inc.php /var/www/html/phpmyadmin/config.inc.php 

Теперь сгенерируйте 32-битную случайную строку:

 openssl rand -base64 32 

Скопируйте строку, сгенерированную приведенной выше командой:

Теперь отредактируйте файл конфигурации phpMyAdmin

 sudo nano /var/www/html/phpmyadmin/config.inc.php 

и прошлое это в начале строки:

 $cfg['blowfish_secret'] = '  ваш-ключ ’; /* ВЫ ДОЛЖНЫ ЗАПОЛНИТЬ ЭТО ДЛЯ АВТОРИЗАЦИИ COOKIE! */ 

Замените вашего ключа сгенерированным кодом.

Также прокрутите вниз до конца и добавьте эту строку.

 $cfg['TempDir'] = '/var/www/html/phpmyadmin/tmp'; 

После этого сохраните файл, нажав Ctrl+O , нажмите клавишу Enter , а затем выйдите из редактора файлов — Ctrl+X .

Дайте Apache разрешение на доступ к файлам PHPMyAdmin:

 sudo chown -R www-data:www-data /var/www/html/phpmyadmin 

Разрешение на доступ к файлам и каталогам:

 sudo find /var/www/html/phpmyadmin/ -type d -exec chmod 755 { } \; 
 sudo find /var/www/html/phpmyadmin/ -type f -exec chmod 644 {} \; 

6. ​​Создайте файл конфигурации Apache Vhost

Мы не хотим обслуживать пользовательский интерфейс phpMyAdmin на нашем корневом домене или IP-адресе, поэтому мы либо используем поддомен, либо подпапку. Здесь мы обслуживаем его в подпапке. Следовательно, создайте для него файл конфигурации.

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

Скопируйте и вставьте следующие строки:

 Псевдоним /phpmyadmin /var/www/html/phpmyadmin
<Каталог /var/www/html/phpmyadmin>
Индексы опционов FollowSymLinks
DirectoryIndex index. php

Приложение AddType/x-httpd-php .php
php_flag magic_quotes_gpc Выкл.
php_flag track_vars включен
php_flag register_globals выключен
php_value include_path .


# Авторизоваться для установки
<Каталог /var/www/html/phpmyadmin/setup>

Основной тип авторизации
AuthName "Настройка phpMyAdmin"
AuthUserFile /etc/phpmyadmin/htpasswd.setup

Требовать действительного пользователя

# Запретить веб-доступ к каталогам, которым это не нужно
<Каталог /var/www/html/phpmyadmin/libraries>
Порядок Запретить, Разрешить
Запретить от всех

<Каталог /var/www/html/phpmyadmin/setup/lib>
Порядок Запретить, Разрешить
Запретить от всех
 

Сохраните файл- Ctrl+O нажмите Введите и выйдите, используя Ctrl+X.

Активация новой конфигурации:

 sudo a2enconf phpmyadmin.conf 

Перезапустите веб-сервер Apache

Чтобы изменения вступили в силу, перезапустите веб-сервер Apache.

 sudo systemctl перезапустить apache2 

7. Доступ к веб-интерфейсу phpMyAdmin

Введите IP-адрес или доменное имя сервера вместе с /phpmyadmin в URL-адресе браузера для доступа к этой веб-платформе управления базами данных.

Например:

 https://server-ipaddress/phpmyadmin 

или

 http://your-domain.com/phpmyadmin 

Введите корневого пользователя базы данных MySQL и его пароль к авторизуйтесь в phpMyAdmin.

Примечание : Если вы видите это уведомление в нижнем колонтитуле — Хранилище конфигурации phpMyAdmin настроено не полностью, некоторые расширенные функции отключены. Узнайте, почему. Или поочередно перейдите на вкладку «Операции» любой базы данных, чтобы настроить ее там.

Затем просто щелкните ссылку Узнайте, почему и щелкните ссылку « Создать », чтобы автоматически создать базу данных phpmyadmin .