Руководство. Установка phpMyAdmin. Восстановление пароля админа через phpMyAdmin Phpmyadmin предлагает вновь ввести пароль

  • Дата: 18.10.2022


Восстановление пароля админа через phpMyAdmin. Wodrpress, DLE, Joomla и другие cms

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

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

Наверное простейшим, да и самым надежным средством, является простейшая табличка, созданная в Word или Excel. Лучше если она хранится на съемном накопителе вроде флешки. Но как всегда мешает неорганизованность и русское авось, типа потом запишу данные.

При покупке одного сайта, получил файлы и дамп базы данных. После установки на свой хостинг мне было отказано в доступе в админку. Так как при заливке новой БД, Вордпресс сменил пароль, логин и электронную почту админа. Что делать в подобном случае?

На выручку админу приходит как всегда phpMyAdmin! При наличии доступа, замена пароля, логина, электронной почты, происходит за считанные минуты. Этот способ не новый, описан в различных источниках, но он самый работоспособный и доступный для начинающих.

Небольшое отступление. В БД пароли пользователей хранятся зашифрованными при помощи MD5. Принцип работы следующий. При входе в админку админ вводит свой пароль и логин. От введенного пароля вычисляется хеш - функция, а результат сравнивается со значением, которое хранится в базе данных.При равенстве значений - пароль верен.

На известном ресурсе, находится простой сервис, позволяющий производить шифрование в MD5 :


Подобных сервисов в сети множество, стоит только набрать в поиске "MD5".

Изменение пароля, логина и эл. почты Wordpress через phpMyAdmin:

Заходим в панель phpMyAdmin вашего сайта
2. Выбираем нужную БД, если она не одна
3. Выбираем таблицу wp_users, действие "Обзор"


4. Кликаем мышкой и смотрим:


user_pass - $P$BkIM9ktWqa4z5yUiGh442kNqbKx/fG0
user_nicename - admin
user_email - [email protected]
display_name - admin

Редактируем в таблице данные:


Здесь думаю пояснения излишни, все эти данные мы можем смело менять на свои.

Теперь вспомним про MD5 , зашифруем ваш новый пароль и введем его в поле user_pass.

Например:
admin -
superadmin -
123 -
1. Вставляем нужное значение пароля в поле user_pass
2. Меняем почту на свою
3. Жмем на кнопку "Пошел"
Выполняется SQL-запрос и показаны сделанные изменения в таблице БД:

После этого можете смело заходить в админку, вводить нужно не хеш, а слово зашифрованное в MD5, например, как в моих примерах: admin, superadmin или 123.

Данный способ действует на любых платформах, как DLE, Joomla, Joostina или Drupal, т.е на всех сайтах использующих MySQL БД. Различие состоит только в названиях таблиц, где хранятся пароли пользователей. Для примера посмотрим бд сайта на dle.

Изменение пароля, логина и эл. почты DLE через phpMyAdmin:

1. Открываем БД dle сайта
2. Находим таблицу dle_users, здесь хранятся данные пользователей


3. Нажимаем на "Обзор"


4. Редактируем и сохраняем данные

Способ №2.
1. Идем в в phpMyAdmin
2. Выбираем вверху SQL
3. В форму необходимо вставить следующий запрос:
INSERT INTO `dle_users` (`email` , `password` , `name`, `user_group`)
VALUES ("[email protected]", "d9b1d7db4cd6e70935368a1efb10e377", "newadmin", "1");
4. После этого логинимся на сайте со следующими данными:
Логин: newadmin
Пароль: 123

Как изменить пароль админа для доступа в админпанель сайта на Joomla:


1. Открываем БД сайта joomla
2. Ищем таблицу
3. Редактируем пароль, логин или почту
4. Сохраняем




Подобным образом можно работать с любым сайтом, главное найти таблицу с пользователями. Если пользователей на сайте много, то главный администратор всегда имеет user_id=1.
Для начинающих осваивать интернет, не волнуйтесь и не бойтесь работать с phpMyAdmin. Любую операцию можно отменить, если вы сомневаетесь в правильности своих действий. А изучить и практически грамотно пользоваться, можно лишь только путем проб и ошибок.

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

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

Удачи вам в освоении phpMyAdmin, не теряйте никогда пароли и данные доступа!

Рано или поздно любой владелец сайта сталкивается с непосредственной работой с базой данных. Для этих целей был разработан phpmyadmin, который в большинстве случаев уже установлен и настроен на вашем хостинге. Но часто от вебмастера требуется изменить пароль root`а на phpmyadmin. Вроде простая задача, но почему-то у большинства людей эта проблема вызывает немалые сложности. Лично у меня так и было.

У меня эта потребность возникла после переустановки операционной системы на VPS -сервере от Majordomo, после которой я просто не смог войти в phpmyadmin с паролем по-умолчанию. Пришлось срочно его менять.

Сам пароль для доступа к phpmyadmin совпадает с паролем root к серверу MySQL, который вы указывали при установке. Если Вы этот пароль по какой-то причине забыли, то восстановить его можно достаточно просто. Способ восстановления пароля описан в статье:

Есть еще один небольшой нюанс, который следует учитывать, когда вы используете phpmyadmin – это способ авторизации этой надстройки.

За все это отвечает только один конфигурационный файл phpmyadmin – config.inc.php , который в операционной системе FreeBSD находится в директории /usr/local/www/phpMyAdmin . Содержимое моего файла, который является боевым, вот:

Теперь давайте разберем где тут что и как…

  • blowfish_secret – это произвольная фраза, которая нужна для шифрования паролей в куках. Надежнее поменять ее на любую другую, только не стандартную.
  • auth_type – это тип авторизации, который может принимать 2 значения: config и cookie :
    • config – указывает на то, что логин/пароль будут браться из этого файла (две следующие строчки user и password ). При таком режиме, успешный вход будет всегда, когда вы или кто-то другой просто зайдет на ваш домен , где размещается также phpmyadmin и может получит возможность натворить там всяких пакостей.
    • cookie – указывает на то, что логин/пароль будут спрашиваться каждый раз, как кто-то переходит по адресу, где лежит phpmyadmin. Правильный пароль будет храниться в зашифрованном виде в куках на вашем компьютере.
  • user и password – это имя пользователя (в нашем случае должен быть root ) и пароль. В этом конфигурационном файле они добавлены просто для примера и при использовании cookie их можно вообще удалить.
  • AllowNoPassword – может принимать значения true (истина) и false (ложь). Собственно разрешается вход без пароля (true) или нет (false)
  • extension – может принимать значение mysql и mysqli . Первое нужно указывать в случае если вы используете phpmyadmin в связки MySQL ниже 4.1.3. Второй если используете версию MySQL выше 4.1.3.

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

Кликните по заголовку, что бы открыть/закрыть подробное описание процесса

Нам потребуется создать новую базу данных - щелкаем по вкладке "Базы данных" . В текстовом поле подраздела "Создать базу данных" вводим phpmyadmin , нажимаем кнопку "Создать" .

Создадим нового пользователя - щелкаем по вкладке "Пользователи" .

На данный момент у нас создан единственный пользователь с именем root . Кликаем по ссылке "Добавить пользователя" ,

в открывшемся всплывающем окне, в разделе "Информация учетной записи" в текстовое поле "Имя пользователя:" вводим "pma" . В текстовое поле "Хост:" вводим "localhost" . В поле "Пароль:" вводим пароль (любой, который придет вам в голову). В поле "Подтверждение:" подтверждаем введенный выше пароль.

Скролируем окно до раздела "Глобальные привилегии" , жмем на ссылку "Отметить все" .

Кликаем по кнопке "Добавить пользователя" .

Новый пользователь с именем pma будет создан.

Теперь, в созданную базу нужно импортировать данные. В левой колонке выбираем phpmyadmin (кликаем по ней мышью).

В верхнем меню щелкаем по вкладке Импорт .

В подразделе Импортируемый файл: нажимаем кнопку обзор.

В открывшемся контекстном меню выбираем файл create_tables.sql , который находится в папке examples , лежащей внутри корневой директории phpMyAdmin (в моем случае полный путь выглядит так: c:\Program Files (x86)\Apache Software Foundation\Apache2.2\htdocs\phpmyadmin\examples\create_tables.sql ).

В самом низу страницы находим и жмем кнопку Ok . База импортирована.

Внесем изменения в конфигурационный файл.

Открываем в блокноте файл config.inc.php . Ищем строку $cfg["Servers"][$i]["controlhost"] = ""; , разкомментируем ее (удаляем двойной слеш), в кавычки вписываем localhost (строка примет вид $cfg["Servers"][$i]["controlhost"] = "localhost"; ).

Находим и разкомментируем строку $cfg["Servers"][$i]["controlpass"] = "pmapass"; , в кавычках меняем пароль, на тот, который назначался при создании пользователя pma .

Находим и разкомментируем следующие строки:

$cfg["Servers"][$i]["controluser"] = "pma";

$cfg["Servers"][$i]["pmadb"] = "phpmyadmin";

$cfg["Servers"][$i]["bookmarktable"] = "pma_bookmark";

$cfg["Servers"][$i]["relation"] = "pma_relation";

$cfg["Servers"][$i]["table_info"] = "pma_table_info";

$cfg["Servers"][$i]["table_coords"] = "pma_table_coords";

$cfg["Servers"][$i]["pdf_pages"] = "pma_pdf_pages";

$cfg["Servers"][$i]["column_info"] = "pma_column_info";

$cfg["Servers"][$i]["history"] = "pma_history";

$cfg["Servers"][$i]["tracking"] = "pma_tracking";

$cfg["Servers"][$i]["designer_coords"] = "pma_designer_coords";

$cfg["Servers"][$i]["userconfig"] = "pma_userconfig";

$cfg["Servers"][$i]["recent"] = "pma_recent";

$cfg["Servers"][$i]["table_uiprefs"] = "pma_table_uiprefs";

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

Как альтернативный вариант (если очень не хочется копаться в коде) - заменяем все содержимое файла config.inc.php на код, приведенный ниже

< $cfg["blowfish_secret"] = "a8b7c6d"; $i = 0; $i++; $cfg["Servers"][$i]["auth_type"] = "cookie"; $cfg["Servers"][$i]["host"] = "localhost"; $cfg["Servers"][$i]["connect_type"] = "tcp"; $cfg["Servers"][$i]["compress"] = false; $cfg["Servers"][$i]["extension"] = "mysqli"; $cfg["Servers"][$i]["AllowNoPassword"] = false; $cfg["Servers"][$i]["controlhost"] = "localhost"; $cfg["Servers"][$i]["controluser"] = "pma"; $cfg["Servers"][$i]["controlpass"] = "пароль для пользователя pma"; $cfg["Servers"][$i]["pmadb"] = "phpmyadmin"; $cfg["Servers"][$i]["bookmarktable"] = "pma_bookmark"; $cfg["Servers"][$i]["relation"] = "pma_relation"; $cfg["Servers"][$i]["table_info"] = "pma_table_info"; $cfg["Servers"][$i]["table_coords"] = "pma_table_coords"; $cfg["Servers"][$i]["pdf_pages"] = "pma_pdf_pages"; $cfg["Servers"][$i]["column_info"] = "pma_column_info"; $cfg["Servers"][$i]["history"] = "pma_history"; $cfg["Servers"][$i]["table_uiprefs"] = "pma_table_uiprefs"; $cfg["Servers"][$i]["tracking"] = "pma_tracking"; $cfg["Servers"][$i]["designer_coords"] = "pma_designer_coords"; $cfg["Servers"][$i]["userconfig"] = "pma_userconfig"; $cfg["Servers"][$i]["recent"] = "pma_recent"; $cfg["UploadDir"] = ""; $cfg["SaveDir"] = ""; ?>

Не забываем вписать в строке $cfg["Servers"][$i]["controlpass"] = "пароль для пользователя pma"; в кавычках пароль, который был задан для пользователя pma и в строке $cfg["blowfish_secret"] = "a8b7c6d"; увеличить надпись в кавычках минимум до 10 символов

.
3. Теперь Вы должны создать конфигурационный файл (config.inc.php). Создание конфигурационного файла - необходимое условие прежде всего для запуска phpMyAdmin, а также необходимо для задания некоторых возможностей. Эта задача может быть выполнена двумя разными способами. Традиционно, пользователи могут вручную отредактировать копию файла config.inc.php. Кроме этого, пользователи, предпочитающие графическую инсталляцию, могут воспользоваться мастером установки (скриптом инсталляции).

  • Для того, чтобы вручную создать конфигурационный файл, достаточно простейшего текстового редактора, с помощью которого нужно создать файл config.inc.php. Для упрощения задачи, Вы можете скопировать в текстовый редактор содержимое файла config.sample.inc.php - образца рабочей конфигурации, содержащей минимальное количество конфигурационных переменных.

    Созданный файл необходимо поместить в главную директорию phpMyAdmin (ту, которая содержит index.php). phpMyAdmin сперва загружает libraries/config.default.php, а затем подменяет значения прописанных в нем переменных теми, что находит в config.inc.php. Если значение по умолчанию (тех переменных, что определены в libraries/config.default.php) Вас устраивает, тогда нет необходимости включать его в config.inc.php. Для запуска phpMyAdmin вам понадобятся как минимум несколько директив, простейшая конфигурация может выглядеть так:

    $cfg["blowfish_secret"] = "ba17c1ec07d65003"; // use here a value of your choice
    $i=0;
    $i++;
    $cfg["Servers"][$i]["auth_type"] = "cookie";
    ?>

    Или, если вы не хотите вводить каждый раз логин/пароль (данная конфигурация не рекомендуется из соображений безопасности), конфигурационный файл может выглядеть так:
  • Вместо ручного редактирования файла config.inc.php, Вы можете использовать скрипт установки. Прежде всего, вам необходимо вручную создать в главной директории phpMyAdmin папку "config". Это - мера безопасности. При работе под ОС Linux/Unix Вы можете использовать следующие команды:

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

    На других платформах, просто создайте директорию и убедитесь, что Ваш веб-сервер имеет права на чтение и запись в неё. FAQ 1.26 может помочь в этом случае.

    Затем, откройте в браузере scripts/setup.php. Помните, что изменения не будут сохранены на диск до тех пор, пока не будет нажата кнопка "Save" в блоке "Configuration". Если все хорошо, то скрипт сохранит новый config.inc.php в директорию config/, но если веб-сервер не имеет необходимых прав, Вы можете увидеть сообщение об ошибке "Cannot load or save configuration". В таком случае, убедитесь, что директория config/ создана и имеет необходимые права, либо воспользуйтесь ссылкой "Download" для сохранения конфигурационного файла на локальный диск и последующей закачки (например, через FTP) на сервер.

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

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

4. Если Вы собираетесь использовать "config" аутентификацию (auth_type), необходимо защитить директорию в которую был установлен phpMyAdmin от несанкционированного доступа, потому что данный режим позволяет любому пользователю получить доступ к phpMyAdmin без предварительного ввода логина/пароля. Рекомендуются альтернативные методы аутентификации, например, HTTP-AUTH (с помощью.htaccess файла), либо использованием одного из двух других методов аутентификации: cookie или http. См. подраздел FAQ "Мультипользовательская установка" для дополнительной информации, особенно обратите внимание на FAQ 4.4 .
5. Откройте главную директорию phpMyAdmin в вашем браузере. Должно появиться окно приветствия phpMyAdmin и Ваши базы данных, или окно ввода логина, в случае использования режима HTTP- или cookie-аутентификации. 6. Вы должны запретить доступ к субдиректории./libraries средствами вашего веб-сервера. В случае использования веб-сервера Apache для защиты директории Вы можете использовать файл.htaccess. При использовании других веб-серверов вы должны запретить доступ к директории./libraries самостоятельно. Подобная конфигурирование - превентивная мера на случай обнаружения уязвимостей: возможного раскрытия пути (path exposure) и межсайтового выполнения сценариев (Cross-site Scripting, XSS).

Linked-tables infrastructure (Инфраструктура связанных таблиц)

Для использования многих опций (закладок, комментариев, SQL-истории, PDF-схем, преобразования содержимого полей, и т.д.) необходимо создать набор специальных таблиц. Эти таблицы могут находиться как в Вашей базе данных, так и в центральной базе при многопользовательской системе (в этом случае данная БД может быть доступна только для пользователя controluser, соответственно, другие пользователи не имеют прав на неё).

Зайдите в директорию scripts/ , здесь вы найдете файл create_tables.sql . (Если используете Windows сервер, обратите особое внимание на FAQ 1.24).

Если у Вас установлена версия MySQL сервера 4.1.2 или более позднее, используйте вместо вышеуказанного файла create_tables_mysql_4_1_2+.sql , для новой инсталляции.

Если у вас уже есть готовая инфраструктура и вы обновляете MySQL до версии 4.1.2 или выше, используйте upgrade_tables_mysql_4_1_2+.sql .

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

После импорта create_tables.sql , Вы должны определить названия таблиц в файле config.inc.php , с помощью директив, описанных в разделе "Конфигурирование" . Кроме этого необходимо обладать правами controluser на данные таблицы (см. ниже, раздел "Использование режима аутентификации").

Обновление старой версии

Просто скопируйте конфигурационный файл ./config.inc.php от предыдущей версии в директорию куда был распакован phpMyAdmin. Конфигурационные файлы из очень старых версий (2.3.0 or older) могут потребовать некоторых настроек, т.к. некоторые опции были изменены или удалены.

Если Вы обновили свой MySQL-сервер с версии старше, чем 4.1.2 до версии 4.1.2 или новее,и используете инфраструктуру связанных таблиц, тогда необходимо запустить SQL-скрипт, который находится в scripts/upgrade_tables_mysql_4_1_2+.sql.

Использование режимов аутентификации

При использовании "HTTP" и "cookie" режимов phpMyAdmin, рекомендуется завести пользователя (controluser), который должен обладать правами только на выборку (SELECT) из следующих таблиц: mysql.user (все столбцы за исключением "Password"), mysql.db (все столбцы), mysql.host (все столбцы) и mysql.tables_priv (все столбцы за исключением "Grantor" и "Timestamp").

GRANT USAGE ON mysql.* TO "pma"@"localhost" IDENTIFIED BY "pmapass";
GRANT SELECT (
Host, User, Select_priv, Insert_priv, Update_priv, Delete_priv,
Create_priv, Drop_priv, Reload_priv, Shutdown_priv, Process_priv,
File_priv, Grant_priv, References_priv, Index_priv, Alter_priv,
Show_db_priv, Super_priv, Create_tmp_table_priv, Lock_tables_priv,
Execute_priv, Repl_slave_priv, Repl_client_priv
) ON mysql.user TO "pma"@"localhost";
GRANT SELECT ON mysql.db TO "pma"@"localhost";
GRANT SELECT ON mysql.host TO "pma"@"localhost";
GRANT SELECT (Host, Db, User, Table_name, Table_priv, Column_priv)
ON mysql.tables_priv TO "pma"@"localhost";

Необходимо установить настройки для controluser в файле config.inc.php в следующих секциях: $cfg["Servers"][$i]["controluser"] и $cfg["Servers"][$i]["controlpass"] .

В нижеприведенном примере, в обучающих целях используются следующие значения для: "controluser" - "pma", "pmapass" - "controlpass". Но на практике используйте другие значения в своих файлах!

Разумеется, localhost в случае необходимости нужно заменить на реальное имя веб-сервера.

Если вы используете старую версию MySQL (ниже 4.0.2), замените первый запрос GRANT SELECT следующим образом:

GRANT SELECT (Host, User, Select_priv, Insert_priv, Update_priv, Delete_priv, Create_priv, Drop_priv, Reload_priv, Shutdown_priv, Process_priv, File_priv, Grant_priv, References_priv, Index_priv, Alter_priv) ON mysql.user TO "pma"@"localhost";

И если Вы хотите использовать возможности закладок и связей:

GRANT SELECT, INSERT, UPDATE, DELETE ON .* TO "pma"@"localhost";

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

  • Разумеется, пользователь должен разрешить браузеру использовать куки. Теперь это необходимое требование для всех методов аутентификации
  • В этом режиме, после прохождения первичной идентификации phpMyAdmin создает на компьютере пользователя cookie-файл, содержащий логин и пароль пользователя, который будет автоматически подставляться при следующих сеансах.
  • При использовании данного режима пользователь может завершить сеанс phpMyAdmin и авторизоваться под другим именем.
  • Если вы собираетесь проходить процедуру идентификации на произвольном сервере обратите внимание на директиву $cfg["AllowArbitraryServer"] .
  • Как указано в секции "Технические требования" , наличие PHP библиотеки mcrypt на сервере способно ускорить фазу авторизации, но наличие её не обязательно.
  • "config" - аутентификация