网络安全

位置:IT落伍者 >> 网络安全 >> 浏览文章

如何安全的远程使用MySQL GUI工具


发布日期:2018年03月05日
 
如何安全的远程使用MySQL GUI工具

MySQL是易于使用的数据库的同义词大部分数据库驱动的网络应用都把MySQL做为首选数据库所以MySQL在很多网络服务器上都有应用尽管MySQL命令语句工具非常有用但是如果你没有熟练的掌握SQL语法工作起来就会耗费相当多的时间于是 phpMyAdmin这样的工具应运而生

MySQL开发者们自行开发出了能够连接本地或者远程MySQL数据库的GUI工具这些工具包括MySQL管理员(MySQL Administrator)MySQL Query浏览器(MySQL Query Browser)以及MySQL 工作台(MySQL Workbench)等都是相当出色的能够轻松操作和创建MySQL数据库的图形化工具

使用这些工具操作远程数据库时有一个问题它们经常要求MySQL 在网络界面进行响应大部分MySQL管理员只允许MySQL对localhost或socket进行响应而拒绝远程连接这是一种非常有效的安全措施但是在这种情况下如果不施展一些手段就无法远程使用这些GUI工具在这种情况下使用ssh来暗中进行连接是一个非常不错的方法因为这样做不仅能够进行很严格的认证和加密同时还不会破坏只允许MySQL相应本地连接的规则

首先要使MySQL只响应localhost(在默认情况下MySQL只响应对连接本地socket的要求)需要调整设置让MySQL允许网络连接然后重启服务器MySQL应该只响应loopback上的连接或者本地及网络界面上的连接然后编辑发出连接要求的主机上的 ~/ssh/config文件然后插入以下内容

Host remotesql

?Hostname

?User joe

?LocalForward *: localhost:

这样就会以用户joe的身份连接到并将本地系统上端口推送到 上的端口(标准MySQL端口)请注意我们并没有将推送端口限制在本地设备的本地界面上而是针对全部界面也就是说我们能够连接到端口(假设是本地工作站的名称)除了连接本地主机端口(这点非常重要因为GUI工具将会尝试通过socket连接localhost而这是我们所不希望发生的)现在可以执行以下命令来启动连接

$ ssh f N remotesql

最后启动MySQL管理器让其使用你的信用状与端口上的进行连接如果出现访问被拒绝的错误请检查远程数据库上的许可信息为了进行正确的连接可能必须对user@localhostlocaldomain进行许可

这样就可以实现通过本地网络上的任一系统(除非防火墙的规则禁止使用本地设备)跨过互联网进行安全的连接这样就可以通过以下操作通过本地MySQL 命令语句来对远程数据库进行操作

$ mysql u root p h P

上一篇:MySQL权限提升及安全限制绕过漏洞

下一篇:MySQL的一些安全注意点