Меню Рубрики

Установка lamp phpmyadmin debian

Установка phpmyadmin в Debian 10

Из этой инструкции вы узнаете, как установить phpmyadmin Debian 10 с Apache, MariaDB, PHP (стек LAMP). phpMyAdmin — это бесплатный веб-инструмент для управления базами данных с открытым исходным кодом, написанный на PHP. Он предоставляет удобный интерфейс, для управления базой данных MySQL или MariaDB.

Также мы узнаем, как включить базовую аутентификацию веб сервера для phpMyAdmin. Для начала, вам потребуется ОС Debian 10, работающая на вашем локальном компьютере или на удаленном сервере.

Установка phpmyadmin в Debian 10

Предполагаю, что вы уже установили стек LAMP в Debian. Если нет, ознакомьтесь с соответствующей инструкцией.

Обратите внимание, что вам нужно иметь права root при установке программного обеспечения в Debian. Вы можете добавить sudo в начале команды или использовать команду su — для переключения на пользователя root. С этим разобрались, теперь давайте начнем установку phpMyAdmin.

Шаг 1: Загрузите phpMyAdmin

PhpMyAdmin не включен в репозиторий программного обеспечения Debian 10, поэтому мы должны загрузить его с phpmyadmin.net с помощью следующей команды.

Подсказка: Вы всегда можете использовать вышеуказанный формат URL для загрузки последней стабильной версии phpMyAdmin. Просто замените 4.9.0.1 на номер последней версии.

Переместите phpMyadmin 4.9 в каталог /usr/share/:

sudo mv phpMyAdmin-4.9.0.1-all-languages /usr/share/phpmyadmin

Затем сделайте пользователя веб-сервера (www-data) владельцем этой директории.

sudo chown -R www-data:www-data /usr/share/phpmyadmin

Шаг 2: Создайте базу данных и пользователя

Теперь нам нужно войти в консоль MariaDB и создать базу данных и пользователя для phpMyAdmin. По умолчанию пакет MariaDB в Debian использует unix_socket для аутентификации входа пользователя, что в основном означает, что вы можете использовать имя пользователя и пароль ОС для входа в консоль MariaDB. Таким образом, вы можете выполнить следующую команду для входа без предоставления пароля root для MariaDB.

Затем создайте новую базу данных для phpMyAdmin, используя следующую команду SQL. Мы называем его phpmyadmin, вы можете использовать любое имя для базы данных.

CREATE DATABASE phpmyadmin DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

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

GRANT ALL ON phpmyadmin.* TO ‘phpmyadmin’@’localhost’ IDENTIFIED BY ‘vash_parol’;

Обновите таблицу привилегий и выйдите из консоли MariaDB.

Шаг 3: Установите модули PHP

Выполните следующую команду, чтобы установить модули PHP, необходимые или рекомендованные phpMyAdmin:

sudo apt install php-imagick php-phpseclib php-php-gettext php7.3-common php7.3-gd php7.3-imap php7.3-json php7.3-curl php7.3-zip php7.3-xml php7.3-mbstring php7.3-bz2 php7.3-intl php7.3-gmp

Затем перезапустите Apache:

sudo systemctl restart apache2

Шаг 4. Настройка Apache

Если вы хотите получить доступ к веб-интерфейсу phpMyAdmin из подкаталога, создайте фрагмент конфигурации с помощью следующей команды.

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

Вставьте следующий текст в файл:

# phpMyAdmin default Apache configuration
Alias /phpmyadmin /usr/share/phpmyadmin

Options SymLinksIfOwnerMatch
DirectoryIndex index.php

AddType application/x-httpd-php .php
pen_basedir /usr/share/phpmyadmin/:/etc/phpmyadmin/:/var/lib/phpmyadmin/:/usr/share/php/php-gettext/:/usr/share/php/php-php-gettext/:/usr/share/javascript/:/usr/share/php/tcpdf/:/usr/share/doc/phpmyadmin/:/usr/share/php/phpseclib/
php_admin_value mbstring.func_overload 0

# Disallow web access to directories that don’t need it

Require all denied

Require all denied

Require all denied

SetHandler application/x-httpd-php

php_value include_path .
php_admin_value upload_tmp_dir /var/lib/phpmyadmin/tmp
php_admin_value open_basedir /usr/share/phpmyadmin/:/etc/phpmyadmin/:/var/lib/phpmyadmin/:/usr/share/php/php-gettext/:/usr/share/php/php-php-gettext/:/usr/share/javascript/:/usr/share/php/tcpdf/:/usr/share/doc/phpmyadmin/:/usr/share/php/phpseclib/
php_admin_value mbstring.func_overload 0

AddType application/x-httpd-php .php

SetHandler application/x-httpd-php
pen_basedir /usr/share/phpmyadmin/:/etc/phpmyadmin/:/var/lib/phpmyadmin/:/usr/share/php/php-gettext/:/usr/share/php/php-php-gettext/:/usr/share/javascript/:/usr/share/php/tcpdf/:/usr/share/doc/phpmyadmin/:/usr/share/php/phpseclib/
php_admin_value mbstring.func_overload 0

# Disallow web access to directories that don’t need it

Require all denied

Require all denied

Require all denied

php_value include_path .
php_admin_value upload_tmp_dir /var/lib/phpmyadmin/tmp
php_admin_value open_basedir /usr/share/phpmyadmin/:/etc/phpmyadmin/:/var/lib/phpmyadmin/:/usr/share/php/php-gettext/:/usr/share/php/php-php-gettext/:/usr/share/javascript/:/usr/share/php/tcpdf/:/usr/share/doc/phpmyadmin/:/usr/share/php/phpseclib/
php_admin_value mbstring.func_overload 0

# Disallow web access to directories that don’t need it

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

Require all denied

Require all denied

Require all denied

Сохраните и закройте файл. Затем включите этот фрагмент конфигурации:

sudo a2enconf phpmyadmin.conf

Нам также нужно создать временную папку phpMyAdmin:

sudo mkdir -p /var/lib/phpmyadmin/tmp
sudo chown www-data:www-data /var/lib/phpmyadmin/tmp

Перезагрузите Apache, чтобы изменения вступили в силу:

sudo systemctl reload apache2

Теперь вы можете получить доступ к веб-интерфейсу phpMyAdmin по адресу:

Если phpMyAdmin установлен на вашем локальном компьютере Debian, вы можете получить доступ к веб-интерфейсу phpMyAdmin, введя следующий текст в адресной строке браузера:

Если соединение отклонено или не удалось установить, возможно, существует межсетевой экран, предотвращающий запросы HTTP. Если вы используете брандмауэр iptables, вам нужно выполнить следующую команду, чтобы открыть TCP-порты 80 и 443.

sudo iptables -I INPUT -p tcp —dport 80 -j ACCEPT
sudo iptables -I INPUT -p tcp —dport 443 -j ACCEPT

Если вы используете брандмауэр UFW, выполните эту команду, чтобы открыть порты TCP 80 и 443:

sudo ufw allow http
sudo ufw allow https

Шаг 5: Запустите скрипт установки

Введите следующее в адресной строке браузера:

Нажмите кнопку Новый сервер, чтобы настроить сервер. Далее просто нажмите на кнопку Apply. Затем нажмите кнопку Display, чтобы отобразить файл конфигурации.

В каталоге /usr/share/phpmyadmin/ создайте файл config.inc.php:

sudo vi /usr/share/phpmyadmin/config.inc.php

Скопируйте содержимое файла config.inc.php со страницы установки phpMyAdmin и вставьте его в файл /usr/share/phpmyadmin/config.inc.php.

Шаг 6: Создайте администратора

Теперь, если вы попытаетесь войти в phpMyAdmin с учетной записью root MariaDB, вы можете увидеть следующую ошибку.

#1698 — Access denied for user ‘root ‘@’localhost’

mysqli_real_connect(): (HY000/1698): Access denied for user ‘root ‘@’localhost’

Если вы войдете в систему с пользователем phpmyadmin, вы не увидите вышеупомянутую ошибку. Однако пользователь phpmyadmin может использоваться только для управления базой данных phpmyadmin. Причиной ошибки является то, что по умолчанию пользователь root MariaDB проходит проверку подлинности с помощью плагина unix_socket, а не с помощью плагина mysql_native_password. Чтобы решить эту проблему, мы можем создать другого пользователя-администратора и предоставить все привилегии новому пользователю-администратору.

Войдите на сервер MariaDB из командной строки.

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

CREATE USER admin@localhost IDENTIFIED BY ‘новый_пароль’;

Предоставьте все привилегии для всех баз данных.

GRANT ALL PRIVILEGES *.* TO admin@localhost WITH GRANT OPTION;

Сбросьте привилегии и выйдите;

Теперь вы можете войти в phpMyAmin с учетной записью администратора и управлять всеми базами данных.

Шаг 7: Настройте хранилище настроек

Теперь в панели управления phpMyAdmin вы можете увидеть предупреждающее сообщение.

The phpMyAdmin configuration storage is not completely configured, some extended features have been deactivated. Find out why.
Or alternately go to ‘Operations’ tab of any database to set it up there.

Нажмите на ссылку Find out why. Затем нажмите Create, чтобы создать таблицы в базе данных phpmyadmin.

Шаг 8: Ограничение доступа к каталогу /setup

Чтобы ограничить доступ к каталогу /setup, мы можем включить базовую аутентификацию по паролю с веб-сервером Apache. Выполните следующую команду, чтобы установить пароль для пользователя admin. Файл /etc/apache2/htpasswd используется для хранения имен пользователей и паролей.

sudo htpasswd -c /etc/apache2/htpasswd admin

Затем отредактируйте файл конфигурации Apache для phpMyAdmin

sudo vi /etc/apache2/sites-available/phpmyadmin-le-ssl.conf

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

# Authorize for setup

AuthType Basic
AuthName «phpMyAdmin Setup»
AuthUserFile /etc/apache2/htpasswd

Require valid-user

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

sudo systemctl reload apache2

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

Читайте также:  Установка лежачих полицейских технология

Выводы

В этой статье мы разобрали как выполняется установка Phpmyadmin Debian 10 Buster вручную. Эту же инструкцию вы можете использовать и для других дистрибутивов.

источник

Устанавливаем и защищаем phpMyAdmin в Debian 7

В прошлой заметке я подробно разобрал процесс установки базовых компонентов любого хостинга – Apache, MySQL и PHP. Уже сейчас хост готов к работе, но для удобства в нем не хватает несколько полезных инструментов. Одним из таких инструментов по праву считается phpMyAdmin. Он упрощает администрирование сервера БД. Добавление пользователей, создание новых баз, выполнение запросов – эти и многие другие задачи легко и просто решать при помощи phpMyAdmin. Установка phpMyAdmin немногим отличается от того же Apache. Правда если оставить phpMyAdmin без дополнительной защиты, то рано или поздно злоумышленники смогут скомпрометировать весь сервер. О простейшем, но эффективным способе защиты phpMyAdmin пойдет речь в этой заметке.

Установка phpMyAdmin

Для установки phpMyAdmin в терминале выполняем команду:

Загрузив все необходимые компоненты, запустится мастер настройки phpMyAdmin. В первом вопросе требуется определиться с установленным web-сервером. Доступно два варианта:

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

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

Далее нас попросят ввести пароль пользователя root MySQL-сервера. Вводим и нажимаем «enter».

Затем нас попросят придумать пароль для доступа в phpMyAdmin. Придумываем пароль посложней и нажимаем «Enter».

Добавляем phpMyAdmin к конфигурации к Apache

Установка phpMyAdmin завершена. Чтобы протестировать этот инструмент в работе, необходимо добавить phpMyAdmin к конфигурации Apache. Для этого открываем конфигурационный файл Apache:

Перемещаемся в его конец и добавляем строчку для подключения phpMyAdmin:

Сохраняем внесенные изменения (ctrl + o) и закрываем файл (ctrl + x). Перезапускаем Apache:

Проверяем phpMyAdmin

Открывай браузер и переходим по ссылке http://ip_адрес/phpmyadmin . Открытие страницы входа phpMyAdmin – подтверждение успешной установки.

Защищаем phpMyAdmin

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

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

Конфигурируем авторизацию на уровне Apache

Сначала откроем конфигурационный файл phpMyAdmin, который используется с Apache:

Находим в файле блок « » и дописываем директиву «AllowOverride All». Отредактированный блок в итоге должен выглядеть так:

Сохраняем изменения (ctrl + o) и закрываем файл (ctrl + x). При помощи директивы “AllowOverride” мы сообщили Apache, что все директивы могут быть переопределены через внешний файл настроек – «.htaccess».

Подготавливаем .htaccess

Создадим новый конфигурационный файл .htaccess в директории с phpmyadmin:

Прописываем в этом файле необходимость авторизации на уровне web-сервера:

В конфигурационном файле мне пришлось воспользоваться следующими директивами:

Читайте также:  Установка mac os for usb hdd
  • AuthType – директива определяет тип идентификации пользователя. В качестве значения я указываю Basic. Насколько мне известно, вариантов кроме Basic до сих пор в Apache не реализовано (поправьте, если ошибаюсь).
  • AuthName – директива используется совместно с предыдущей. В ней мы пишем текст, который будет отображаться в диалоге запроса логина/пароля. Значением директивы может быть абсолютно любой текст.
  • AuthUserFile – значением директивы выступает путь к файлу, содержащий информацию о пользователях и их паролях, которые могут получить доступ к закрытому ресурсу. На данном этапе этого файла нет, мы создадим его чуть позже.
  • Require – директива позволяет определить принцип аутентификации. Она может принимать несколько значений (например, мы можем перечислить пользователей или группы пользователей, которые могут получать доступ к закрытому ресурсу). Значение Valid-user подразумевает, что получить доступ к закрытому ресурсу могут получить все пользователи, доступные в файле AuthUserFile.

    Создание htpasswd файла

    Необходимые настройки сделаны. Теперь создадим файл, путь к которому мы указывали в директиве AuthUserFile. Для этого вбиваем команду:

    Имя пользователя выбираем любое, с системными пользователями оно не переплетается. Утилита htpasswd запросит пароль для нового пользователя. Придумываем пароль и после завершения создания пользователя перезапустим apache:

    Проверяем авторизацию на уровне web-сервера

    Попробуем обратиться к phpMyAdmin. Если все описанные выше манипуляции были проделаны правильно, то страница входа phpMyAdmin сразу будет недоступна. Вместо нее появится окно с запросом имени пользователя и пароля. Вводим данные, которые мы указали утилите htpasswd и только после этого попадаем на страницу входа в phpMyAdmin.

    источник

    Установка lamp phpmyadmin debian

    LAMP это акроним от Linux, Apache, MySQL, PHP. В этой инструкции будет описано как установить веб-сервер Apache на Debian 8 с поддержкой PHP5 и MySQL

    В этой инструкции Мы будем использовать в качестве hostname (имени сервера) server1.example.com c IP адресом 192.168.0.100.

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

    Установка MySQL

    Для начала установим сервер MySQL, для этого в командной строке нужно выполнить:

    apt-get install mysql-server mysql-client

    При установки у вас спросить пароль для MySQL от пользователя root.

    Установка Apache

    Для установки веб-сервера Apache нужно выполнить команду:

    apt-get install apache2-mpm-prefork

    После, откройте в браузере http://192.168.0.100 , и на экране будет отображаться стандартная страница с надписью «It works!»

    По умолчанию в веб-сервере Apache корневая директория для сайтов (document root) расположена в директории /var/www/html

    Конфигурационный файл (файл с настройками) веб-сервера Apache находится в файле /etc/apache2/apache2.conf

    Более подробная документация по настройке находится в файле /usr/share/doc/apache2/README.Debian.gz

    Установка PHP

    Для установку PHP необходимо выполнить команду:

    apt-get install php5 libapache2-mod-php5

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

    apt-get install php5-mysql php5-curl php5-gd php5-intl php-pear php5-imagick php5-imap php5-mcrypt php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl

    После установки нужно выполнить перезагрузку веб-сервера apache:

    systemctl restart apache2.service

    Для проверки работы PHP в корневой директории (document root) веб-сервера apache /var/www/html можно создать файл pi.php который будет содержать функцию phpinfo()

    (функция phpinfo() отображает много полезной информации о настройках веб-сервера и PHP).

    Для это нужно выполнить команду:

    После чего в браузере можно открыть страницу:

    Установка phpMyAdmin

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

    Для установки выполним команду:

    apt-get install phpmyadmin

    Пароль от пользователя который вводился при установке mysql (пароль от пользователя баз данных root)

    источник

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

    Adblock
    detector