SSH 设置
Secure SHell (SSH) 是一个通过网络登录其他计算机的程序,在远程服务器运行命令,和从一台机器移动文件到另一台。在不安全的网络中,它提供两台主机之间强大认证和安全加密的的通讯,被称为 SSH Port Forwarding (Tunneling)。通常情况下,它是使用为一个 Telnet 的加密版本。
在一个 Telnet 阶段作业,全部的通讯,包括用户名和密码,会用纯文本传输,让任何人都能监听你的阶段作业及窃取密码或其他信息。这种阶段作业也容易受到阶段作业劫持,一旦你验证,恶意用户就能接管这种阶段作业。SSH 的目的是防止这种漏洞,并允许你在不影响安全性的情况下访问远程服务器的 shell。
注意:只限于 MySQL、Oracle、PostgreSQL、SQL Server 和 MariaDB。
请确保在 Linux 服务器的参数 -「AllowTcpForwarding」设置值为「yes」,否则,会禁用 SSH port forwarding。要查找路径:/etc/ssh/sshd_config。在默认情况下,SSH port forwarding 应该已启用。请仔细检查该值的设置。
即使服务器支持 SSH 通道,然而,如果 port forwarding 被禁用,Navicat 就无法通过 SSH 端口 22 连接。
常规选项卡
主机名或 IP 地址:127.0.0.1 or localhost
端口:默认情况下它是3306
用户名:数据库用户名
密码:数据库密码
SSH选项卡
主机名或 IP 地址:服务器IP or 主机名
SSH 服务器的端口:默认情况下它是22
用户名:服务器的用户名(不是数据库的用户名)
密码:服务器的密码
我会先点一下连接测试验证一下密码是否正确(个人习惯)
总结下来就是:
-
vi服务器端的/etc/ssh/sshd_config;
-
把PasswordAuthentication设成yes;
AllowTcpForwarding 设置 yes; -
重启ssh服务systemctl restart sshd ;
-
再试着重新用Navicat连接数据库吧!
PS:要是还连不上我也没办法了。去找其它方法一个一个试吧。祝好运!!!