Назад | Перейти на главную страницу

не удается подключиться к mysql на AWS через туннель ssh

Я пытаюсь сломать задача выполнения отладки AWS на rubymine на более мелкие фрагменты. Я хотел бы подключиться к серверу mysql, работающему на AWS. Итак, я сделал следующее:

первый: Установите туннель ssh для пересылки всех запросов localhost с порта 3307 на порт 3306 на AWS:

ssh -l ubuntu -i 'path/to/private/key/privateKey.cer' -L 3307:aws.port:3306 aws.port -N -v -v

второй: подключиться к mysql через порт 3307

mysql -h 127.0.0.1 -P 3307 -u root -p 

проблема: на моем хост-компьютере происходит сбой со следующей ошибкой:

ERROR 1130 (HY000): Host '178.135.138.61' is not allowed to connect to this MySQL server

и журнал на AWS выводит это:

debug1: Connection to port 3307 forwarding to 54.193.1.19 port 3306 requested.
debug2: fd 7 setting TCP_NODELAY
debug1: channel 2: new [direct-tcpip]
channel 2: open failed: connect failed: Connection refused
debug2: channel 2: zombie
debug2: channel 2: garbage collecting
debug1: channel 2: free: direct-tcpip: listening port 3307 for 54.193.1.19 port 3306, connect from 127.0.0.1 port 64938, nchannels 3

ноты:

идеи?

Сообщение об ошибке

ERROR 1130 (HY000): Host '178.135.138.61' is not allowed to connect to this MySQL server

исходит из MySQL. Чтобы разрешить удаленный доступ для пользователя root, вам необходимо специально разрешить это для конкретной базы данных на сервере mysql.

mysql -u root -p
mysql> grant all privileges on somedatabase.* to 'root'@'178.135.138.61' identified by 'somepassword';
mysql> flush privileges;

Это позволит пользователю root подключиться к mysql из 178.135.138.61 со всеми привилегиями в некоторой базе данных.

Вам, вероятно, следует прочитать Документация по безопасности MySQL в частности Контроль доступа и Управление пользователями главы.