通过SSH隧道安全连接远程MySQL数据库端口的操作方法

 更新时间:2026年05月20日 09:07:48   作者:茶猫云呀  
这篇文章给大家介绍通过SSH隧道安全连接远程MySQL数据库端口的操作方法,本文给大家介绍的非常详细,感兴趣的朋友一起看看吧

最稳妥的做法是通过 SSH 隧道将远程数据库端口映射到本地,避免直接把 MySQL 端口暴露在公网上,适合运维管理或远程开发场景。

先说结论:SSH 隧道能加密传输流量并利用 SSH 认证机制,比直接开放 3306 端口更安全。

  • 适合:需要远程管理数据库但不想开放数据库端口的场景
  • 先准备:确保拥有远程服务器的 SSH 登录权限和密钥
  • 验收:本地客户端能成功连接映射后的本地端口且数据查询正常

命令速用版

在本地终端执行以下命令,将远程服务器的 3306 端口映射到本地的 3307 端口:

ssh -L 3307:127.0.0.1:3306 -N -f user@remote_host

其中 user 是远程服务器登录用户,remote_host 是服务器 IP 或域名。完成后,本地连接 127.0.0.1:3307 即等同于连接远程数据库。

为什么会这样

MySQL 默认通信协议在未配置 SSL 的情况下是明文的,直接暴露 3306 端口容易受到中间人攻击或暴力破解。SSH 隧道利用已有的 SSH 加密通道转发数据,既不需要额外配置数据库 SSL 证书,又能复用服务器的 SSH 防火墙策略,实现网络层面的隔离。

分步处理

第一步:确认 SSH 连通性先确保本地能通过 SSH 登录远程服务器,建议使用密钥认证而非密码,减少被爆破风险。如果尚未配置密钥,可使用 ssh-keygen 生成并通过 ssh-copy-id 上传。

第二步:建立隧道执行上述速用版命令。参数 -N 表示不执行远程命令,-f 表示后台运行。如果需要保持连接活跃,可在 SSH 配置中开启 ServerAliveInterval

第三步:配置数据库客户端在 Navicat、DBeaver 或命令行中,主机填 127.0.0.1,端口填 3307,用户名和密码填写数据库本身的凭证,而非 SSH 凭证。

怎么验证是否生效

在本地终端使用 MySQL 客户端尝试连接:

mysql -h 127.0.0.1 -P 3307 -u db_user -p

连接成功后,执行 SELECT 1; 确认数据交互正常。同时可以在远程服务器上执行 SHOW PROCESSLIST;,能看到来自 localhost 的连接请求,说明隧道转发正确。

常见坑

1. 数据库用户权限限制MySQL 用户表中的 host 字段必须允许来自 SSH 服务器本地的连接。通常设置为 localhost 或 127.0.0.1 即可,因为对数据库而言,连接确实来自服务器本机。如果设置为特定 IP,可能会拒绝连接。

2. 隧道断开导致连接失效SSH 会话超时会导致隧道关闭。建议在 SSH 配置文件 ~/.ssh/config 中增加保活设置,或使用 autossh 工具自动维护隧道连接。

3. 本地端口被占用如果本地 3307 端口已被占用,命令会执行失败。可更换为其他高位端口,如 33070,并在客户端相应修改配置。

到此这篇关于通过SSH隧道安全连接远程MySQL数据库端口的操作方法的文章就介绍到这了,更多相关ssh隧道安全连接远程mysql内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Centos6.9安装Mysql5.7.18步骤记录

    Centos6.9安装Mysql5.7.18步骤记录

    本文给大家详细介绍了Centos6.9安装Mysql5.7.18的步骤,非常不错,具有参考借鉴价值,需要的朋友参考下吧
    2017-06-06
  • MySql 5.7.14 解压版安装步骤详解

    MySql 5.7.14 解压版安装步骤详解

    本文给大家介绍MySql 5.7.14 解压版安装步骤详解,本文介绍的非常详细,具有参考借鉴价值,感兴趣的朋友一起看下吧
    2016-08-08
  • VS2019连接mysql8.0数据库的教程图文详解

    VS2019连接mysql8.0数据库的教程图文详解

    这篇文章主要介绍了VS2019连接mysql8.0数据库的教程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-05-05
  • MySQL主从复制问题总结及排查过程

    MySQL主从复制问题总结及排查过程

    这篇文章主要介绍了MySQL主从复制问题总结及排查过程,mysql主从是常用的高可用架构之一,也是使用最广泛的的系统架构。在生产环境中mysql主从复制有时会出现复制错误问题。下文更多内容需要的小伙伴可以参考一下
    2022-03-03
  • MySQL中字符串函数详细介绍

    MySQL中字符串函数详细介绍

    通常以串的整体作为操作对象,如:在串中查找某个子串、求取一个子串、在串的某个位置上插入一个子串以及删除一个子串等。
    2011-05-05
  • Mysql数据库的QPS和TPS的意义和计算方法

    Mysql数据库的QPS和TPS的意义和计算方法

    今天小编就为大家分享一篇关于Mysql数据库的QPS和TPS的意义和计算方法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-03-03
  • MySQL性能突然下降的原因

    MySQL性能突然下降的原因

    这篇文章主要介绍了MySQL性能突然下降的原因,帮助大家更好的了解和维护数据库,感兴趣的朋友可以了解下
    2020-10-10
  • MySQL索引与视图详解

    MySQL索引与视图详解

    MySQL中的索引类似于书籍的目录,用于提高数据查询效率,视图是一种虚拟表,可以提高数据的安全性,并简化查询语句,索引可以提高查询效率,但会占用磁盘空间,视图可以保障数据的安全性,隐藏底层列名,并提供逻辑数据独立性,感兴趣的朋友跟随小编一起看看吧
    2025-12-12
  • MySQL表类型 存储引擎 的选择

    MySQL表类型 存储引擎 的选择

    这篇文章主要介绍了MySQL表类型存储引擎的选择,文章围绕MySQL表类型存储引擎的选择的相关资料展开内容,需要的朋友可以参考一下,希望对你有所帮助
    2021-11-11
  • Mysql数据库索引面试题(程序员基础技能)

    Mysql数据库索引面试题(程序员基础技能)

    索引是Mysql的一块硬骨头,但是对于程序猿来说又是十分重要的基础技能。本文将从索引原理、索引设计原则方面阐述Mysql索引,相信通过本文的学习你将完美征服阿里面试官
    2021-05-05

最新评论