使用天翼云自己定制操作系统 通过sshd 网络转发链接mysql数据库报错问题解决

今天在使用天翼云定制的操作系统安装了mysql8.4的数据,数据库使用了公钥登录,默认密码登录被禁用了。

今天在使用天翼云定制的操作系统安装了mysql8.4的数据,数据库使用了公钥登录,默认密码登录被禁用了。

当我使用navicat 17.2.5 客户端连接的时候,点击“测试” ssh 连接通过了,当我满心换新输入mysql host地址为127.0.0.1 ,并且输入账号和密码后,再次点击测试却提示: 2013 - Lost connection to server at 'handshake: reading initial communication packet', system error: 0

报错说明ssh 隧道已经连接上了,但是ssh转发数据到mysql端口的时候报错了,通过查资料得知,sshd服务中需要开启端本地端口转发功能:

AllowTcpForwarding 要设置为:yes 这个选项对应 ssh 命令转发的 -L GatewayPorts 对应 ssh命令转发中的-R ,sshd_config 设置中还有一个选项: AllowAgentForwarding 这个是设置:

AllowAgentForwarding (SSH代理转发)

含义

  • 控制是否允许SSH认证代理转发

  • yes:允许客户端转发其SSH认证代理连接

  • no:禁止代理转发

影响

  • 当设置为no时,用户无法使用-A选项或ForwardAgent配置:

    bash
    ssh -A user@host  # 代理转发
  • 主要用于多跳SSH连接时保持认证链的场景



    本例中只要把AllowTcpForwarding 设置成yes ,然后重启下 sshd服务,navicat17连接就正常了。

  • 发表于 2025-08-06 19:34
  • 阅读 ( 12 )

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
shitian
shitian

662 篇文章

作家榜 »

  1. shitian 662 文章
  2. 石天 437 文章
  3. 每天惠23 33 文章
  4. 小A 29 文章