美文网首页从零开始玩转大数据我用 Linux程序员
手把手教你用Navicat SSH安全连接MySQL

手把手教你用Navicat SSH安全连接MySQL

作者: 繁著 | 来源:发表于2017-01-17 12:38 被阅读1066次

Secure Shell(缩写为SSH),由IETF的网络工作小组(Network Working Group)所制定;SSH为一项创建在应用层和传输层基础上的安全协议,为计算机上的Shell(壳层)提供安全的传输和使用环境。
传统的网络服务程序,如rsh、FTP、POP和Telnet其本质上都是不安全的;因为它们在网络上用明文传送数据、用户帐号和用户口令,很容易受到中间人(man-in-the-middle)攻击方式的攻击。就是存在另一个人或者一台机器冒充真正的服务器接收用户传给服务器的数据,然后再冒充用户把数据传给真正的服务器。
而SSH是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用SSH协议可以有效防止远程管理过程中的信息泄露问题。通过SSH可以对所有传输的数据进行加密,也能够防止DNS欺骗和IP欺骗。
SSH之另一项优点为其传输的数据可以是经过压缩的,所以可以加快传输的速度。SSH有很多功能,它既可以代替Telnet,又可以为FTP、POP、甚至为PPP提供一个安全的“通道”。

Navicat 通过ssh连接MySQL数据库,不用对外开放数据库端口(默认3306),也不用另外创建一个允许外部网络连接用户,可以大大提高安全性,当然,前提你是的服务器要开启ssh服务。下文以Mac版的Navicat为例,手把手教你通过SSH连接数据库。(windows版本类似)

1.  新建一个连接,选择SSH标签,设置SSH登录的信息,如下界面:

SSH设置
2.  回到General设置数据库登录信息:
数据库信息设置
3.  测试通过后,点击OK即可。

相关文章

网友评论

  • 06225f9aede0:你这个设置的是先用ssh连接到mysql服务所在的服务器上,再连接到它(localhost) 的3306也就是mysql端口,我试过了,假设我本机为A,如果mysql设置了 A可访问,则能用mysql客户端连接上。如果是在另一台主机B操作,则连接失败。 其实根本解决不了什么问题。 那你在A上直接连就行了,根本不需要通过ssh。 正确的姿势是: mysql 服务器假设为S,设置了A可访问,B不能访问,这个时候需要 B 通过 ssh通道连接到A,然后就能(才能)访问S了, A 相当于跳板机,但你这里根本没有三个主机,只有两个主机,所以,我们说的是同一个事情吗。
    繁著:我只是为了用一个可视化的界面连接到远程服务器的数据库上,图个方便看数据,出发点和需求可能跟你不一样,谢谢。
  • bboysoul:这是本地连接数据库,不是远程吧,应该是ssh到服务器然后连接数据库吧
    繁著:@bboysoul 但从我本地的电脑连过去不是远程?
    bboysoul: @繁著 不是呀,对于数据库来说就是本地访问呀
    繁著:@bboysoul ssh访问服务器的数据库,虽然是服务器的本地数据库,但相对于客户端不也是远程。。

本文标题:手把手教你用Navicat SSH安全连接MySQL

本文链接:https://www.haomeiwen.com/subject/zaembttx.html