Sorry, you have been blocked
This website is using a security service to protect itself from online attacks. The action you just performed triggered the security solution. There are several actions that could trigger this block including submitting a certain word or phrase, a SQL command or malformed data.
What can I do to resolve this?
You can email the site owner to let them know you were blocked. Please include what you were doing when this page came up and the Cloudflare Ray ID found at the bottom of this page.
Cloudflare Ray ID: 7a6fdac32d3a77a9 • Your IP: Click to reveal 88.135.219.175 • Performance & security by Cloudflare
Can not login to phpmyadmin with root user
I am having trouble to login to with phpmyadmin in Ubuntu system.
Username — root Password — empty
but still it show me error like below
Help me to solve it Thank you.
3 Answers 3
I sloved it with below steps:
1) Open config.inc.php file
2) Change file permition to write
3) Add below line to the file
4) Change file parmissions to original again
5) Restart server
- Successfully logged in to phpmyadmin.
![]()
This is the correct answer:
sudo dpkg-reconfigure -plow phpmyadmin
in terminal, type
The user file will get open Just check the username like
And password like
Just copy this username and password without quotes in login page.
![]()
![]()
-
The Overflow Blog
Linked
Related
Hot Network Questions
Subscribe to RSS
To subscribe to this RSS feed, copy and paste this URL into your RSS reader.
Site design / logo © 2023 Stack Exchange Inc; user contributions licensed under CC BY-SA . rev 2023.3.11.43304
By clicking “Accept all cookies”, you agree Stack Exchange can store cookies on your device and disclose information in accordance with our Cookie Policy.
Vesta Control Panel — Forum
phpmyadmin, логин из-под root, нужный пароль root
phpmyadmin, логин из-под root, нужный пароль root
Post by prmres » Sun Nov 18, 2018 9:42 pm
Камрады, здравствуйте.
Возникла необходимость развернуть бекап сайта локально.
Поставил на свежую виртуалку CentOS7, установил в *advanced-режиме* VestaCP, но столкнулся с «проблемой» — не могу зайти в phpmyadmin под root.
Был несколько озадачен: «как так? пароль при установке вводил, но он не подходит и его надо где-то подсмотреть».
Покопался в интернетах, в итоге «проблема» решена, хочу поделиться.
1. смотрим пароль root
в файле /root/.my.cnf
—-
имхо не очень удобно иметь этот пароль таким каким *ты его сам не ставил*
наверное его можно\надо сменить на *нужный*
+ с некоторых пор в MariaDB\mySql по умолчанию ROOT по умолчанию соединяется только через UNIX Sockets
однако, на сколько я понимаю «эта фишка» при установке VestaCP — *подкручивается*, ибо логин из-под root с «подсмотренным» паролем проходит
но если *вдруг* кому то понадобится, то ниже *рецепт*
—-
2. меняем пароль root в MariaDB\mySql и отключаем (если надо) *запрет* логина root
—-
командой «update user set plugin=» where User=’root’;» убираем *требование* для логина root через unix_socket
—-
3. правим конфиги
в файлах
/root/.my.cnf
/usr/local/vesta/conf/mysql.conf
указываем «ВАШ_НОВЫЙ_ПАРОЛЬ» (тот, который был установлен в п.2)
всё, теперь в phpmyadmin можно логиниться под root с *нужным* паролем
4. при необходимости «вернуть как было»
PS
*операция* проведена на CentOS7 + VestaCP
на Ubuntu всё то же самое, VestaCP не использовалась, но использовались MariaDB + phpmyadmin
PPS
казнить нельзя помиловать
сообщение носит информативный характер, без цели обсуждения «опасности\безопасности» производимых действий, сообщение служит личным целям «что б не забыть»
Установка и защита phpMyAdmin в Ubuntu 20.04
Для корректной работы многих веб-проектов нужна система управления базами данных (СУБД), например, MySQL. Однако взаимодействовать с системой исключительно с помощью командной строки MySQL не всегда удобно.
Благодаря phpMyAdmin пользователи могут управлять MySQL через веб-интерфейс. Данный мануал содержит пошаговые инструкции по установке и защите веб-интерфейса phpMyAdmin в системе Ubuntu 20.04.
Требования
- Сервер Ubuntu 20.04, настроенный по этому мануалу (с пользователем sudo и настроенным ufw).
- Стек LAMP (его можно установить с помощью этого мануала).
При использовании программ вроде phpMyAdmin следует учитывать, что она:
- Взаимодействует с MySQL напрямую;
- Проходит аутентификацию при помощи учётных данных MySQL;
- Обрабатывает и возвращает результаты для произвольных запросов SQL.
По этим причинам (а также из-за своей популярности и распространённости) это приложение PHP часто подвергается атакам злоумышленников. Потому ни при каких обстоятельствах его нельзя запускать в удалённой системе по HTTP-соединению. Без SSL/TLS-сертификата для веб-сервера Apache использовать phpMyAdmin очень опасно.
Читайте также:
1: Установка phpMyAdmin
Пакеты phpMyAdmin доступны в стандартном репозитории Ubuntu.
Войдите в систему как пользователь sudo и обновите индекс пакетов
sudo apt update
Теперь можно начинать установку phpmyadmin. Также официальная документация рекомендует установить пару расширений PHP, чтобы получить доступ к дополнительным функциям и улучшить производительность.
Если вы установили стек LAMP по этому руководству, ряд необходимых модулей уже есть у вас на сервере (их мы устанавливали вместе с php). Сейчас рекомендуется установить эти пакеты:
- php-mbstring: модуль для обработки строк, которые не поддерживают ASCII, и преобразования их в другие кодировки
- php-zip: включает загрузку.zip файлов в phpMyAdmin
- php-gd: обеспечивает поддержку библиотеки GD Graphics
- php-json: обеспечивает поддержку сериализации JSON для PHP
- php-curl: обеспечивает взаимодействие PHP с разными типами серверов по разным протоколам.
Чтобы установить эти пакеты, введите следующую команду. Чтобы настроить экземпляр phpMyAdmin, во время установки нужно ответить на ряд вопросов.
- Выберите apache2 как веб-сервер (обратите внимание: в первом окне ответ apache2 выделен, но по факту не выбран. Если вы не нажмёте пробел, инсталлятор не сможет переместить нужные файлы во время установки. Чтобы выбрать Apache, нажмите пробел, Tab и Enter).
- Ответьте yes на вопрос, нужно ли использовать dbconfig-common для настройки БД.
- После чего программа предложит выбрать и подтвердить пароль phpMyAdmin.
Примечание: Если при установке MySQL вы включили плагин Validate Password, это может вызвать ошибку при попытке установить пароль для пользователя phpmyadmin:
mysql said: ERROR 1819 (HY000) at line 1: your password does not satisfy the current policy requirements. Your options are: […]
Чтобы устранить ошибку, выберите в списке предложенных ответов опцию abort, чобы остановить установку. Затем откройте консоль MySQL:
Если у вас включена парольная аутентификация для пользователя root MySQL, запустите эту команду и затем введите пароль:
В командной строке MySQL запустите следующую команду, чтобы отключить плагин Validate Password. Обратите внимание: эта команда не удалит этот компонент, а просто остановит его загрузку на сервер MySQL:
UNINSTALL COMPONENT «file://component_validate_password»;
Теперь можно закрыть клиент MySQL:
Снова попробуйте установить phpmyadmin. На этот раз ошибки быть не должно:
sudo apt install phpmyadmin
Когда установка phpMyAdmin будет завершена, снова откройте командную строку MySQL (с помощью команды sudo mysql or mysql -u root –p) и включите плагин Validate Password.
INSTALL COMPONENT «file://component_validate_password»;
Во время установки в каталог /etc/apache2/conf-enabled/ добавляется конфигурационный файл phpMyAdmin. В этом каталоге файл читается автоматически. Чтобы завершить настройку Apache и PHP для поддержки phpMyAdmin, нужно только явно включить PHP-расширение mbstring.
sudo phpenmod mbstring
Перезапустите Apache, чтобы обновить настройки:
sudo systemctl restart apache2
Теперь phpMyAdmin установлен и может взаимодействовать с Apache. Но прежде чем вы сможете начать работу с MySQL при помощи phpMyAdmin, вам нужно настроить привилегии пользователей MySQL.
2: Настройка аутентификации и привилегий
После установки phpMyAdmin автоматически генерирует пользователя базы данных phpmyadmin, который выполняет базовые процессы программы. Однако для входа в phpMyAdmin рекомендуется использовать другую учетную запись, не phpmyadmin. Вместо него вы можете использовать либо root-аккаунт MySQL, либо специальный аккаунт для phpMyAdmin.
Настройка парольного доступа для root-пользователя MySQL
В установках Ubuntu, которые используют MySQL 5.7+, root-пользователь по умолчанию поддерживает аутентификацию с помощью плагина auth_socket, а не с помощью пароля. Это позволяет во многих случаях обеспечить большую безопасность и удобство, но это также может усложнить работу, например, когда вам необходимо с помощью этого пользователя дать внешней программе (как phpMyAdmin) права администратора.
Чтобы подключаться к phpMyAdmin как root-пользователь MySQL, измените метод аутентификации. Вместо auth_socket настройте парольную аутентификацию. Для начала откройте командную строку MySQL:
Затем проверьте, какой метод аутентификации использует ваш пользователь MySQL:
SELECT user,authentication_string,plugin,host FROM mysql.user;
+——————+——————————————-+————————+————+
| 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. Чтобы настроить его для поддержки парольной аутентификации, запустите команду ALTER USER (вместо password укажите надежный пароль):
ALTER USER ‘root’@’localhost’ IDENTIFIED WITH caching_sha2_password BY ‘password’;
Примечание: Эта команда ALTER USER настроит пользователя root 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;
+——————+——————————————-+————————+————+
| 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 пользователь поддерживает парольную аутентификацию, и можете войти в phpMyAdmin как этот пользователь.
Настройка парольной аутентификации для выделенного пользователя MySQL
В некоторых случаях для подключения к phpMyAdmin лучше использовать специально выделенного пользователя. Чтобы настроить такой доступ, откройте командную строку MySQL:
Если вы включили парольную аутентификацию для пользователя root, вам нужно будет запустить следующую команду и ввести пароль:
Создайте нового пользователя:
CREATE USER ‘8host’@’localhost’ IDENTIFIED WITH caching_sha2_password BY ‘password’;
Примечание: Опять же, в зависимости от установленной версии PHP вам может потребоваться настроить аутентификацию по плагину mysql_native_password вместо caching_sha2_password:
ALTER USER ‘8host’@’localhost’ IDENTIFIED WITH mysql_native_password BY ‘password’;
Затем предоставьте новому пользователю соответствующие права. Например, вы можете предоставить ему права на все таблицы в БД, а также возможность добавлять, изменять и удалять пользовательские привилегии с помощью этой команды:
GRANT ALL PRIVILEGES ON *.* TO ‘8host’@’localhost’ WITH GRANT OPTION;
Закройте оболочку MySQL:
Чтобы открыть интерфейс, посетите в браузере следующую ссылку:
Чтобы получить доступ к интерфейсу, используйте имя и пароль вашего нового пользователя.
3: Защита phpMyAdmin
Из-за своей распространённости PhpMyAdmin часто подвергается атакам злоумышленников. Теперь нам необходимо обеспечить интерфейсу достаточный уровень защиты для предотвращения неавторизованного доступа.
Один из самых простых способ защиты phpMyAdmin – размещение шлюза безопасности. Это делается при помощи специальных файлов Apache под названием .htaccess.
Сначала нужно включить поддержку файлов .htaccess, отредактировав конфигурационный файл phpmyadmin.conf.
sudo nano /etc/apache2/conf-available/phpmyadmin.conf
В раздел <Directory /usr/share/phpmyadmin> нужно добавить параметр AllowOverride All:
<Directory /usr/share/phpmyadmin>
Options FollowSymLinks
DirectoryIndex index.php
AllowOverride All
. . .
Сохраните и закройте файл.
Перезапустите Apache, чтобы обновить настройки:
sudo systemctl restart apache2
Теперь приложение поддерживает файлы .htaccess; осталось создать такой файл.
Для корректной работы необходимо создать этот файл в каталоге приложения. Для этого введите:
sudo nano /usr/share/phpmyadmin/.htaccess
Вставьте в файл такие строки:
AuthType Basic
AuthName «Restricted Files»
AuthUserFile /etc/phpmyadmin/.htpasswd
Require valid-user
Рассмотрим эти строки подробнее:
- AuthType Basic задает тип авторизации; в данном случае используется аутентификация по паролю с помощью файла паролей .htpasswd.
- AuthName содержит текст сообщения диалогового окна аутентификации. Чтобы неавторизованные пользователи не могли получить дополнительной информации о закрытом приложении, это сообщение не должно содержать подробностей, а только общие данные.
- AuthUserFile задает расположение файла паролей htpasswd, который будет использоваться для авторизации. Он должен находиться вне обслуживаемых каталогов. Такой файл будет создан позже.
- Require valid-user указывает, что доступ к этому ресурсу могут получить только авторизованные пользователи. Именно этот параметр защищает ресурс от неавторизованных пользователей.
Сохраните и закройте файл.
Файл с паролями нужно создать в каталоге, заданном в директиве AuthUserFile, в данном случае это /etc/phpmyadmin/.htpasswd.
sudo htpasswd -c /etc/phpmyadmin/.htpasswd username
Будет предложено выбрать и подтвердить пароль нового пользователя. После этого файл .htpasswd будет создан, а только что введённый пароль будет помещен в него в хэшированном виде.
Чтобы добавить в файл еще одного пользователя, используйте вышеприведенную команду без флага –с:
sudo htpasswd /etc/phpmyadmin/.htpasswd additionaluser
Теперь при входе в подкаталог phpMyAdmin будут запрашиваться учетные данные пользователя:
https://domain_name_or_IP/phpmyadmin
The server http://111.111.11.111:22 requires a username and password. The server says: Restricted Files.
User Name:
Password:
Только после аутентификации пользователь сможет получить доступ к странице авторизации phpMyAdmin. Это установит дополнительный уровень безопасности, который защитит веб-интерфейс phpMyAdmin от атак методом подбора паролей.
Заключение
Теперь phpMyAdmin установлен, запущен и надежно защищен от злоумышленников. При помощи этого интерфейса можно быстро и легко создавать базы данных, пользователей, таблицы и т.п., а также выполнять такие рутинные задачи как удаление и редактирование структур и данных.