我正在尝试使用 Windows 10 家用电脑上的 Putty 隧道连接到 Ubuntu 18.04 服务器上的远程 MySQL 数据库。
使用 putty,我可以通过 SSH 连接到我的 Ubuntu 服务器终端。这一步没问题。然后我添加一个使用本地端口 3307 并指向远程服务器上端口 3306 的隧道。(下面的屏幕截图)。
然后,当我运行 putty 会话时,我希望可以打开数据库工具(如 DBeaver),并创建一个连接,localhost:3307
该连接将我连接到 3306 上的远程服务器的 MySQL 数据库。当我尝试此操作时,出现错误。我是否错过了关键步骤?
我知道还有其他方法可以连接到远程数据库(包括 DBeaver 中的内置 SSH 隧道,顺便说一下,它工作得很好!),但我需要使用类似 Putty 的 SSH 隧道来执行我尝试的工作流程。DBeaver 只是一个示例,它显示了与我编程的工作流程相同的错误。所以请继续支持这种思路,谢谢。
Putty 事件日志
2019-01-15 10:47:02 Connecting to 159.###.###.74 port 22
2019-01-15 10:47:02 We claim version: SSH-2.0-PuTTY_Release_0.70
2019-01-15 10:47:02 Server version: SSH-2.0-OpenSSH_7.6p1 Ubuntu-4ubuntu0.1
2019-01-15 10:47:02 Using SSH protocol version 2
2019-01-15 10:47:02 Doing ECDH key exchange with curve Curve25519 and hash SHA-256
2019-01-15 10:47:03 Server also has ecdsa-sha2-nistp256/ssh-rsa host keys, but we don't know any of them
2019-01-15 10:47:03 Host key fingerprint is:
2019-01-15 10:47:03 ssh-ed25519 256 ##:##:##:##:##:##:##:##:##:##:##:##:##:##:##:##
2019-01-15 10:47:03 Initialised AES-256 SDCTR client->server encryption
2019-01-15 10:47:03 Initialised HMAC-SHA-256 client->server MAC algorithm
2019-01-15 10:47:03 Initialised AES-256 SDCTR server->client encryption
2019-01-15 10:47:03 Initialised HMAC-SHA-256 server->client MAC algorithm
2019-01-15 10:47:10 Sent password
2019-01-15 10:47:10 Access granted
2019-01-15 10:47:10 Opening session as main channel
2019-01-15 10:47:11 Opened main channel
2019-01-15 10:47:11 Local port 3307 forwarding to 159.###.###.74:3306
2019-01-15 10:47:11 Allocated pty (ospeed 38400bps, ispeed 38400bps)
2019-01-15 10:47:11 Started a shell/command
答案1
在 putty 中,我的转发目的地应该是 127.0.0.1:3306,而不是公共 IP。我尝试使用 localhost:3306,但没有成功。它必须是 127.0.0.1,因为这是 MySQL 设置为监听的全部内容。