kann keine Verbindung zu MySQL auf AWS über SSH-Tunnel herstellen

kann keine Verbindung zu MySQL auf AWS über SSH-Tunnel herstellen

Ich versuche, dieAufgabeAWS-Debugging auf Rubymine in kleinere Teile aufzuteilen. Ich möchte eine Verbindung zum MySQL-Server herstellen, der auf AWS läuft. Also habe ich Folgendes getan:

Erste:Richten Sie einen SSH-Tunnel ein, um alle Localhost-Anfragen an Port 3307 an Port 3306 auf AWS weiterzuleiten:

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

zweite:Verbindung zu MySQL über Port 3307 herstellen

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

Problem: es schlägt auf meinem Hostcomputer mit dem folgenden Fehler fehl:

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

und das Protokoll auf AWS gibt Folgendes aus:

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

Anmerkungen:

  • Ich habe sichergestellt, dass die Sicherheitsgruppe des AWS-Servers, mit dem ich mich verbinde, sshVerbindungen über Port 22 zulässt
  • Ich habe sichergestellt, dass /etc/hosts.denyauf AWS weder localhost noch 127.0.0.1 aufgeführt sind.

Ideen?

Antwort1

Die Fehlermeldung

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

kommt von MySQL. Um dem Benutzer root den Fernzugriff zu ermöglichen, müssen Sie dies speziell für die jeweilige Datenbank auf dem MySQL-Server zulassen.

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

Dadurch kann der Benutzername „root“ von 178.135.138.61 aus mit allen Berechtigungen für eine Datenbank eine Verbindung zu MySQL herstellen.

Lesen Sie sich am besten dieMySQL-Sicherheitsdokumentationinsbesondere dieZugangskontrolleUndBenutzerverwaltungKapitel.

verwandte Informationen