O MySQL não pode se conectar via túnel SSH - Conexão recusada

2

Estou tentando conectar-me ao MySQL a partir da minha GUI MySQL (Sequel Pro, se for o caso) usando o túnel SSH. No entanto, continuo recebendo o seguinte erro (mysql.log):

[Note] Aborted connection 98 to db: 'example' user: 'example_user' host: 'localhost' (Got an error reading communication packets)

As configurações da minha conexão parecem com as seguintes:

  • host SSH: example.com
  • porta SSH: 22
  • Usuário SSH: example_user
  • passagem SSH: ********
  • host do BD: 127.0.0.1
  • Usuário do banco de dados: example_user
  • Senha do banco de dados: *******
  • nome do banco de dados: exemplo
  • Porta do banco de dados: 3306

Eu posso me conectar ao SSH sem problemas. Eu também posso conectar ao MySQL de dentro do SSH (usando mysql -u example_user -p -h 127.0.0.1 )

No entanto, o tunelamento não está funcionando. Eu tenho AllowTcpForwarding yes em sshd_config. A configuração do MySQL tem bind-address = 127.0.0.1 .

Estou usando o 16.04 LTS e o MySQL Community Edition no meu servidor.

O que estou fazendo de errado? Esta é a primeira vez que vejo este problema.

    
por Gasim 19.03.2017 / 16:45

1 resposta

2

Você pode criar vários túneis via comando na estação de trabalho pelo exemplo:

ssh -L 10080:127.0.0.1:80 -L 10006:127.0.0.1:3306 user@server

Existem: 127.0.0.1 - destino do túnel de endereço IP para conexão do servidor, 80 e 3306 portas de destino, 10080 e 10006 - portas da estação de trabalho local. Isso permitirá que você se conecte ao servidor MySql e ao servidor Http através da interface localhost do servidor. Execute o comando mysql -p -u db_user -P 10006 -h 127.0.0.1 database_name na estação de trabalho para conectar-se ao servidor MySql. Você pode se conectar à interface da Web do PhpMyAdmin, que é permitida somente a partir do 127.0.0.1. Para isso, basta escrever o endereço http://127.0.0.1:10080 no seu navegador.

    
por 21.03.2017 / 14:14