Não é possível conectar ao servidor MySQL remoto

0

Eu tradicionalmente usei o tunelamento SSH para conectar ao meu servidor MySQL remoto. No entanto, estou habilitando a replicação para uma instância de escravo e, portanto, estou tentando obter conexões diretas para a porta 3306 trabalhando a partir de endereços IP externos específicos.

Eu configurei o MySQL para ligar a todos os endereços no host e verifiquei este trabalho via netstat e também conectando-o localmente usando o IP público em vez de localhost ou 127.0.0.1. Eu também coloquei buracos no firewall (usando ufw) para a porta 3306 / tcp para os endereços IP remotos específicos de interesse (substituídos por 1.2.3.4 na saída ufw status verbose abaixo).

To                         Action      From
--                         ------      ----
80,443/tcp (Nginx Full)    ALLOW IN    Anywhere
25/tcp                     ALLOW IN    Anywhere
143                        ALLOW IN    Anywhere
110                        ALLOW IN    Anywhere
993/tcp (Dovecot Secure IMAP) ALLOW IN    Anywhere
995/tcp (Dovecot Secure POP3) ALLOW IN    Anywhere
25/tcp (Postfix)           ALLOW IN    Anywhere
465/tcp (Postfix SMTPS)    ALLOW IN    Anywhere
22                         ALLOW IN    Anywhere
3306/tcp                   ALLOW IN    1.2.3.4
80,443/tcp (Nginx Full (v6)) ALLOW IN    Anywhere (v6)
25/tcp (v6)                ALLOW IN    Anywhere (v6)
143 (v6)                   ALLOW IN    Anywhere (v6)
110 (v6)                   ALLOW IN    Anywhere (v6)
993/tcp (Dovecot Secure IMAP (v6)) ALLOW IN    Anywhere (v6)
995/tcp (Dovecot Secure POP3 (v6)) ALLOW IN    Anywhere (v6)
25/tcp (Postfix (v6))      ALLOW IN    Anywhere (v6)
465/tcp (Postfix SMTPS (v6)) ALLOW IN    Anywhere (v6)
22 (v6)                    ALLOW IN    Anywhere (v6)

iptables também relata o seguinte:

# iptables -S | grep 3306
-A ufw-user-input -s 1.2.3.4/32 -p tcp -m tcp --dport 3306 -j ACCEPT

No entanto, as tentativas de conectar-se a eles a partir desses endereços estão acabando com o tempo limite. Nada aparece nos arquivos de log de erros ufw, syslog, kernel ou mysql quando tento conectar, então estou perplexo neste momento. O que eu perdi?

    
por John Rix 02.05.2018 / 02:55

1 resposta

0

Acontece que eu fiz tudo corretamente. O que eu perdi foi o firewall de nuvem no topo do meu VPS, imposto pelo meu provedor de hospedagem. Felizmente, eu tenho controle sobre isso através do painel de controle de nuvem que eles fornecem, então eu consegui adicionar a porta 3306 e tudo se encaixou.

    
por John Rix 03.05.2018 / 00:37