无法连接到远程 MySQL 服务器

无法连接到远程 MySQL 服务器

我传统上使用 SSH 隧道连接远程 MySQL 服务器。但是,我启用了到从属实例的复制,因此尝试从特定外部 IP 地址直接连接到端口 3306。

我已将 MySQL 设置为绑定到主机上的所有地址,并通过 netstat 验证了这一点,并且还通过使用公共 IP 而不是 localhost 或 127.0.0.1 本地连接到它来验证了这一点。我还在防火墙上 (使用 ufw) 为端口 3306/tcp 戳了漏洞,以获取感兴趣的特定远程 IP 地址 (在ufw status verbose下面的输出中替换为 1.2.3.4)。

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 还报告了以下内容:

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

但是,尝试从这些地址连接它时总是超时。当我尝试连接时,ufw、syslog、内核或 mysql 错误日志文件中没有出现任何内容,所以我现在很困惑。我错过了什么?

答案1

事实证明我做的一切都是正确的。我遗漏了托管服务提供商强加给我的 VPS 上的云防火墙。幸运的是,我可以通过他们提供的云控制面板来控制它,所以我能够将端口 3306 添加到其中,一切就绪了。

相关内容