Восстановление / Установка пароля в WordPress через SQL

Предположим, Вы забыли пароль для входа в админ панель WordPress.
Или получили сайт от предыдущего владельца и не поинтересовались паролем админа, — это про меня ))
Что делать?
Решение в данном случае достаточно простое.

Идеально, если у Вас есть полный доступ к вашему серверу через ssh.
Я опишу решение именно для такого варианта. Но и это не обязательно.
Тоже самое можно сделать и через PhpMyAdmin или Cpanel.
Главное, чтобы вы имели возможность доступа к базе данных вашего wordpress сайта и могли выполнять SQL запросы.

И так, приступим..

* Рекомендую сделать полный бэкап сайта, перед работой с БД WordPress. Опытные пользователи могут пропустить этот пункт.

1. Коннектимся через putty к серверу.
2. Подключаемся к MySql

# mysql -uUserName -pMysqlUserPass
, где UserName — логин доступа к mysql
MysqlUserPass — пароль доступа к mysql

3. Выбираем Базу Данных нашего сайта, с которой и будем работать дальше.
В коммандной строке mysql:

> use wordpress_db
,где wordpress_db — имя базы нашего wordpress сайта.

4. Устанавливаем пароль для пользователя

> UPDATE wp_users SET user_pass = MD5(‘adminpass’) WHERE user_login = ‘admin’;
, adminpass — наш новый пароль админа.
, admin — user правами админа.

5. Если мы не уверены, что логин администратора admin, лучше убедиться в этом взглянув на таблицу wp_users и wp_usermeta.
> select * from wp_usermeta;

Перед нами таблица wp_usermeta с детальным описанием всех пользователей.
Ищем пользователя с установленным полем wp_capabilities в права «administrator»

Определяем логин админа WordPresss - таблица wp_usermeta

Второй столбец таблицы отображает ID пользователя — в нашем случае ID =70.
Теперь посмотрим какой логин у пользователя с ID=70. Нам надо взглянуть на таблицу wp_users.

> select * from wp_users;

Ищем пользователя с ID=70 и смотрим его логин в поле user_login.
Так мы получили логин администратора WordPress.
Теперь можно спокойно подкорректировать пунк 4, где мы устанавливали пароль пользователя.

Рекомендую не использовать стандартный логин «admin» для доступак к вашим сайтам, а заменить его на уникальный.
Это дополнительно обезопасит Вас от атаки «подбор пароля».
А также настроить .htaccess для ограничение доступа к WordPress админ панели на фиксированный IP.

В дальнейшем мы подумаем как защитить наш любимый сайт от атак типа «SQL-инъекция» и «XSS-уязвимость».
И проанализируем последние 0-day для wordpress. Пока что руки просто не дошли.

На этом все. Теперь можно логиниться в wordpress по нашему новому паролю.

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

C WordPress проблема с паролем решена!
А как же быть с DLE, Joomla, Drupal, Bitrix и другими CMS?

Их мы рассмотрим в следующих публикациях.

Возможно, Вам будут интересны матрасы в николаеве на сайте eShopes.com