2015-10-19 3 views
0

Я новичок в создании баз данных, и я установил EasyPHP (e-devserver 14.1 VC9), которому удалось назначить пароль для пользователя «127.0.0.1» пользователя root через phpMyAdmin, потому что он сказал, что оставить пароль пустым - плохая идея. Я редактировал «localhost» на тот же пароль. Это дало мне ошибку 1045, которую так много других получили люди, удалось найти файл конфигурации и отредактировать ее, как сказал this link. Однако IPv6 (хост :: 1) по-прежнему не имеет пароля, и, хотя я могу редактировать его в phpMyAdmin, если я получу еще одну ошибку, я не нашел документации о том, где ее редактировать.Нужен ли пароль root IPv6/:: 1 в phpMyAdmin?

Будет ли этот адрес уязвимым без пароля, и если да, то каким образом я могу назначить его без ошибки?

+0

Изменен пароль без проблем, я, похоже, могу получить доступ к phpMyAdmin просто отлично. Может быть, я должен задать новый вопрос для этого, но если я собираюсь сделать учетную запись администратора и не хочу использовать учетные записи root, какие разрешения я должен им предоставить? – gpii

+0

Обычно вы хотите оставить 1 учетную запись root доступной для восстановления и управления учетными записями. В реальной среде каждая последующая учетная запись должна иметь ограниченные разрешения для доступа к базам данных, которые они предназначены для использования (не иметь возможности создавать базы данных, получать доступ к базам данных других пользователей или создавать пользователей и предоставлять привилегии). Это и есть учетная запись root. – drew010

ответ

0

Если кто-то имел прямой доступ к серверу, они могут попытаться подключиться к MySQL через IPv6 с помощью следующей команды: mysql -h ::1 -u root -p

Если был привилегированного пользователя MySQL 'root'@'::1' без пароля, то они могли бы получить доступ.

Если им удалось загрузить скрипт PHP на ваш сервер, настроенный для подключения через IPv6 с использованием (PDO, mysqli и т. Д.), Они могли бы подключить скрипт.

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

select user, host from mysql.user; 

Если вы видите что-либо в списке, как root | ::1 или любой другой адрес IPv6, может быть пользователями настроены с IPv6 хост-доступ.

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

SET PASSWORD FOR 'root'@'::1' = PASSWORD('cleartext password'); 

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

CREATE USER 'root'@'::1' IDENTIFIED BY 'cleartext password'; 

Вам тогда понадобится grant соответствующие привилегии для этой учетной записи.

Смежные вопросы