Stivinov Опубликовано 22 апреля, 2018 Жалоба Поделиться Опубликовано 22 апреля, 2018 (изменено) Пару дней назад я столкнулся с проблемой, которую решал сутки! (по причине того, что я ещё зелёный - это моё оправдание ахах) Я пытался подключить сайт с одного хостинга к базе данных другого! Но это не работало! Вот решение этой проблемы: p/s Я не знаю, с точки зрения безопасности, верное ли это) Возможно,кому то будет полезным По умолчанию MySql настроен таким образом, что к нему разрешены подключения только с локальной машины, следовательно, подключиться из-вне (по интернет или локальной сети) не получится. Чтобы настроить удаленный доступ к MySql (настройка производится на операционной системе Ubuntu Linux и может отличаться для других ОС) необходимо отредактировать файл с настройками (конфигурационный файл). Обычно он располагается по пути /etc/mysql и называется my.cnf, хотя бывают и другие настройки. Чтобы отредактировать файл с настройками MySql необходимо выполнить следующую команду: sudo nano /etc/mysql/my.cnf Если файл с настройками находится по пути /etc/mysql/mysql.conf.d/ и называется mysqld.cnf, тогда так: sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf Далее необходимо найти такую строку в открытом файле: bind-address = 127.0.0.1 В данной строке указывается, с каких адресов разрешено подключение к MySql, в данном случае только с адреса 127.0.0.1, то есть с локальной машины (127.0.0.1 = localhost). Для того, чтобы открыть доступ к нужному IP, его нужно прописать вместо 127.0.0.1. Если необходим доступ с любого адреса, то написать как показано ниже. bind-address = 0.0.0.0 После замены настроет bind-address MySql, его необходимо перезапустить: sudo service mysql restart Или так: /etc/init.d/mysql restart Теперь нужной подключиться к MySql с паролем суперпользователя: sudo mysql -p После подключения к MySql нужно создать пользователя и дать привилегию, например: mysql> GRANT ALL PRIVILEGES ON userdatabase.* TO 'user'@'192.168.0.10' IDENTIFIED BY 'password'; В данном случае дается полный доступ к базе данных userdatabase пользователю с логином user и паролем password, подключающемуся с IP 192.168.0.10. Если необходимо разрешить доступ ко всем базам, то вместо имени базы данных пишется знак *, если необходимо разрешить доступ с любого IP, то вместо IP адреса пишется знак %. Ниже представлен пример, разрешающий пользователю user полный доступ ко всем базам данных с любого IP. mysql> GRANT ALL PRIVILEGES ON *.* TO 'user'@'%' IDENTIFIED BY 'password'; Данная инсрукция справедлива и для других linux дистрибутивах, основанных на debian. Изменено 22 апреля, 2018 пользователем Stivinov Ссылка на комментарий Поделиться на другие сайты Поделиться
Kubix! Опубликовано 22 апреля, 2018 Жалоба Поделиться Опубликовано 22 апреля, 2018 А мог просто закомментить bind-address. Цитата Вот решение этой проблемы:p/s Я не знаю, с точки зрения безопасности, верное ли это) Возможно,кому то будет полезным Если на твою впску могут подключиться удаленно, то это уже не особо безопасно )) 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Bahamut Опубликовано 22 апреля, 2018 Жалоба Поделиться Опубликовано 22 апреля, 2018 (изменено) 3 часа назад, Stivinov сказал: Если необходим доступ с любого адреса, то написать как показано ниже. bind-address = 0.0.0.0 Можно было просто закомментить. С версии 5.5 можно добавить вторую строчку bind-address со вторым IP, с которого ты подключаешься, если верить докам. Я бы воспользовался именно вторым способом. =) Изменено 22 апреля, 2018 пользователем Bahamut 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Habilis Опубликовано 23 апреля, 2018 Жалоба Поделиться Опубликовано 23 апреля, 2018 (изменено) воабще соединения между сайтами так себе темка Конструкции типа GRANT ALL PRIVILEGES удаленному пользователю, не советую давать. Воабще, все привелегии кроме как админу базы данных лучше не давать. Хабиля как-то писал про сообщение между сайтами когда хотел захостить сайт с регистрацией на Фри хостинге а база с сервером на ВПС Работает так что СКЛ пользователь который прописан в конфиге сайта, имеет права ТОЛЬКО на чтение в СКЛ представление vw_players (nickname, level, zenny,) - отоьбражет данные в рейтинге на сайте и на воспроизведение отложеных процедур sp_register sp_passrestore Как уже описывалось, если фри хостинг будет взломан Какеры не смогут делать то что-бы делал Хабиля .... рисовать МВП карты и барыжить ими и затирать логи. или, сделать выборку: логин, пассворд ГДЕ админлевел=100 и потом брутить (или не брутить ЛЕЛ) пароли админов, не получиться. Все что какеры смогут, это Сделать выборку по информации и так доступной на сайте. и зарегистрировать нового игрока или сбросить пароль зная логин и проверочный токен высылаемый на Е-мейл .... Делайте правильно, и не позволяйте ШколоКакерам вроде Хабили барыжить рисоваными МВП картами у вас на сервере... Изменено 23 апреля, 2018 пользователем Habilis Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения