通过 SSH Tunnel 接入自建 MySQL 数据源(Linux)
前提条件
环境说明
如果您使用 Windows 系统,请参见通过 SSH Tunnel 接入自建 MySQL 数据源(Windows)。
操作步骤
常见问题
问:为什么我配置完 SSH Tunnel 后单击连接测试,提示 SSH 用户名或密钥不正确?
-
目标数据源所在服务器中已安装并开启了 SSH 服务。 -
目标数据源所在服务器的 SSH 配置文件(sshd_config)参数如下: 提示 sshd_config 文件路径通常为 /etc/ssh/sshd_config,文件修改方法:vim /etc/ssh/sshd_config。 -
AllowTcpForwarding yes -
PubkeyAuthentication yes -
AuthorizedKeysFile .ssh/authorized_keys
-
数据源服务器版本:Linux version 4.4.180+ -
SSH 版本:OpenSSH_8.2p1 -
数据源:MySQL 8.0 自建数据源
-
登录 NineData 控制台。 -
在左侧导航栏,单击数据源管理>数据源。 -
单击页面右上角的创建数据源,在创建数据源页面,根据下表配置参数。 
-
单击创建数据源,完成数据源的添加。
-
执行 ssh-keygen -f <密钥文件名> 命令生成密钥文件,系统提示 Enter passphrase (empty for no passphrase): 时,您可以选择为该密钥文件设置密码(输入密码并按回车键)或不设置密码(直接按回车键)。 提示 该命令会生成如下两个文件: -
<密钥文件名>:私钥,用于验证登录者身份。 -
<密钥文件名>.pub:公钥,安装在服务器,用于配对登录者提供的私钥。
-
-
输入 cat <密钥文件名>.pub >> ~/.ssh/authorized_keys 命令将公钥内容添加到 authorized_keys 文件的末尾。 提示 authorized_keys 文件的权限必须小于等于 600,即 -rw-------(仅文件属主可读写),否则可能导致连接失败。您可以在 ~/.ssh/ 目录执行 ll 或 ls -l 命令查看该文件的权限,如果权限未达到要求,可以执行 chmod 600 authorized_keys 修改该文件权限。
-
您登录主机用的用户名或密码不正确。 -
如果您使用密钥认证,请确保 authorized_keys 文件的权限小于等于 600,您可以执行 chmod 600 ~/.ssh/authorized_key 命令变更该文件的权限。
-
