Phpmyadmin установка ubuntu: Страница не найдена | Losst

Содержание

Установка и обеспечение безопасности phpMyAdmin в Ubuntu 20.04

Предыдущая версия данного руководства была написана Бреннаном Бернсом.

Введение

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

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

Предварительные требования

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

  • Сервер Ubuntu 20.04 Этот сервер должен иметь пользователя без прав root с правами администратора, а также брандмауэр, настроенный с помощью ufw. Чтобы выполнить настройку, воспользуйтесь руководством по начальной настройке сервера Ubuntu 20.04.
  • Стек LAMP (Linux, Apache, MySQL и PHP), установленный на вашем сервере Ubuntu 20.04. Если вы еще не сделали этого, вы можете воспользоваться данным руководством по установке стека LAMP на Ubuntu 20.04.

Наконец, существует ряд важных соображений безопасности при использовании таких программных средств, как phpMyAdmin, поскольку phpMyAdmin:

  • напрямую связывается с установленной у вас версией MySQL;
  • управляет аутентификацией, используя учетные данные MySQL;
  • исполняет и возвращает результаты для произвольных SQL запросов.

По этим причинам, и поскольку это широко применяемое PHP приложение, которое часто становится мишенью для атак, вы ни при каких условиях не должны запускать phpMyAdmin на удаленных системах, используя обычное HTTP-соединение.

Если у вас нет существующего домена с настроенным SSL/TLS сертификатом, вы можете воспользоваться следующим руководством по обеспечению безопасности Apache с помощью Let’s Encrypt в Ubuntu 20.04. Для этого вам потребуется зарегистрировать доменное имя, создать DNS запись для вашего сервера и настроить виртуальный хост Apache.

Шаг 1 — Установка phpMyAdmin

Вы можете использовать APT для установки phpMyAdmin из репозиториев Ubuntu по умолчанию.

Обновите индекс пакетов вашего сервера от имени пользователя без прав root с привилегиями sudo:

После этого вы можете установить пакет phpmyadmin. Помимо этого пакета, официальная документация также рекомендует установить несколько расширений PHP на ваш сервер для возможности использования определенной функциональности и улучшения производительности.

Если вы выполнили предварительное требования руководства для стека LAMP, ряд из этих модулей уже был установлен вместе с пакетом php. Однако рекомендуется также установить следующие пакеты:

  • php-mbstring: модуль для работы с строками, не поддерживающими кодировку ASCII, и конвертации таких строк в другие кодировки
  • php-zip: это расширение поддерживает загрузку файлов .zip в phpMyAdmin
  • php-gd
    : поддержка библиотеки GD Graphics
  • php-json: поддержка сериализации JSON для PHP
  • php-curl: позволяет PHP взаимодействовать с разными типами серверов, используя разные протоколы

Запустите следующую команду для установки этих пакетов в систему. Обратите внимание, что процесс установки требует, чтобы вы ответили на ряд вопросов для корректной настройки phpMyAdmin. Мы кратко пробежимся по этим параметрам:

  • sudo apt install phpmyadmin php-mbstring php-zip php-gd php-json php-curl

Здесь представлены параметры, которые вы должны выбрать при запросе для корректной настройки вашей установки:

  • Для выбора сервера вы можете выбрать apache2 Предупреждение. При появлении запроса вариант «apache2» выделен, но не выбран. Если вы не нажмете ПРОБЕЛ для выбора Apache, установщик не будет перемещать необходимые файлы при установке. Нажмите ПРОБЕЛ, затем TAB, а потом ENTER для выбора Apache.
  • Выберите Да при ответе на вопрос о том, необходимо ли использовать dbconfig-common для настройки базы данных.
  • Затем вам будет предложено выбрать и подтвердить пароль приложения MySQL для phpMyAdmin

Примечание. Если вы установили MySQL, следуя указаниям шага 2 с предварительными требования из руководства для стека LAMP, вы, возможно, активировали плагин Validate Password. На момент написания этого руководства активация этого компонента будет вызывать ошибку при попытке задать пароль пользователя

phpmyadmin:

Для устранения этой проблемы выберите опцию abort для остановки процесса установки. Затем откройте командную строку MySQL:

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

Из командной строки запустите следующую команду для отключения компонента Validate Password. Обратите внимание, что в этом случае выполняется не удаление, а простая остановка загрузки компонента на ваш сервер MySQL:

  • UNINSTALL COMPONENT "file://component_validate_password";

После этого вы можете закрыть клиент MySQL:

Затем попробуйте еще раз установить пакет phpmyadmin, после чего все будет работать ожидаемым образом:

  • sudo apt install phpmyadmin

После установки phpMyAdmin вы можете открыть командную строку MySQL еще раз с помощью sudo mysql или mysql -u root -p, а затем запустить следующую команду для повторной активации компонента Validate Password:

  • INSTALL COMPONENT "file://component_validate_password";

В процессе установки будет добавлен файл конфигурации phpMyAdmin в каталог /etc/apache2/conf-enabled/, где он будет считываться автоматически. Для завершения настройки Apache и PHP для работы с phpMyAdmin выполните последнюю оставшуюся задачу этого раздела руководства и явно активируйте расширение PHP mbstring с помощью следующей команды:

Перезапустите Apache для вступления изменений в силу.

  • sudo systemctl restart apache2

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

Шаг 2 — Настройка аутентификации и прав пользователя

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

Настройка доступа по паролю для учетной записи root в MySQL

В системах Ubuntu при запуске MySQL 5.7 (и более поздние версии) для пользователя root MySQL по умолчанию устанавливается аутентификация с помощью плагина auth_socket, а не пароля. Это позволяет обеспечить большую безопасность и удобство во многих случаях, однако это также может осложнить ситуацию, когда вам нужно предоставить внешней программе, например, phpMyAdmin, доступ к пользователю.

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

Затем проверьте, какой метод аутентификации используют ваши аккаунты пользователей MySQL с помощью следующей команды:

  • SELECT user,authentication_string,plugin,host FROM mysql.user;

Output

+------------------+-------------------------------------------+-----------------------+-----------+ | user | authentication_string | plugin | host | +------------------+-------------------------------------------+-----------------------+-----------+ | root | | auth_socket | localhost | | mysql.session | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | caching_sha2_password | localhost | | mysql.sys | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | caching_sha2_password | localhost | | debian-sys-maint | *8486437DE5F65ADC4A4B001CA591363B64746D4C | caching_sha2_password | localhost | | phpmyadmin | *5FD2B7524254B7F81B32873B1EA6D681503A5CA9 | caching_sha2_password | localhost | +------------------+-------------------------------------------+-----------------------+-----------+ 5 rows in set (0.00 sec)

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

auth_socket. Чтобы настроить для учетной записи root аутентификацию с помощью пароля, выполните следующую команду ALTER USER. Обязательно измените значение password на надежный пароль по вашему выбору:

  • ALTER USER 'root'@'localhost' IDENTIFIED WITH caching_sha2_password BY 'password';

Примечание. Предыдущее выражение ALTER USER устанавливает аутентификацию пользователя root MySQL с помощью плагина caching_sha2_password​​. Согласно официальной документации MySQL, caching_sha2_password​​​ считается предпочтительным плагином аутентификации MySQL, так как он обеспечивает более защищенное шифрование пароля, чем более старая, но все еще широко используемая версия mysql_native_password.

Однако некоторые версии PHP работают ненадежно с caching_sha2_password. Как сообщается, эта проблема была устранена в версии PHP 7.4​​​, но если вы получите ошибку при попытке выполнить вход в phpMyAdmin позднее, вы можете задать для root аутентификацию с помощью mysql_native_password:

  • ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

Затем проверьте методы аутентификации, применяемые для каждого из ваших пользователей, чтобы подтвердить, что пользователь root больше не использует для аутентификации плагин auth_socket:

  • SELECT user,authentication_string,plugin,host FROM mysql.user;

Output

+------------------+-------------------------------------------+-----------------------+-----------+ | user | authentication_string | plugin | host | +------------------+-------------------------------------------+-----------------------+-----------+ | root | *DE06E242B88EFB1FE4B5083587C260BACB2A6158 | caching_sha2_password | localhost | | mysql.session | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | caching_sha2_password | localhost | | mysql.sys | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | caching_sha2_password | localhost | | debian-sys-maint | *8486437DE5F65ADC4A4B001CA591363B64746D4C | caching_sha2_password | localhost | | phpmyadmin | *5FD2B7524254B7F81B32873B1EA6D681503A5CA9 | caching_sha2_password | localhost | +------------------+-------------------------------------------+-----------------------+-----------+ 5 rows in set (0.00 sec)

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

Настройка доступа по паролю для выделенного пользователя MySQL

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

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

Создайте нового пользователя и придумайте для него надежный пароль:

  • CREATE USER 'sammy'@'localhost' IDENTIFIED WITH caching_sha2_password BY 'password';

Примечание. В зависимости от версии PHP, которую вы установили, вы можете задать для вашего нового пользователя аутентификацию с помощью mysql_native_password вместо caching_sha2_password:

  • ALTER USER 'sammy'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

Затем предоставьте вашему новому пользователю соответствующие права. Например, вы можете предоставить пользователю права доступа ко всем таблицам в базе данных, а также можете добавлять, изменять и удалять права пользователя с помощью этой команды:

  • GRANT ALL PRIVILEGES ON *.* TO 'sammy'@'localhost' WITH GRANT OPTION;

После этого закройте командную строку MySQL:

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

https://your_domain_or_IP/phpmyadmin

Выполните вход в интерфейс с помощью пользователя root или с новым именем пользователя и паролем, которые вы только что задали.

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

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

Шаг 3 — Обеспечение безопасности phpMyAdmin

Из-за своей вездесущности phpMyAdmin часто становится мишенью для атак, поэтому вам нужно дополнительно позаботиться о предотвращении несанкционированного доступа. Один из способов — это размещение шлюза перед всем приложением с помощью встроенного в Apache функционала авторизации и аутентификации через .htaccess.

Чтобы сделать это, вы должны сначала активировать перезапись файла .htaccess, изменив файл конфигурации Apache вашей установки phpMyAdmin.

Воспользуйтесь предпочитаемым текстовым редактором для редактирования файла phpmyadmin.conf, который находится в каталоге конфигурации Apache. Мы будем использовать nano:

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

Добавьте директиву AllowOverride All в раздел файла конфигурации <Directory /usr/share/phpmyadmin>, например:

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

<Directory /usr/share/phpmyadmin>
    Options FollowSymLinks
    DirectoryIndex index.php
    AllowOverride All
    . . .

После добавления этой строки сохраните и закройте файл. Если вы использовали nano для редактирования файла, нажмите CTRL + X, Y, а затем ENTER.

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

  • sudo systemctl restart apache2

Теперь, когда вы активировали использование файлов .htaccess для вашего приложения, вам нужно создать этот файл для реализации этого уровня защиты.

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

  • sudo nano /usr/share/phpmyadmin/.htaccess

В этом файле введите следующую информацию:

/usr/share/phpmyadmin/.htaccess

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

Вот что означает каждая из этих строк:

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

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

Вы использовали следующее местонахождение для вашего файла пароля /etc/phpmyadmin/.htpasswd. Теперь вы можете создать этот файл и передать его для первоначального пользователя с помощью утилиты htpasswd:

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

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

Если вы хотите ввести дополнительного пользователя, вам нужно сделать это без флага -c, например:

  • sudo htpasswd /etc/phpmyadmin/.htpasswd additionaluser

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

https://domain_name_or_IP/phpmyadmin

После выполнения аутентификации в Apache вы перейдете на стандартную страницу аутентификации phpMyAdmin для ввода ваших учетных данных MySQL. Добавив дополнительный набор учетных данных, не используемый MySQL, вы обеспечиваете для вашей базы данных дополнительный слой защиты. Это желательно, поскольку в прошлом phpMyAdmin часто становился объектом использующих уязвимости атак.

Заключение

Вы успешно настроили phpMyAdmin и теперь можете использовать phpMyAdmin на вашем сервере Ubuntu 20.04. Используя этот интерфейс, вы можете легко создавать базы данных, пользователей, таблицы и т. д., а также выполнять стандартные операции, например удалять и изменять структуры и данные.

Установка и обеспечение безопасности phpMyAdmin в Ubuntu 18.04

Предыдущая версия данного руководства была написана Бреннаном Бернсом.

Введение

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

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

Предварительные требования

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

Во-первых, мы полагаем, что ваш сервер имеет пользователя user без root прав с привилегиями sudo, а также брандмауэр с ufw, как указано в руководстве по начальной настройке сервера для Ubuntu 18.04.

Мы также предполагаем, что вы выполнили установку LAMP (Linux, Apache, MySQL и PHP) на вашем сервере с Ubuntu 18.04. Если вы еще не сделали этого, вы можете воспользоваться данным руководством по установке стека LAMP на Ubuntu 18.04.

Наконец, существует ряд важных соображений безопасности при использовании таких программных средств, как phpMyAdmin, поскольку phpMyAdmin:

  • напрямую связывается с установленной у вас версией MySQL;
  • управляет аутентификацией, используя учетные данные MySQL;
  • исполняет и возвращает результаты для произвольных SQL запросов.

По этим причинам, и поскольку это широко применяемое PHP приложение, которое часто становится мишенью для атак, вы ни при каких условиях не должны запускать phpMyAdmin на удаленных системах, используя обычное HTTP-соединение. Если у вас нет существующего домена с настроенным SSL/TLS сертификатом, вы можете воспользоваться следующим руководством по обеспечению безопасности Apache с помощью Let’s Encrypt в Ubuntu 18.04. Для этого вам потребуется зарегистрировать доменное имя, создать DNS запись для вашего сервера и настроить виртуальный хост Apache.

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

Шаг 1 — Установка phpMyAdmin

Во-первых, мы установим phpMyAdmin из репозиториев Ubuntu по умолчанию.

Это делается с помощью обновления индекса пакета вашего сервера, после чего с помощью системы управления пакетами APT загружаются файлы и устанавливаются в вашей системе.

  • sudo apt update
  • sudo apt install phpmyadmin php-mbstring php-gettext

На этом этапе вам потребуется ответить на несколько вопросов для корректной настройки установки.

Предупреждение. При появлении первого диалогового окна вариант «apache2» выделен, но не выбран. Если вы не нажмете ПРОБЕЛ для выбора Apache, установщик не будет перемещать необходимые файлы при установке. Нажмите ПРОБЕЛ, затем TAB, а потом ENTER для выбора Apache.

  • Для выбора сервера нажмите apache2
  • Выберите Да при ответе на вопрос о том, необходимо ли использовать dbconfig-common для настройки базы данных.
  • Затем вам будет предложено выбрать и подтвердить пароль приложения MySQL для phpMyAdmin

В процессе установки будет добавлен файл конфигурации phpMyAdmin в каталог /etc/apache2/-enabled/, где он будет считываться автоматически. От вас потребуется только явным образом активировать PHP расширение mbstring, что можно сделать с помощью следующей команды:

Перезапустите Apache для вступления изменений в силу.

  • sudo systemctl restart apache2

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

Шаг 2 — Настройка аутентификации и прав пользователя

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

Настройка доступа по паролю для учетной записи root в MySQL

В системах Ubuntu при запуске MySQL 5.7 (и более поздние версии) для root пользователя MySQL по умолчанию устанавливается аутентификация с помощью плагина auth_socket, а не пароля. Это позволяет обеспечить большую безопасность и удобство во многих случаях, однако это также может осложнить ситуацию, когда вам нужно предоставить внешней программе, например, phpMyAdmin, доступ к пользователю.

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

Затем проверьте, какой метод аутентификации используют ваши аккаунты пользователей MySQL с помощью следующей команды:

  • SELECT user,authentication_string,plugin,host FROM mysql.user;

Output

+------------------+-------------------------------------------+-----------------------+-----------+ | user | authentication_string | plugin | host | +------------------+-------------------------------------------+-----------------------+-----------+ | root | | auth_socket | localhost | | mysql.session | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost | | mysql.sys | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost | | debian-sys-maint | *8486437DE5F65ADC4A4B001CA591363B64746D4C | mysql_native_password | localhost | | phpmyadmin | *5FD2B7524254B7F81B32873B1EA6D681503A5CA9 | mysql_native_password | localhost | +------------------+-------------------------------------------+-----------------------+-----------+ 5 rows in set (0.00 sec)

В этом примере вы можете видеть, что root пользователь действительно использует метод аутентификации с помощью плагина auth_socket. Чтобы настроить для учетной записи root аутентификацию с помощью пароля, выполните следующую команду ALTER USER. Обязательно измените значение password на надежный пароль по вашему выбору:

  • ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

Затем выполните команду FLUSH PRIVILEGES, которая просит сервер перезагрузить предоставленные таблицы и ввести в действие изменения:

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

  • SELECT user,authentication_string,plugin,host FROM mysql.user;

Output

+------------------+-------------------------------------------+-----------------------+-----------+ | user | authentication_string | plugin | host | +------------------+-------------------------------------------+-----------------------+-----------+ | root | *DE06E242B88EFB1FE4B5083587C260BACB2A6158 | mysql_native_password | localhost | | mysql.session | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost | | mysql.sys | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost | | debian-sys-maint | *8486437DE5F65ADC4A4B001CA591363B64746D4C | mysql_native_password | localhost | | phpmyadmin | *5FD2B7524254B7F81B32873B1EA6D681503A5CA9 | mysql_native_password | localhost | +------------------+-------------------------------------------+-----------------------+-----------+ 5 rows in set (0.00 sec)

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

Настройка доступа по паролю для выделенного пользователя MySQL

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

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

Создайте нового пользователя и придумайте для него надежный пароль:

  • CREATE USER 'sammy'@'localhost' IDENTIFIED BY 'password';

Затем предоставьте вашему новому пользователю соответствующие права. Например, вы можете предоставить пользователю права доступа ко всем таблицам в базе данных, а также можете добавлять, изменять и удалять права пользователя с помощью этой команды:

  • GRANT ALL PRIVILEGES ON *.* TO 'sammy'@'localhost' WITH GRANT OPTION;

После этого закройте командную строку MySQL:

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

http://your_domain_or_IP/phpmyadmin

Выполните вход в интерфейс с помощью root пользователя или с новым именем пользователя и паролем, которые вы только что задали.

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

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

Шаг 3 — Обеспечение безопасности phpMyAdmin

Из-за своей вездесущности phpMyAdmin часто становится мишенью для атак, поэтому вам нужно дополнительно позаботиться о предотвращении несанкционированного доступа. Один из самых простых способов – поместить шлюз перед всем приложением, используя встроенный в Apache метод аутентификации .htaccess​​​ и функции авторизации.

Чтобы сделать это, вы должны сначала активировать перезапись файла .htaccess, изменив файл конфигурации Apache.

Отредактируйте связанный файл, помещенный в каталог конфигурации Apache:

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

Добавьте директиву AllowOverride All в раздел файла конфигурации <Directory /usr/share/phpmyadmin>, например:

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

<Directory /usr/share/phpmyadmin>
    Options FollowSymLinks
    DirectoryIndex index.php
    AllowOverride All
    . . .

После добавления этой строки сохраните и закройте файл.

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

  • sudo systemctl restart apache2

Теперь, когда вы активировали использование .htaccess для вашего приложения, вам нужно создать этот файл для реализации этого уровня защиты.

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

  • sudo nano /usr/share/phpmyadmin/.htaccess

В этом файле введите следующую информацию:

/usr/share/phpmyadmin/.htaccess

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

Вот что означает каждая из этих строк:

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

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

Вы использовали следующее местонахождение для вашего файла пароля /etc/phpmyadmin/.htpasswd. Теперь вы можете создать этот файл и передать его для первоначального пользователя с помощью утилиты htpasswd:

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

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

Если вы хотите ввести дополнительного пользователя, вам нужно сделать это без флага -c, например:

  • sudo htpasswd /etc/phpmyadmin/.htpasswd additionaluser

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

https://domain_name_or_IP/phpmyadmin

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

Заключение

Вы успешно настроили phpMyAdmin и теперь можете использовать phpMyAdmin на вашем сервере Ubuntu 18.04. Используя этот интерфейс, вы можете легко создавать базы данных, пользователей, таблицы и т. д., а также выполнять стандартные операции, например удалять и изменять структуры и данные.

Установка apache2 + php + mysql + phpmyadmin на ubuntu 16.04

Решил поделиться с вами опытом установки софта на Ubuntu 16.04.

Напомню, все ниже описанные операции нужно выполнять под рутом (sudo su -).

обновляем софт

ставим Apache2

настроим Apache2

nano /etc/apache2/apache2.conf ## фиксим предупреждения при перезапуске Apache ServerName localhost ## Включаем интерпретацию php AddType application / x-httpd-php .php .phtml ## Устанавливаем кодировку UTF-8 по умолчанию AddDefaultCharset UTF-8

nano /etc/apache2/apache2.conf

 

## фиксим предупреждения при перезапуске Apache

ServerName localhost

 

## Включаем интерпретацию php

AddType application / x-httpd-php .php .phtml

 

## Устанавливаем кодировку UTF-8 по умолчанию

AddDefaultCharset UTF-8

перезапускаем Apache

Открываем http://localhost/ и радуемся.

Настраиваем виртуальные хосты (VirtualHost)

(только для локальных хостов) создать файл vhosts.sh со следующим содержимым:

#!/bin/bash echo «Creating Virtual Host» cd /etc/apache2/sites-available cat <<EOF >> «$1.conf» <VirtualHost *:80> ServerAdmin webmaster@localhost ServerName $1 ServerAlias www.$1 DocumentRoot «/var/www/$1″ <Directory /var/www/$1> Options All AllowOverride All </Directory> </VirtualHost> EOF mkdir «/var/www/$1″ cd /etc/apache2/sites-enabled ln -s «/etc/apache2/sites-available/$1.conf» «$1.conf» echo «Editing /etc/hosts» cat <<EOF >> «/etc/hosts» 127.0.0.1 $1 EOF echo «Set permissions» chmod 0777 -R «/var/www/$1″ echo «Restarting Apache2″ /etc/init.d/apache2 restart echo «Finished!» echo «Local address: /var/www/$1″ echo «Web address: http://$1»

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

#!/bin/bash

echo «Creating Virtual Host»

cd /etc/apache2/sites-available

cat <<EOF >> «$1.conf»

<VirtualHost *:80>

  ServerAdmin webmaster@localhost

  ServerName $1

  ServerAlias www.$1

  DocumentRoot «/var/www/$1»

  <Directory /var/www/$1>

    Options All

    AllowOverride All

  </Directory>

</VirtualHost>

EOF

mkdir «/var/www/$1»

cd /etc/apache2/sites-enabled

ln -s «/etc/apache2/sites-available/$1.conf» «$1.conf»

echo «Editing /etc/hosts»

cat <<EOF >> «/etc/hosts»

127.0.0.1       $1

EOF

echo «Set permissions»

chmod 0777 -R «/var/www/$1»

echo «Restarting Apache2»

/etc/init.d/apache2 restart

echo «Finished!»

echo «Local address: /var/www/$1»

echo «Web address: http://$1»

Даете права на выполнение:

chmod + x /var/www/vhosts.sh

chmod + x /var/www/vhosts.sh

Пример создания хоста:

sudo /var/www/vhosts.sh mysite.loc

sudo /var/www/vhosts.sh mysite.loc

Все последующие шаги по virtualhosts можно пропускать.

В /etc/hosts прописываем наши хосты: (nano /etc/hosts)

Переходим в папку /etc/apache2/

Смотрим, что внутри:

root @ HP: /etc/apache2 # ls -l всего 88 -rw-r — r— 1 root root 7728 26 апреля 22:55 apache2.conf -rw-r — r— 1 root root 7691 26 апреля 22:34 apache2.conf ~ drwxr-xr-x 2 root root 4096 26 апреля 22:52 conf-available drwxr-xr-x 2 root root 4096 26 апреля 22:52 conf-enabled -rw-r — r— 1 root root 1782 3 января 16:48 envvars -rw-r — r— 1 root root 31063 3 января 16:48 magic drwxr-xr-x 2 root root 12288 26 апреля 22:27 mods-available drwxr-xr-x 2 root root 4096 26 апреля 22:27 mods-enabled -rw-r — r— 1 root root 320 7 января 15:23 ports.conf drwxr-xr-x 2 root root 4096 26 апреля 22:43 sites-available drwxr-xr-x 2 root root 4096 26 апреля 22:44 sites-enabled

root @ HP: /etc/apache2 # ls -l

всего 88

-rw-r — r— 1 root root 7728 26 апреля 22:55 apache2.conf

-rw-r — r— 1 root root 7691 26 апреля 22:34 apache2.conf ~

drwxr-xr-x 2 root root 4096 26 апреля 22:52 conf-available

drwxr-xr-x 2 root root 4096 26 апреля 22:52 conf-enabled

-rw-r — r— 1 root root 1782 3 января 16:48 envvars

-rw-r — r— 1 root root 31063 3 января 16:48 magic

drwxr-xr-x 2 root root 12288 26 апреля 22:27 mods-available

drwxr-xr-x 2 root root 4096 26 апреля 22:27 mods-enabled

-rw-r — r— 1 root root 320 7 января 15:23 ports.conf

drwxr-xr-x 2 root root 4096 26 апреля 22:43 sites-available

drwxr-xr-x 2 root root 4096 26 апреля 22:44 sites-enabled

В папке sites-available хранятся кофниги доступных хостов, а в sites-enabled ссылки на активные хосты.

Переходим в доступные хосты и создаем конфиг для mysite.loc. Кстати, если ваш дефолтный конфиг заканчивается на .conf тогда создавайте конфиги с расширением * .conf.

nano sites-available/mysite.conf

nano sites-available/mysite.conf

Пишем туда:

ServerName mysite.loc DocumentRoot /var/www/mysite.loc AllowOverride All

ServerName mysite.loc DocumentRoot /var/www/mysite.loc   AllowOverride All

Данной записи достаточно, чтобы работал ваш локальный хост. Теперь нужно создать ссылку на него в sites-enabled.

Ошибки: если в вас возникает ошибка и вы не можете создать ссылку. Тогда это сделать можно следующей записью:

ln /etc/apache2/sites-available/mysite.conf /etc/apache2/sites-enabled/

ln /etc/apache2/sites-available/mysite.conf /etc/apache2/sites-enabled/

Теперь нужно только перезагрузить настройки Apache2:

service apache2 reload ## или, если необходимо service apache2 restart

service apache2 reload

## или, если необходимо

service apache2 restart

Итак, Apache2 работает, первый хост добавлен!

ставим MySQL

MySQL содержится в репозиториях Ubuntu. Он разбит на несколько пакетов.

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

sudo apt-get install mysql-server

sudo apt-get install mysql-server

При установке конфигурации скрипт запросит пароль администратора (root) базы данных.

Ставим PHP 5.6

Сначала нужно удалить все старые версии, если есть

sudo apt-get purge `dpkg -l | grep php | awk ‘{print $ 2}’ | tr «\ n» «» `

sudo apt-get purge `dpkg -l |  grep php |  awk ‘{print $ 2}’ | tr «\ n» «» `

добавляем PPA

sudo add-apt-repository ppa:ondrej/php

sudo add-apt-repository ppa:ondrej/php

обновляемся

ставим php

sudo apt-get install php5.6

sudo apt-get install php5.6

дополнительные модули

sudo apt-get install php5.6-mbstring php5.6-mcrypt php5.6-mysql php5.6-xml

sudo apt-get install php5.6-mbstring php5.6-mcrypt php5.6-mysql php5.6-xml

Смотрим версию:

sudo php -v PHP 5.6.26-1 + deb.sury.org ~ xenial + 1 (cli) Copyright (c) 1997-2016 The PHP Group Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies

sudo php -v

 

PHP 5.6.26-1 + deb.sury.org ~ xenial + 1 (cli)

 

Copyright (c) 1997-2016 The PHP Group

 

Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies

 

     with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies

ставим PhpMyadmin

apt-get install phpmyadmin

apt-get install phpmyadmin

Конфигурируем его под себя, — обозначаем что юзает Apache2, указываем пароль к БД, и пароль к phpmyadmin

Ошибки: http://localhost/phpmyadmin not found ubuntu

решение:

nano /etc/apache2/apache2.conf ## добавляем в конец файла Include /etc/phpmyadmin/apache.conf

nano /etc/apache2/apache2.conf

## добавляем в конец файла

Include /etc/phpmyadmin/apache.conf

Ошибки: http://localhost/phpmyadmin HTTP ERROR 500

sudo apt-get install php-mbstring php-gettext sudo phpenmod mcrypt sudo phpenmod mbstring sudo service apache2 restart

sudo apt-get install php-mbstring php-gettext

sudo phpenmod mcrypt

sudo phpenmod mbstring

sudo service apache2 restart

Если вы все выполнили правильно, то у вас будет готов настроен локальный сервер.

Если возникли проблемы, обращайтесь к нам за помощью, [email protected]

⚙КАК УСТАНОВИТЬ PHPMYADMIN UBUNTU 19.04

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

Solvetic объяснит, как мы можем установить phpMyAdmin в Ubuntu 18.04 или 19.04 простым способом, и мы узнаем, как защитить доступ к этой платформе, чтобы избежать несанкционированных изменений.

Что такое phpMyAdmin

phpMyAdmin был разработан как бесплатный программный инструмент на основе PHP, задачей которого является управление администрированием MySQL через Интернет. phpMyAdmin поддерживает большое количество операций в MySQL и MariaDB. Там часто используемые операции, такие как управление базой данных, таблицы, столбцы, отношения, индексы, пользователи, разрешения и т. Д., Могут выполняться через пользовательский интерфейс, но он также может выполнять напрямую. любой оператор SQL из консоли.

phpMyAdmin доступен на 72 языках и совместим с языками LTR и RTL.

Особенности PhpMyAdmin

Среди наиболее выдающихся функций phpMyAdmin у нас есть:

  • Имеет удобный веб-интерфейс.
  • Возможность управлять различными серверами.
  • Он генерирует графику по дизайну базы данных в нескольких форматах.
  • Вы можете создавать сложные запросы, используя Query-by-example (запрос, например) (QBE).
  • Выполнение глобального поиска в базе данных или ее подмножестве.
  • Вы можете преобразовать сохраненные данные в любой формат, используя набор предопределенных функций.
  • Это позволяет экспортировать данные в различные форматы, такие как CSV, SQL, XML, PDF, ISO / IEC 26300 — текстовые файлы и электронные таблицы OpenDocument, Word, LATEX и другие.
  • Поддержка большинства функций MySQL, таких как управление базой данных, таблицами, представлениями, полями и индексами, создание, копирование, удаление, переименование и изменение баз данных, таблиц, полей и индексов, выполнение, редактирование и пометка любого оператора. SQL, управление учетными записями пользователей и привилегии MySQL и многое другое.

Теперь мы увидим, как установить и защитить phpMyAdmin в Ubuntu 18.04 или 19.04.

1. Установите phpMyAdmin в Ubuntu 19.04.

Шаг 1
Первым шагом будет установка Apache и MySQL в системе, это действие можно выполнить с помощью следующей команды:

 sudo apt-get установить apache2 mysql-server -y 

Шаг 2
Как только этот процесс завершится, мы увидим следующее:

Шаг 3
По умолчанию phpMyAdmin недоступен в репозитории Ubuntu 18.04 или 19.04 по умолчанию, для этого необходимо добавить сторонний репозиторий PHP в систему, выполнив сначала следующую строку:

 sudo apt-get установить software-properties-common -y 

Шаг 4
Затем мы добавляем хранилище, запустив. Там мы нажимаем клавишу Enter и ждем завершения процесса.

 sudo add-apt-repository ppa: ondrej / php 

Шаг 5
Как только репозиторий будет добавлен, мы установим phpMyAdmin, выполнив следующую команду:

 sudo apt-get установить phpmyadmin php-mbstring php-gettext -y 

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

Шаг 7
Там мы выбираем «Apache», нажимая пробел и нажимая Enter, теперь мы увидим следующее сообщение, связанное с базой данных для phpMyAdmin:

Шаг 8
Выберите «Да» и нажмите Enter, а затем вам нужно будет ввести пароль приложения:

Шаг 9
Нажмите на Принять, и мы должны подтвердить это:

Шаг 10
После завершения процесса установки phpMyAdmin мы должны включить расширение PHP mbstring с помощью следующей команды:

 sudo phpenmod mbstring 

Шаг 11
Затем мы перезапускаем Apache, чтобы применить изменения:

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

2. Настройте аутентификацию пользователя phpMyAdmin в Ubuntu 19.04
phpMyAdmin автоматически создает пользователя базы данных phpmyadmin с административным паролем, который мы вводим в процессе установки, но для безопасности рекомендуется создать отдельного пользователя для управления базами данных через веб-интерфейс phpMyAdmin.

В последней версии MariaDB пользователь root MySQL был настроен для аутентификации с использованием плагина auth_socket по умолчанию, поэтому, если вы хотите войти в phpMyAdmin как пользователь root MySQL, мы должны изменить метод аутентификации auth_socket к mysql_native_password.

Шаг 1
Во-первых, мы собираемся войти в MySQL Shell со следующей строкой:

 sudo mysql 

Шаг 2
Теперь давайте проверим метод аутентификации пользователя MySQL с помощью следующей команды:

 ВЫБЕРИТЕ пользователя, authentication_string, плагин, хост FROM mysql.user; 

Шаг 3
Мы видим, что пользователь root использует плагин auth_socket. Чтобы настроить пользователя root для аутентификации с помощью пароля, мы должны выполнить следующую команду:

 ALTER USER 'root' @ 'localhost' ИДЕНТИФИЦИРОВАНО С mysql_native_password BY 'password'; 

примечание

пароль может быть заменен на желаемый пароль.

Шаг 4
Мы применяем изменения, выполняя:

 ПРИВИЛЕГИИ ПРОМЫВКИ; 

Шаг 5
Мы можем проверить метод аутентификации, выполнив:

 ВЫБЕРИТЕ пользователя, authentication_string, плагин, хост FROM mysql.user; 

Шаг 6
Мы видим, что метод аутентификации был изменен. Далее мы создадим отдельного пользователя, которого мы назовем «phpmyadminuser», чтобы подключиться к phpMyAdmin. Первый шаг — войти в MySQL с помощью следующей команды:

 mysql -u root -p 

Шаг 7
Там мы введем пароль, установленный на предыдущем шаге:

Шаг 8
Сначала мы создадим пользователя и назначим пароль:

 СОЗДАТЬ ПОЛЬЗОВАТЕЛЯ 'phpmyadminuser' @ 'localhost', ИДЕНТИФИЦИРОВАННОГО 'password'; 

Шаг 9
Затем мы предоставляем правильные привилегии phpmyadminuser с помощью следующей команды:

 Предоставить все права на *. * TO 'phpmyadminuser' @ 'localhost' с опцией GRANT; 

Шаг 10
Наконец мы оставляем Shell запущенным:

 выход; 

3. Доступ к phpMyAdmin в Ubuntu 19.04

Шаг 1
Теперь мы идем в браузер и вводим следующий синтаксис:

 http: // IP_address / phpmyadmin 

Шаг 2
Там мы будем использовать нужный язык и введем назначенное имя пользователя и пароль, затем нажмите кнопку «Продолжить» для доступа к phpMyAdmin:

4. Безопасный phpMyAdmin в Ubuntu 19.04
Мы видим, что phpMyAdmin установлен и настроен, но в целях безопасности рекомендуется защитить экземпляр phpMyAdmin для предотвращения несанкционированного доступа. Можно защитить phpMyAdmin от использования функций аутентификации и авторизации .htaccess, встроенных в Apache.

Шаг 1
Для этого метода мы должны сначала разрешить использование переопределений файла .htaccess, отредактировав файл phpmyadmin.conf следующим образом:

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

Шаг 2
Там мы добавим строку «AllowOverride All», чтобы структура была следующей:

 Параметры SymLinksIfOwnerMatch DirectoryIndex index.php AllowOverride Все 

Шаг 3
Мы сохраняем изменения, используя следующую комбинацию клавиш:

Ctrl + O

Мы покидаем редактор, используя:

Ctrl + X

Шаг 4
Далее мы должны перезапустить службу Apache, выполнив:

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

Шаг 5
Теперь мы собираемся создать файл .htaccess в каталоге phpmyadmin, выполнив:

 sudo nano /usr/share/phpmyadmin/.htaccess 

Шаг 6
В этом файле мы добавим следующее:

 AuthType Basic AuthName «Ограниченные файлы» AuthUserFile /etc/phpmyadmin/.htpasswd Требуется действительный пользователь 

Шаг 7
Мы сохраняем изменения и покидаем редактор. Теперь мы собираемся создать пользователя с именем admin с помощью утилиты htpasswd:

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

Шаг 8
Там мы должны ввести и подтвердить пароль этого:

Шаг 9
Теперь, когда мы снова получим доступ, «появится следующее всплывающее окно, в которое мы введем учетные данные только что созданного пользователя-администратора:

Шаг 10
После ввода нажмите «Доступ», и мы окажемся в среде phpMyAdmin:

Таким образом, phpMyAdmin становится комплексным решением для всей работы с базами данных из Интернета в системах Linux Linux.

Установка phpMyAdmin на Nginx в Ubuntu 12.04 / Debian / Ubuntu / Howitmake.ru

Управлять сервером баз данных можно из командной строки, но это не всегда удобно, зачатую, хочется большего комфорта.
Если вы в совершенстве знаете синтаксис запросов MySQL, то можно обойтись и без сторонних приложений, лично я, похвастаться этим не могу, по этому предпочитаю работать через WEB интерфейс, одним из лучших, хотя и не единственным, приложением, является phpMyAdmin, как явствует из названия, написанное на PHP.
Данная статья, является, логическим продолжением руководства по настройке WEB сервера, которую я описывал в стетье- Настройка Nginx с поддержкой PHP-FPM в Ubuntu 12.04, все дальнейшие действия будут выполняться на ее основе.

Если у вас установлен Web сервер Apache или Lighttpd, то установка phpMyAdmin сложностей не вызывает, набираем:

apt-get install phpmyadmin

И все установится автоматически.
К сожалению, если у вас используется Nginx, то так сделать все это, в автоматическом режиме, не получится, придется немного поработать руками, но результат получается не хуже, а за счет быстроты работы Nginx, то все совсем здорово «пуляет»…

Сама установка традиционная и не несет никаких сложностей:

apt-get install phpmyadmin

У нас просят -с какими серверами мы будем его использовать, оставляем все поля пустыми:

При инсталляции PhpMyAdmin нам предложат создать базу данных, которая требуется для его работы:

Указываем сначала пароль пользователя Root (Сервера MySQL), а затем пароль для базы данных PhpMyAdmin, на этом, установка данного пакета завершена./* /phpmyadmin last; } }

Перезапускаем nginx

/etc/init.d/nginx restart

И идем по адресу httр://example.org/phpmyadmin/
Должны увидеть следующее окно:

В принципе можно подключаться и работать.
Но мы на этом не остановимся т.к. зачастую, после подключения сервера к интернет, автоматические сканеры начинают искать phpMyAdmin и если он найден, то запускают процесс перебора паролей, что не очень хорошо…
Мы защитим доступ к данной странице с помощью логина и пароля, в Apache все это делалось через htpasswd, но данный вид файлов не поддерживается Nginx. Ситуация не тупиковая и вполне легко решается.

Добавляем HTTP авторизацию

Для начала, нам необходимо с генерировать хеш пароля, для этого можно установить утилиты, которые идут с сервером Apache и сгенерить все что нам нужно, но мы этого делать не будем, а воспользуемся Online генератором полученный хеш пароля, записываем.
Теперь создадим файл в котором у нас будет все это храниться, чтобы не путаться в дальнейшем, назовем его htpasswd
nano /home/example/htpasswd

Сам файл, мы будем хранить за пределами корневой директории сайта, но чтобы Nginx мог получить к нему доступ, на чтение, для примера, я укажу логин admin и захешированный пароль password, добавим это в файл htpasswd:

admin:ZIXt0E7AewSr2

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

auth_basic "Enter Super Secret password"; 
auth_basic_user_file /home/example/htpasswd;

Где: вместо Enter Super Secret password можно указать текст своего сообщения (кириллица НЕ поддерживается!)
В результате, всех действий, у нас должен получиться файл следующего содержания:

server {
        listen   80;
        root /home/example/www;

        access_log  /home/example/logs/nginx.access.log; #расположение логов данного хоста

        server_name example.org www.example.org;

        location / {
                index index.php index.html index.htm;
        }

        location ~ \.php$ {
                fastcgi_pass   127.0.0.1:9000;
                fastcgi_index  index.php;
                fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
                include        fastcgi_params;
        }
           #Работа с phpMyAdmin
         location /phpmyadmin {

              #Секция отвечающая за аутентификацию пользователя

              auth_basic "Enter Super Secret password!"; # Текст сообщения, которое увидит пользователь при попытке входа в указанную директорию
              auth_basic_user_file /home/example/htpasswd;

              root /usr/share/;
               index index.php index.html index.htm;
               location ~ ^/phpmyadmin/(./* /phpmyadmin last;
        }

}

Перезапускам Nginx:

/etc/init.d/nginx restart

Снова переходим по адресу httр://example.org/phpmyadmin/, выскочит окно с предложением ввода логина и пароля, пишем логин admin пароль password и попадаем в phpMyAdmin

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

Как установить phpmyadmin on Ubuntu 18.04 Server

Прочитано: 842

Для управления базами данных развернутыми на сервере можно использовать как консоль командной строки так и Web—интерфейс по управлению ими через приложение phpmyadmin. Вот его я сейчас и разберу на Ubuntu 18.04 Server его установку (делаю для себя). Заострять внимание что есть пакет phpmyadmin это обмусоливание того, что все и так должны знать — это инструмент, но лучше обходиться без него, через консоль хоть и труднее (сперва), но опыт получается отличным. Т.к. не всегда есть возможность использовать чтото стороннее, а нужно использовать что предлагается самой системой.

Удаляю из системы Ubuntu 18.04 Server пакет Cloud Init

ekzorchik@srv-bionic:~$ sudo rm -Rf /var/lib/apt/lists

ekzorchik@srv-bionic:~$ sudo apt-get update && sudo apt-get upgrade -y

На заметку: Я считаю, что важно разбирать все самим чтобы в последствии можно было разбирать более сложные вещи опираясь на уже имеющийся багаж. Может по началу это простенькие вещи от tutorial популярных ресурсов, но начинать нужно.

ekzorchik@srv-bionic:~$ sudo apt-get install -y mysql-server

ekzorchik@srv-bionic:~$ sudo mysqladmin -u root password 712mbddr@

ekzorchik@srv-bionic:~$ sudo mysql_secure_installation

ekzorchik@srv-bionic:~$ sudo apt install -y phpmyadmin php-mbstring php-gettext

  • Web server to reconfigure automatically: apache2
  • Configure database for phpmyadmin with dbconfig-common? Yes
  • MySQL application password for phpmyadmin: 712mbddr@
  • Password confirmation: 712mbddr@

ekzorchik@srv-bionic:~$ sudo phpenmod mbstring

ekzorchik@srv-bionic:~$ sudo systemctl restart apache2

http://IP&DNS/phpmyadmin

ekzorchik@srv-bionic:~$
sudo nano /etc/apache2/conf-available/phpmyadmin.conf

и добавляю в секцию (<Directory /usr/share/phpmyadmin>) строку AllowOverride All

ekzorchik@srv-bionic:~$ sudo systemctl restart apache2

ekzorchik@srv-bionic:~$ sudo nano /usr/share/phpmyadmin/.htaccess

AuthType Basic

AuthName "Restricted Files"

AuthUserFile /etc/phpmyadmin/.htpasswd

Require valid-user

ekzorchik@srv-bionic:~$ sudo htpasswd -c /etc/phpmyadmin/.htpasswd ekzorchik

New password: 612mbddr@

Re-type new password: 612mbddr@

Adding password for user ekzorchik

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

Проверяю, что если обратиться к URL адресу http://IP&DNS/phpmyadmin должна отработать назначенная базовая защита:

А уже после предстанет окно авторизации в сервисе phpmyadmin где уже для аутентификации
используется связка: root от сервиса mysql и пароль.

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

Итого, я разобрал как установить сервис phpmyadmin по управлению Вашими базами данных развернутыми на системе через Web-интерфейс и как поставить базовую защиту от Web-сервиса Apache2. Не стоит пренебрегать дефолтными инструментами защиты, пусть это будет еще один шажок для злоумышленника. А вы как системный администратор просто так без боя не должны сдаваться и всячески усложнить ему задачу доступа к Вашим сервисам.

На этом у меня всё, с уважением автор блога Олло Александр aka ekzorchik.

Установка phpmyadmin на ubuntu 14.04 — flops.ru

Предполагается, что LEMP уже установлен и настроен.

Установка LEMP на ubuntu 14.04

Phpmyadmin будет настроен на домен pma.example.com, который должен указывать на IP сервера.

1.  Установка необходимого ПО

#Установим git и необходимые модули php
apt-get update && apt-get install git php5-mcrypt php5-json php5-gd

2. Создание нового виртуального хоста nginx

#Создаем root директорию для phpmyadmin
mkdir -p /var/www/pma

#Копируем конфигурацию по умолчанию в новый файл
cp /etc/nginx/sites-available/default /etc/nginx/sites-available/pma.conf

Затем приводим конфигурационный файл  /etc/nginx/sites-available/pma.conf к следующему виду:

server {
        listen   80;

        root /var/www/pma;
        index index.php;

        server_name pma.example.com;

        location / {
                try_files $uri $uri/ /index.php?$args;
        }

        location ~ \.php$ {
                try_files $uri =404;
                fastcgi_pass unix:/var/run/php5-fpm.sock;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include fastcgi_params;
        }
}
#Включаем созданную конфигурацию
cd /etc/nginx/sites-enabled/ && ln -s ../sites-available/pma.conf pma.conf
service nginx reload

3. Получение последней стабильной версии phpmyadmin

cd /var/www/pma/ && git clone --depth=1 --branch=STABLE https://github.com/phpmyadmin/phpmyadmin .

4. Настройка phpmyadmin

#Создаем файл конфигурации
cd /var/www/pma/
cp config.sample.inc.php config.inc.php
#В файле config.inc.php необходимо заполнить элемент массива $cfg['blowfish_secret'] строкой из 32 символов
$cfg['blowfish_secret'] = '3B9w3qCY0hINGWD84muoCduPIA7v6LDp'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */

5. Обновление phpmyadmin

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

cd /var/www/pma/ && git pull origin STABLE

6. Закрываем phpmyadmin с помощью basic auth

#Устанавливем утилиту для генерации файла паролей
apt-get install apache2-utils
#Создаем файл паролей и пользователя pma
htpasswd -c /etc/nginx/.htpasswd pma

Добавляем в конфигурационный файл /etc/nginx/sites-available/pma.conf следующие строки:

auth_basic "Restricted";
auth_basic_user_file /etc/nginx/.htpasswd;
server {
        listen   80;

        auth_basic "Restricted";
        auth_basic_user_file /etc/nginx/.htpasswd;

        root /var/www/pma;
        index index.php;
        ...
        ...
#Проверяем конфигурацию и перечитываем конфигурационный файл
nginx -t && service nginx reload

Как установить и защитить phpMyAdmin в Ubuntu 16.04

Введение

Хотя многим пользователям нужны функциональные возможности системы управления базами данных, например MySQL, им может быть неудобно взаимодействовать с системой только из командной строки MySQL.

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

Предварительные требования

Прежде чем приступить к работе с этим руководством, необходимо выполнить несколько основных шагов.

Во-первых, предположим, что вы используете пользователя без полномочий root с привилегиями sudo, как описано в шагах 1–4 начальной настройки сервера Ubuntu 16.04.

Мы также предполагаем, что вы выполнили установку LAMP (Linux, Apache, MySQL и PHP) на своем сервере Ubuntu 16.04. Если это еще не сделано, вы можете следовать этому руководству по установке стека LAMP в Ubuntu 16.04.

Наконец, есть важные соображения безопасности при использовании программного обеспечения, такого как phpMyAdmin, поскольку оно:

  • Обменивается данными напрямую с вашей установкой MySQL
  • Обрабатывает аутентификацию с использованием учетных данных MySQL
  • Выполняет и возвращает результаты для произвольных запросов SQL

По этим причинам, а также из-за того, что это широко распространенное приложение PHP, которое часто становится целью атак, никогда не следует запускать phpMyAdmin в удаленных системах через обычное HTTP-соединение.Если у вас нет существующего домена, настроенного с использованием сертификата SSL / TLS, вы можете следовать этому руководству по защите Apache с помощью Let’s Encrypt в Ubuntu 16.04.

Когда вы закончите с этими шагами, вы будете готовы приступить к работе с этим руководством.

Шаг первый — установка phpMyAdmin

Для начала мы установим phpMyAdmin из репозиториев Ubuntu по умолчанию.

Мы можем сделать это, обновив наш локальный индекс пакетов, а затем используя систему упаковки apt , чтобы извлечь файлы и установить их в нашей системе:

  
  • sudo apt-get update
  • sudo apt-get install phpmyadmin php-mbstring php-gettext

Это задаст вам несколько вопросов для правильной настройки вашей установки.

Предупреждение: Когда появляется первое приглашение, выделяется apache2, но не выбран . Если вы не нажмете Space , чтобы выбрать Apache, установщик , а не переместит необходимые файлы во время установки. Нажмите Пробел , Tab , а затем Введите , чтобы выбрать Apache.

  • Для выбора сервера выберите apache2 .
  • Выберите yes , когда вас спросят, использовать ли dbconfig-common для настройки базы данных
  • Вам будет предложено ввести пароль администратора базы данных
  • Затем вам будет предложено выбрать и подтвердить пароль для самого приложения phpMyAdmin

В процессе установки фактически добавляется файл конфигурации Apache phpMyAdmin в каталог / etc / apache2 / conf-enabled / , откуда он автоматически читается.

Единственное, что нам нужно сделать, это явно включить расширения PHP mcrypt и mbstring , что мы можем сделать, набрав:

  
  • sudo phpenmod mcrypt
  • Судо phpenmod mbstring

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

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

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

  https: // имя_домена_или_IP / phpmyadmin
  

Теперь вы можете войти в интерфейс, используя имя пользователя root и пароль администратора, который вы установили во время установки MySQL.

Когда вы войдете в систему, вы увидите пользовательский интерфейс, который будет выглядеть примерно так:

Шаг второй — Защитите свой экземпляр phpMyAdmin

Нам удалось довольно легко настроить и запустить интерфейс phpMyAdmin. Однако мы еще не закончили. Из-за своей повсеместности phpMyAdmin является популярной целью для злоумышленников. Мы должны предпринять дополнительные меры для предотвращения несанкционированного доступа.

Один из самых простых способов сделать это — разместить шлюз перед всем приложением.Мы можем сделать это с помощью встроенных в Apache функций аутентификации и авторизации .htaccess .

Настройте Apache для разрешения переопределения .htaccess

Во-первых, нам нужно разрешить использование переопределений файла .htaccess , отредактировав наш файл конфигурации Apache.

Мы отредактируем связанный файл, который был помещен в наш каталог конфигурации Apache:

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

Нам нужно добавить директиву AllowOverride All в раздел файла конфигурации, например:

/ и т.д. / apache2 / conf-available / phpmyadmin.conf

  <Каталог / usr / share / phpmyadmin>
    Параметры FollowSymLinks
    DirectoryIndex index.php
    AllowOverride All
    . . .
  

После добавления этой строки сохраните и закройте файл.

Чтобы применить внесенные вами изменения, перезапустите Apache:

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

Создайте файл .htaccess

Теперь, когда мы разрешили использование .htaccess для нашего приложения, нам нужно создать его, чтобы фактически реализовать некоторую безопасность.

Для того, чтобы это было успешным, файл должен быть создан в каталоге приложения. Мы можем создать необходимый файл и открыть его в нашем текстовом редакторе с правами root, набрав:

  
  • sudo nano /usr/share/phpmyadmin/.htaccess

В этом файле нам нужно ввести следующую информацию:

/usr/share/phpmyadmin/.htaccess

  AuthType Basic
AuthName «Файлы с ограниченным доступом»
AuthUserFile / etc / phpmyadmin /.htpasswd
Требовать действительного пользователя
  

Давайте рассмотрим, что означает каждая из этих строк:

  • AuthType Basic : В этой строке указывается тип аутентификации, который мы реализуем. Этот тип реализует аутентификацию по паролю с использованием файла паролей.
  • AuthName : устанавливает сообщение для диалогового окна аутентификации. Вы должны сохранить это общее, чтобы неавторизованные пользователи не получали никакой информации о том, что защищается.
  • AuthUserFile : устанавливает расположение файла паролей, который будет использоваться для аутентификации.Это должно быть за пределами обслуживаемых каталогов. Вскоре мы создадим этот файл.
  • Требовать действительного пользователя : это указывает, что только аутентифицированным пользователям должен быть предоставлен доступ к этому ресурсу. Это то, что на самом деле предотвращает проникновение неавторизованных пользователей.

Когда вы закончите, сохраните и закройте файл.

Создайте файл .htpasswd для аутентификации

Местоположение, которое мы выбрали для нашего файла паролей, было « / etc / phpmyadmin /.htpasswd ». Теперь мы можем создать этот файл и передать его начальному пользователю с помощью утилиты htpasswd :

  
  • sudo htpasswd -c /etc/phpmyadmin/.htpasswd имя пользователя

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

Если вы хотите ввести дополнительного пользователя, вам нужно сделать это без флага -c , например:

  
  • sudo htpasswd / etc / phpmyadmin /.htpasswd дополнительный пользователь

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

  https: // имя_домена_или_IP / phpmyadmin
  

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

Заключение

Теперь у вас должен быть настроен и готов к использованию phpMyAdmin на вашем сервере Ubuntu 16.04. Используя этот интерфейс, вы можете легко создавать базы данных, пользователей, таблицы и т. Д., А также выполнять обычные операции, такие как удаление и изменение структур и данных.

Установите MySQL с phpMyAdmin на Ubuntu

Существуют сотни статей о том, как установить phpMyAdmin в Ubuntu. Однако ни один из них не показал мне безошибочного способа установки phpMyAdmin в моей системе.Эта статья для тех, кто хочет установить phpMyAdmin и MySQL без ошибок.


phpMyAdmin зависит от сервера Apache, PHP и MySQL. Поэтому я рекомендую установить их перед установкой phpMyAdmin.

Шаг 1:

Выполните следующую команду с терминала, чтобы установить сервер Apache.

Шаг 2:

Запустите сервер Apache с помощью следующей команды и посетите http: // localhost, чтобы узнать, работает ли сервер Apache. Если вы получили « Apache2 Ubuntu Default Page », ваш сервер Apache готов.
  sudo service apache2 start  

Шаг 3:

Установите PHP вместе с дополнительными модулями, которые требуются phpMyAdmin.

  sudo apt install php php-gettext libapache2-mod-php  

Шаг 4:

Установите MySQL.

  sudo apt install mysql-server  

Шаг 5:

Попробуйте войти в MySQL, используя mysql -u root. Если вы получаете сообщение об ошибке «ERROR 1045 (28000): Access denied for user ‘root’ @ ‘localhost’ (using password: NO)», выполните этот шаг.В противном случае продолжите с Шаг 6 .

5.1: Войдите в MySQL с помощью sudo.

5.2: Выберите базу данных mysql.

5.3: Обновите базу данных, чтобы использовать плагин mysql_native_password для пользователя root.

  mysql> ОБНОВЛЕНИЕ пользователя SET plugin = 'mysql_native_password' WHERE User = 'root';
mysql> ПРИВИЛЕГИИ ПРОМЫВКИ;  

5.4: Выйти из MySQL.

5.5: Перезапустите сервер MySQL.

  sudo service mysql restart  

Шаг 6:

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

  sudo apt install phpmyadmin  
  • Ответьте да на « Настроить базу данных для phpmyadmin с помощью dbconfig-common? »
  • Выберите apache2 (нажав пробел), когда вас попросят выбрать « Веб-сервер для автоматической перенастройки »

Шаг 7:
Перезапустите сервер Apache.

  sudo service apache2 restart  

Шаг 8:
Посетите http: // localhost / phpmyadmin.


Если вы открыли сайт phpMyAdmin, все готово. Если при чтении этой статьи у вас возникнут какие-либо ошибки, не стесняйтесь оставлять комментарии ниже. Я постараюсь найти решение.

Бонусный совет:

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

Шаг 1:
Запишите вашу версию phpMyAdmin. Вы можете увидеть это в правом нижнем углу домашней страницы phpMyAdmin. В моем случае это версия 4.6.6deb5.

Шаг 2:
Посетите сайт тем phpMyAdmin и загрузите нужную тему, указанную под номером версии вашей установки. Допустим, вы скачали упавший файл-0.3.zip.

Шаг 3:
Откройте Терминал и измените каталог на / usr / share / phpmyadmin / themes /.

  cd / usr / share / phpmyadmin / themes /  

Шаг 4:
Распакуйте zip-файл в текущий каталог.
  sudo unzip ~ / Downloads / fallen-0.3.zip  

Шаг 5:
Перезагрузите сервер Apache и откройте phpMyAdmin. Если он уже открыт, обновите страницу. Чтобы перезапустить сервер Apache, введите следующую команду:
  sudo service apache2 restart  

Шаг 6:
Теперь выберите тему Fallen из раскрывающегося списка Theme.

Как установить MySQL с phpMyAdmin в Ubuntu 14.04

Обновлено , от Linode

Распространение: Ubuntu 14.04 Распространение: Ubuntu 14.04
Traducciones al Español

Estamos traduciendo nuestros guías y tutoriales al Español. Es posible que usted esté viendo una traducción generada automáticamente. Estamos trabajando con traductores profesionales para verificar las traducciones de nuestro sitio web. Este proyecto es un trabajo en curso.

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

Примечание Это руководство написано для пользователя без полномочий root. Команды, требующие повышенных привилегий, имеют префикс sudo . Если вы не знакомы с командой sudo , вы можете проверить наши Руководство по пользователям и группам.

Перед началом работы

  1. Убедитесь, что вы выполнили Начало работы и Безопасность вашего сервера направляющих и Linode’s имя хоста установлено.

    Чтобы проверить имя хоста, запустите:

      имя хоста
    имя хоста -f
      

    Первая команда должна показать ваше короткое имя хоста, а вторая должна показать ваше полное доменное имя (FQDN).

  2. Обновите свою систему:

      sudo apt-get update && sudo apt-get upgrade -y
      
  3. Установите рабочий стек LAMP. Пожалуйста, посмотрите LAMP в руководстве Ubuntu 14.04 при необходимости.

    Примечание
  4. Настройте Apache с SSL, чтобы ваши пароли не отправлялись в виде обычного текста. Для этого пройдите через SSL-сертификаты с Apache в руководстве Debian и Ubuntu.

  5. Установите модуль mcrypt PHP:

      sudo apt-get install mcrypt
      
  6. Перезапустить Apache:

      sudo service apache2 restart
      

Настройка phpMyAdmin

  1. Установите текущую версию phpMyAdmin:

      sudo apt-get install phpmyadmin
      

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

  2. Для каждого виртуального хоста, которому вы хотите предоставить доступ к своей установке PHPMyAdmin, создайте символическую ссылку из корня документа на место установки phpMyAdmin ( / usr / share / phpmyadmin ):

      cd / var /www/html/example.com/public_html
    sudo ln -s / usr / share / phpmyadmin
      

    Это создаст символическую ссылку с именем phpmyadmin в корне вашего документа.

Защита phpMyAdmin

Файл .htaccess

Защитите свой каталог phpMyAdmin с помощью файла .htaccess , который разрешает доступ к нему только указанным IP-адресам. Вы можете сделать это, создав файл .htaccess в каталоге phpmyadmin . Замените правильные пути и IP-адреса для вашей конкретной конфигурации:

Файл: /var/www/example.com/public_html/phpmyadmin/.htaccess
  1
2
  
  приказ разрешить, отказать
позволяют от 12.34.56.78  

Принудительный SSL

Вы можете заставить phpMyAdmin использовать SSL в файле конфигурации phpMyAdmin /etc/phpmyadmin/config.inc.php , добавив следующие строки под сервером (s ) конфигурация раздел:

Файл: /etc/phpmyadmin/config.inc.php
  1
  
  $ cfg ['ForceSSL'] = 'true';
  

Тестирование установки phpMyAdmin

Чтобы протестировать phpMyAdmin, откройте свой любимый браузер и перейдите по адресу https: // example.com / phpmyadmin . Вам будет предложено ввести имя пользователя и пароль. Используйте имя пользователя «root» и пароль, который вы указали при установке MySQL. Кроме того, вы можете войти в систему, используя любого пользователя MySQL, и сохранить его разрешения.

Если вы успешно авторизуетесь, значит, phpMyAdmin установлен правильно.

Эта страница изначально была опубликована на

Как установить phpMyAdmin в Ubuntu 18.04

PhpMyAdmin — это графический интерфейс пользователя (GUI), который позволяет создавать, хранить и редактировать целые базы данных, созданные с помощью MySQL.

В этом руководстве вы узнаете, как установить phpMyAdmin и как защитить его доступ в Linux Ubuntu 18.04.

Сначала подключитесь к вашему серверу через SSH-соединение. Если вы еще не сделали этого, следуйте нашему руководству, чтобы безопасно подключиться по протоколу SSH. В случае локального сервера перейдите к следующему шагу и откройте терминал вашего сервера.

Установка phpMyAdmin

PhpMyAdmin находится в стандартном репозитории Ubuntu.

Сначала обновите индекс apt, а затем загрузите и установите phpMyAdmin:

  $ sudo apt update
$ sudo apt установить phpmyadmin php-mbstring php-gettext  

Набрав Y и нажав Enter для подтверждения.

Появится следующий экран:

Выберите здесь apache, но будьте осторожны, красная черточка не выбирает apache 2. Чтобы выбрать его, нажмите пробел, а затем нажмите Enter. Если вы не нажмете пробел, файлы, необходимые для установки, не будут перенесены.

После нажатия Enter появится следующий экран:

Выберите Да и нажмите Enter.

Теперь вам необходимо ввести пароль для базы данных администратора.Введите новый пароль, нажмите Tab, чтобы выбрать OK, и нажмите Enter.

Теперь введите и подтвердите пароль для приложения.

Как и раньше, введите новый пароль, нажмите TAB, чтобы выбрать Ok, и нажмите Enter.

Подтвердите пароль.

После завершения установки сюда будет добавлен файл конфигурации phpMyAdmin:

  /etc/apache2/conf-enabled/phpmyadmin.conf  

Единственное, что вам нужно сделать, это активировать расширение PHP mbstring.Для этого введите:

  $ sudo phpenmod mbstring  

Чтобы применить все изменения, перезапустите Apache, набрав:

  $ sudo systemctl перезапуск apache2  

Управление правами доступа

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

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

Настройка пароля для учетной записи root MySQL

Для доступа в качестве пользователя root MySQL требуется аутентификация auth_socket вместо простого пароля. Чтобы войти в систему как root MySQL через phpMyAdmin, измените метод аутентификации.

Для этого откройте командную строку MySQL

  $ sudo mysql  

Проверьте методы аутентификации для каждого пользователя MySQL, набрав:

  ВЫБЕРИТЕ пользователя, строку_аутентификации, плагин, хост ОТ mysql.Пользователь;  

Теперь отображается список всех методов аутентификации для пользователей MySQL. Здесь вы можете ясно увидеть, как у пользователя root есть тип аутентификации auth_socket.

  + ------------------ + ---------------------------- --------------- + ----------------------- + ---------- - +

| пользователь | authentication_string | плагин | хост |

+ ------------------ + ------------------------------ ------------- + ----------------------- + ----------- +

| корень | | auth_socket | localhost |

| mysql.сессия | * ЭТОТ НЕДОСТАТОЧНЫЙ ПАРОЛЬ, ЧТО МОЖЕТ БЫТЬ ЗДЕСЬ | mysql_native_password | localhost |

| mysql.sys | * ЭТОТ НЕДОСТАТОЧНЫЙ ПАРОЛЬ, ЧТО МОЖЕТ БЫТЬ ЗДЕСЬ | mysql_native_password | localhost |

| debian-sys-maint | * 8486437DE5F65ADC4A4B001CA591363B64746D4C | mysql_native_password | localhost |

| phpmyadmin | * 5FD2B7524254B7F81B32873B1EA6D681503A5CA9 | mysql_native_password | localhost |

+ ------------------ + ------------------------------ ------------- + ----------------------- + ----------- +

5 рядов в наборе (0.00 сек)  

Чтобы изменить тип аутентификации с auth_socket на mysql_native_password и использовать пароль для входа в систему под пользователем root, введите:

  ИЗМЕНЕНИЕ ПОЛЬЗОВАТЕЛЯ 'root' @ 'localhost' ИДЕНТИФИКАЦИЯ mysql_native_password ПО 'паролю';  

Вместо пароля введите пароль, который вам придется запомнить.

Подтвердите только что внесенные изменения, набрав:

  ПРИВИЛЕГИИ ПРОМЫВКИ;  

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

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

  ВЫБЕРИТЕ пользователя, строку_атентификации, плагин, хост ОТ mysql.user;  

Если все было сделано правильно, метод аутентификации для пользователя root будет изменен, и отображаемый экран будет похож на следующий:

  + ------------------ + ---------------------------- --------------- + ----------------------- + ---------- - +

| пользователь | authentication_string | плагин | хост |

+ ------------------ + ------------------------------ ------------- + ----------------------- + ----------- +

| корень | * DE06E242B88EFB1FE4B5083587C260BACB2A6158 | mysql_native_password | localhost |

| mysql.сессия | * ЭТОТ НЕДОСТАТОЧНЫЙ ПАРОЛЬ, ЧТО МОЖЕТ БЫТЬ ЗДЕСЬ | mysql_native_password | localhost |

| mysql.sys | * ЭТОТ НЕДОСТАТОЧНЫЙ ПАРОЛЬ, ЧТО МОЖЕТ БЫТЬ ЗДЕСЬ | mysql_native_password | localhost |

| debian-sys-maint | * 8486437DE5F65ADC4A4B001CA591363B64746D4C | mysql_native_password | localhost |

| phpmyadmin | * 5FD2B7524254B7F81B32873B1EA6D681503A5CA9 | mysql_native_password | localhost |

+ ------------------ + ------------------------------ ------------- + ----------------------- + ----------- +

5 рядов в наборе (0.00 сек)  

После этого используйте ранее выбранный пароль для аутентификации как пользователя root в интерфейсе phpMyAdmin.

Настройте пароль для выделенного пользователя MySQL

Чтобы получить доступ к phpMyAdmin не как пользователь root, а как пользователь, созданный специально для этой цели, ничего не остается, кроме как создать его.

Для этого снова войдите в командную строку MySQL.

В случае уже настроенной аутентификации на основе пароля для пользователя root введите:

  $ mysql -u корень -p  

Если вы решили не использовать пользователя root, введите:

  $ sudo mysql  

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

  $ СОЗДАТЬ ПОЛЬЗОВАТЕЛЯ 'имя пользователя' @ 'localhost' ИДЕНТИФИЦИРОВАНО 'паролем';  

Замените «имя пользователя» и «пароль» на выбранные вами.

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

  $ ПРЕДОСТАВЛЯЙТЕ ВСЕ ПРИВИЛЕГИИ *. * TO 'username' @ 'localhost' С ОПЦИЕЙ GRANT;  

Затем выйдите из командной строки MySQL, набрав:

  $ выход  

Первый доступ к phpMyAdmin

Чтобы подключиться к серверу, все, что вам нужно сделать, это использовать этот URL-адрес в браузере по вашему выбору: http: // IP-SERVER / phpmyadmin

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

Здесь вы можете войти в систему как пользователь root или как новый пользователь.

Если все было правильно запущено, отобразится панель управления phpMyAdmin.

Защита от внешних атак

Настроенный таким образом phpMyAdmin

особенно уязвим для внешних атак, так как эти базы данных особенно интересны для некоторых людей.

Самый простой способ предотвратить эти атаки — добавить порт доступа ко всему приложению с помощью встроенной функции Apache.

Это функция .htaccess.

Чтобы настроить эту функцию, откройте файл .conf в каталоге apache.

Для этого наберите:

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

Найдите в файле .conf раздел:

  <Каталог / usr / share / phpmyadmin>  

и добавить:

  AllowOverride All  

После добавления директивы AllowOverride All сохраните и закройте файл.conf и перезапустите Apache, чтобы изменения вступили в силу.

Для этого наберите:

  $ sudo systemctl перезапуск apache2  

После включения .htaccess для вашего приложения создайте новый.

Файл находится в каталоге приложения.

Для этого наберите:

  $ sudo nano /usr/share/phpmyadmin/.htaccess  

В файле напишите:

 
AuthType Basic

AuthName "Зарезервированные файлы"

AuthUserFile / etc / phpmyadmin /.htpasswd

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

Этот файл просто создаст диалоговое окно для аутентификации.

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

Сохраните файл и закройте его.

Теперь создайте файл паролей.

Для создания наберите:

  $ sudo htpasswd -c / etc / phpmyadmin /.htpasswd имя пользователя  

Замените «имя пользователя» на имя по вашему выбору.

Вам потребуется выбрать и подтвердить пароль, после чего будет создан файл с паролем в /etc/phpmyadmin/.htpasswd.

С этого момента перед доступом к phpMyAdmin потребуются дополнительные имена пользователей и пароли, чтобы все было безопаснее.

После ввода имени пользователя и пароля отобразится обычное окно входа в phpMyAdmin, в котором необходимо ввести свои учетные данные MySQL.

Как установить phpmyadmin на ubuntu 12.04

Phpmyadmin на ubuntu:

Phpmyadmin — это бесплатный инструмент, используемый для администрирования базы данных MySQL в режиме графического интерфейса (с использованием веб-браузера). Вы можете выполнять почти все основные задачи, такие как создание, удаление и изменение баз данных, таблиц, строк и т. Д., Вы также можете оптимизировать и восстанавливать таблицы одним щелчком мыши.

Phpmyadmin на ubuntu 12.04:

Чтобы установить phpmyadmin на ubuntu 12.04, вам понадобятся 3 основных пакета apache, MySQL и php должны быть установлены и настроены должным образом.Вы можете сослаться на следующие сообщения, чтобы установить, настроить и протестировать apache, mysql и php вместе.

1. Установка Apache2
2. Установка Mysql
3. Установка PHP
4. Все вместе тестирование

После установки apache2, mysql и php вы можете продолжить следующие шаги для установки и настройки phpmyadmin

Шаг 1 »Обновление репозитории ubuntu, введя следующую команду:

krizna @ leela: ~ $ sudo apt-get update

Шаг 2 »Введите команду ниже для установки phpmyadmin.

krizna @ leela: ~ $ sudo apt-get install phpmyadmin

Шаг 3 »Вам будет предложено выбрать тип веб-сервера для phpmyadmin. просто выберите «apache2» (используйте пробел и введите клавишу для выбора). Шаг 4 »Теперь при установке будет предложено указать конфигурацию базы данных mysql. Поскольку мы уже настроили сервер mysql вручную, просто выберите« Нет »и нажмите Enter, чтобы завершить установку.

Шаг 5 »Вот и все, теперь откройте в браузере путь« http: // localhost / phpmyadmin », вам будет предложено ввести имя пользователя и пароль.просто введите имя пользователя root и пароль Mysql, указанные во время установки Mysql. Теперь после успешного входа в систему вы можете увидеть экран, как показано ниже.

Если вы получаете сообщение «Страница не найдена». Включите следующую строку в файл /etc/apache2/apache2.conf .
Включите /etc/phpmyadmin/apache.conf
и перезапустите службу apache2
sudo /etc/init.d/apache2 restart

Включите свой VPS с помощью phpMyAdmin в Ubuntu! Пошаговое руководство

VPS

время доступа

22 января, 2020

песочные часы пустые

3мин чтения

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

Хотя вы можете делать все через интерфейс командной строки, некоторые люди предпочитают использовать GUI или графический интерфейс пользователя для работы с базами данных.

Это подводит нас к phpMyAdmin. PhpMyAdmin — это бесплатный графический интерфейс с открытым исходным кодом для управления базами данных MySQL. Хотя установить phpMyAdmin на сервер Ubuntu относительно просто, процедура немного изменилась с выпуском версии 18 ОС Ubuntu.04, где доступ пользователей root к приложениям был отключен из соображений безопасности.

В этой статье вы узнаете, как установить phpMyAdmin в Ubuntu 18.04, на котором запущен сервер Apache с базой данных MySQL.

Предварительные требования

Для установки phpMyAdmin у вас должен быть сервер Apache с базой данных MySQL , работающий на Ubuntu 18.04 OS . Вы также должны быть знакомы с интерфейсом командной строки.

Установите phpMyAdmin в Ubuntu 18.04

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

Откройте интерфейс командной строки и получите доступ к своему VPS с помощью SSH. Возникли проблемы? Ознакомьтесь с нашим руководством по PuTTY!

После этого введите команду:

 sudo apt-get install phpmyadmin php-mbstring php-gettext –y 

Обратите внимание, что в процессе установки вам будет предложено выбрать веб-сервер. Выберите apache2, нажав пробел, а затем клавишу TAB, и нажмите клавишу ввода, чтобы продолжить.

Затем вас попросят указать конфигурацию базы данных. Выберите Да и продолжайте дальше.

Установите «Пароль приложения MySQL для phpmyadmin». Убедитесь, что вы используете надежный и уникальный пароль. Подтвердите еще раз, когда будет предложено.

Наконец, введите пароль администратора базы данных.

По завершении процедуры установки откройте браузер и укажите URL-адрес http: // SERVER_IP / phpmyadmin (где SERVER_IP — это IP-адрес вашего сервера).

Если вы используете localhost, используйте URL-адрес http: // localhost / phpmyadmin и войдите в систему.

Обратите внимание, что в Ubuntu 18.04 вы не можете войти в систему как пользователь root из-за проблем с безопасностью. Поэтому войдите в систему с именем пользователя phpmyadmin и паролем MySQL, который вы установили ранее.

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

Предоставление разрешений пользователю «phpmyadmin»

Откройте интерфейс командной строки и войдите в MySQL с помощью команды:

 sudo mysql -u root –p 

Предоставьте разрешения пользователю phpmyadmin с помощью следующих команд:

 ПРЕДОСТАВЛЯЙТЕ ВСЕ ПРИВИЛЕГИИ НА *. * 'Phpmyadmin' @ 'localhost';
ПРИВИЛЕГИИ ПРОМЫВКИ;
ВЫХОД 

Теперь выйдите из phpMyAdmin, если вы все еще вошли в систему, и войдите снова с тем же именем пользователя phpmyadmin, которое вы использовали ранее. Теперь у вас есть полные привилегии для MySQL.

Альтернативное решение

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

 СОЗДАТЬ ПОЛЬЗОВАТЕЛЬ ИМЯ ПОЛЬЗОВАТЕЛЯ, ОПРЕДЕЛЕННОЕ ПАРОЛЕМ;
ПРЕДОСТАВЛЯЙТЕ ВСЕ ПРИВИЛЕГИИ НА *. * 'Username' @ 'localhost';
ПРИВИЛЕГИИ ПРОМЫВКИ;
ВЫХОД 

Обратите внимание, что ИМЯ ПОЛЬЗОВАТЕЛЯ и ПАРОЛЬ должны быть уникальными и надежными. Снова замените имя пользователя во второй строке на имя пользователя, которое вы создали в первой.Все команды должны выполняться по одной строке за раз.

Перезагрузите сервер Apache, если у вас возникнут проблемы со входом в систему. Команда для перезапуска сервера:

 sudo service apache2 перезапуск 

Рекомендуется взглянуть на вкладку «Статус», которая отображает количество подключений к серверу MySQL, текущие запросы MySQL, которые выполняются на сервере, и время безотказной работы сервера.

Заключение

Вот и все! Вы успешно установили и настроили phpMyAdmin в Ubuntu 18.04 с соответствующими административными разрешениями. Теперь вы можете начать работать с некоторыми из его более продвинутых функций. Ознакомьтесь с официальной документацией phpMyadmin, чтобы узнать больше. Будьте на связи!

Как установить и защитить PhpMyAdmin в Ubuntu 20.04?

Этот пост может содержать партнерские ссылки / рекламу, и я могу получить небольшую комиссию, когда вы нажимаете на ссылки / объявления без каких-либо дополнительных затрат для вас. Как партнер Amazon, я зарабатываю на соответствующих покупках. Вы можете прочитать мой полный отказ от ответственности здесь.

PhpMyAdmin — это графический веб-инструмент с открытым исходным кодом, написанный на PHP для управления базой данных MySQL или MariaDB. В этом посте я покажу вам, как установить и защитить phpMyAdmin в Ubuntu 20.04.

Зачем использовать phpMyAdmin?

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

PhpMyAdmin имеет хорошо проработанную документацию с поддержкой 72 языков (включая языки с письмом справа налево и слева направо).

PhpMyAdmin также предлагает администраторам широкий спектр функций наряду со всеми основными функциями, такими как управление базами данных, таблицами, пользователями, разрешениями и т. Д.

Особенности phpMyAdmin:

  • Интуитивно понятный и удобный веб-интерфейс.
  • Просмотр и удаление баз данных и таблиц.
  • Изменить поля и индексы.
  • Создание, копирование, удаление, переименование и изменение баз данных.
  • Создание, копирование, удаление, переименование и изменение таблиц.
  • Выполнение обслуживания базы данных и таблиц.
  • Импорт данных из CSV и SQL.
  • Выполнять, редактировать или добавлять в закладки любой оператор SQL (даже выполнять несколько запросов).
  • Управляйте учетными записями пользователей и привилегиями через интерфейс.
  • Экспорт данных в различные форматы: SQL, CSV, XML, PDF, Spreadsheet, Word.
  • Администрирование нескольких серверов.
  • Создание графики макетов баз данных в различных форматах.
  • Глобальный поиск в базе данных или ее подмножестве.
  • Преобразуйте сохраненные данные в любой формат, используя набор предопределенных функций.(например, отображение BLOB-данных в виде изображения или ссылки для скачивания)
  • И многое другое.

Предварительные требования для установки phpMyAdmin в Ubuntu 20.04

— Стек LAMP установлен и работает в Ubuntu 20.04

Проверьте следующий пост, если вы еще не установили стек LAMP.

Как установить стек LAMP в Ubuntu 20.04?

— Базовые знания Linux

— Доступ к учетной записи Sudo или root

Установите PhpMyAdmin в Ubuntu 20.04

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

 sudo apt update 

Установить PhpMyAdmin в Ubuntu со всеми зависимостями пакетов (включая расширения PHP 7) с помощью команды:

 sudo apt install phpmyadmin 

Во время процесса установки вам будет предложено настроить некоторые параметры.

Если вы используете apache в качестве веб-сервера, тогда

Выберите apache2 с помощью клавиши пробела, когда будет предложено выбрать веб-сервер.

Выберите веб-сервер

(звездочка указывает на выбранный вариант)

Перейдите к «» с помощью клавиши Tab и нажмите Enter.

Выберите «<Да>» и нажмите Enter, чтобы настроить базу данных для PhpMyAdmin с помощью «dbconfig-common».

Настроить базу данных для phpmyadmin

На следующем экране вам будет предложено установить пароль для пользователя phpmyadmin .

Установить пароль приложения MySQL для phpMyAdmin

После ввода пароля выберите «» и нажмите Enter.

Это создаст нового пользователя phpMyAdmin с привилегиями для управления этой базой данных.

Вы всегда можете войти в систему и проверить привилегии для phpMyAdmin, войдя на сервер MariaDB с помощью команды:

 sudo mysql -u root 

Чтобы проверить права, выполните следующую команду в консоли mariaDB:

 показать гранты для [электронной почты защищенный]; 

Как видите, phpmyadmin имеет все привилегии в базе данных phpmyadmin .

Для выхода из mariadb используйте:

 exit; 

Настроить брандмауэр для phpMyAdmin

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

Если вы используете брандмауэр 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 80,443 / tcp 

Доступ к PhpMyAdmin через подкаталог

При установке PhpMyAdmin в Ubuntu с веб-сервером apache файл конфигурации помещается в /etc/apache2/conf-enabled/phpmyadmin.conf , что позволяет нам для доступа к PhpMyAdmin через подкаталог.

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

 sudo cp /etc/phpmyadmin/apache.conf /etc/apache2/conf-enabled/phpmyadmin.conf 

Перезапустите службу apache2 для изменения вступят в силу.

 sudo systemctl restart apache2 

Если вы используете какое-либо приложение, например WordPress, на сервере Ubuntu 20.04 или настроили имя хоста для своего сервера, просто добавьте «/ phpmyadmin» после имени вашего домена.

 http://example.com/phpmyadmin 

Если вы используете PhpMyAdmin на локальном сервере Ubuntu 20.04, введите следующее в адресной строке браузера, чтобы получить к нему доступ.

 127.0.0.1/phpmyadmin 

Настройка VirtualHost для PhpMyAdmin

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

Чтобы настроить виртуальный хост для phpMYAdmin, переместите файл «phpmyadmin.conf» в каталог «/ etc / apache2 / sites-available /» с помощью команды:

 sudo mv /etc/apache2/conf-enabled/phpmyadmin.conf /etc/apache2/sites-available/phpmyadmin.conf 

Откройте перемещенный файл для редактирования (здесь я использую редактор Nano)

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

Чтобы сделать его virtualhost добавьте в начало файла следующие строки:

 
    ServerName pma.example.com
    DocumentRoot / usr / share / phpmyadmin
    ErrorLog $ {APACHE_LOG_DIR} /pma.error.log
    CustomLog $ {APACHE_LOG_DIR} /pma.access.log в сочетании 

Также добавьте закрывающий тег virtualhost в конец файла:

  

Вот краткое описание строк, которые мы добавили в файл:

: запуск тега виртуального хоста, разрешен для всех IP-адресов на порту 80.
ServerName pma.example.com : Имя сервера.(Замените pma.example.com своим именем сервера). Также не забудьте создать запись DNS A для этого поддомена.
DocumentRoot / usr / share / phpmyadmin : расположение файлов phpmyadmin.
ErrorLog $ {APACHE_LOG_DIR} /pma.error.log : расположение и имя файла журналов ошибок.
CustomLog $ {APACHE_LOG_DIR} /pma.access.log в сочетании : расположение и имя файла пользовательских журналов.
: закрывающий тег виртуального хоста.

Включите вновь созданный виртуальный хост, используя:

 sudo a2ensite phpmyadmin.conf 
enable phpmyadmin.conf

Перезагрузите службу apache, чтобы активировать новую конфигурацию.

 sudo systemctl reload apache2 

Перейдите во вновь созданный поддомен, чтобы получить доступ к веб-интерфейсу PhpMyadmin.

 pma.example.com 

(Замените pma.example.com на свой поддомен)

Безопасный PhpMyAdmin в Ubuntu 20.04

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

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

Отключить вход в систему с правами root для PhpMyAdmin

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

Перейдите в интерфейс phpMyAdmin и проверьте, можете ли вы получить доступ к базе данных, используя имя пользователя root.Если вам отказано в доступе, вам не нужно выполнять эти действия, вы можете сразу перейти к следующей мере безопасности, иначе выполните следующие действия.

Чтобы отключить root-доступ через phpmyadmin, выполните следующие действия:

1. Откройте файл config.inc.php.

 sudo nano /etc/phpmyadmin/config.inc.php 

2. Убедитесь, что следующие строки находятся в этом файле с соответствующими значениями. Если нет, добавьте следующие строки:

 / * Тип аутентификации * / 
$ cfg ['Серверы'] [$ i] ['auth_type'] = 'cookie';
$ cfg ['Серверы'] [$ i] ['AllowRoot'] = false;

Сохраните и закройте файл.

2. Перезапустите службу apache2

 sudo systemctl restart apache2 

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

Теперь, чтобы создать пользователей для управления базой данных:

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

 sudo mysql -u root 
 СОЗДАТЬ ПОЛЬЗОВАТЕЛЯ 'rahul' @ 'localhost', ОПРЕДЕЛЕННЫЙ 'secretpassword'; 
 ПРЕДОСТАВЛЯТЬ ВСЕ ПРИВИЛЕГИИ НА mydatabase.* в 'rahul' @ 'localhost'; 

Замените «rahul», «secretpassword» и «mydatabase» своим именем пользователя, паролем и именем базы данных соответственно.

4. Проверьте, может ли новый пользователь получить доступ к базе данных, войдя в интерфейс phpMyAdmin.

5. Создайте разных пользователей для разных баз данных и используйте их для удаленного управления базами данных.

Разрешить с определенного IP-адреса

Разрешить доступ к веб-интерфейсу phpMyAdmin только с определенного IP-адреса является хорошей мерой безопасности.

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

1. Откройте phpmyadmin.conf для редактирования.

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

3. Добавьте следующие строки под строкой «DirectoryIndex index.php»

 Требовать ip  specific_ip_address  
Требовать ip :: 1

Заменить specific_ip_address с фактическим IP-адресом.

4. Сохраните и закройте файл.

5. Перезапустите apache, чтобы изменения вступили в силу.

 sudo systemctl restart apache2 

Защита паролем Интерфейс PhpMyAdmin

Было бы неплохо, если бы только авторизованные пользователи имели доступ к интерфейсу phpMyAdmin. Вы можете заблокировать неавторизованных пользователей даже от доступа к веб-странице или субдомену phpMyAdmin.

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

1. Создайте каталог в безопасном месте. Я создаю каталог с именем «passwd» в «/ etc / phpmyadmin».

 mkdir / etc / phpmyadmin / passwd 

2.Используйте команду htpasswd, чтобы создать имя пользователя и пароль для аутентификации при доступе к странице, защищенной паролем (в данном случае страница phpMyAdmin), и сохраните сгенерированный файл в каталоге / etc / phpmyadmin / passwd.

 htpasswd -c /etc/phpmyadmin/passwd/.htpasswd rahul 

Если вы хотите добавить дополнительных пользователей, используйте:

 htpasswd /etc/phpmyadmin/passwd/.htpasswd Secondduser 

-c создает новый файл htpasswd .

Используйте «-c» только при первом запуске команды htpasswd, иначе она перезапишет существующий файл htpasswd.

3. Отредактируйте файл phpMyAdmin.conf, чтобы разрешить доступ только авторизованным пользователям к странице phpMyAdmin.

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

Добавьте следующие строки под строкой, в которой указано — «DirectoryIndex index.php»

 AllowOverride None 
AuthType Basic
AuthName «Authentication Required»
AuthUserFile / etc /phpmyadmin/passwd/.htpasswd
Требовать действительного пользователя

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

 sudo systemctl restart apache2 

Протестируйте phpMyAdmin в Ubuntu 20.04

Пришло время протестировать все конфигурации и посмотреть, все ли работает правильно.

Теперь перейдите в веб-интерфейс phpMyAdmin.

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

Требуется аутентификация для доступа к странице

Только после предоставления правильных данных аутентификации вы сможете получить доступ к интерфейсу phpMyAdmin.

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

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *