You need to enable JavaScript to run this app. Ubuntu 18.04上部署的SQL Server 2019无法通过SSMS远程连接的问题咨询
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu 18.04上部署的SQL Server 2019无法通过SSMS远程连接的问题咨询

可落地的排查及解决操作

1. 先核对IONOS平台层的网络放行规则

你仅在服务器内部配置防火墙规则不够,IONOS托管的服务器会在公网入口设置独立的平台级网络防火墙,这一层规则优先级远高于服务器内部配置,属于非常容易漏掉的检查项:

  • 进入IONOS服务器管理面板的防火墙配置页,确认入站规则中已放行你本地笔记本当前公网IP发起的TCP 1433、1434端口请求,不要只配置对所有IP开放的规则
  • 确认平台未开启默认丢弃所有非白名单入站流量的策略,不会把1433端口的公网请求直接拦截在主机之外

注意:IONOS的独立服务器/VPS默认策略通常只放行22端口(SSH)的公网访问,哪怕你在服务器内部把防火墙完全关闭,公网流量也到不了主机。

2. 实测服务器系统内部防火墙的实际生效状态

不要靠配置记录判断放行是否生效,直接查询当前运行的规则状态:

  • Ubuntu默认启用的ufw防火墙,执行sudo ufw status verbose查看规则,确认1433、1434的条目为允许状态,且规则绑定的是对公网开放的物理网卡,不是仅绑定回环地址
  • 若服务器用的是原生iptables规则,执行sudo iptables -L -n确认入站规则链里,1433端口没有被DROP/REJECT的条目

3. 检查SQL Server自身的远程连接开关

虽然从端口监听状态看1433已经在所有网卡上开放,但Linux版SQL Server有独立的远程连接配置开关,光端口监听不代表允许远程接入:

  • 执行sudo /opt/mssql/bin/mssql-conf check network,确认远程访问参数为开启状态(值为1)
  • 如果远程访问处于关闭状态,执行sudo /opt/mssql/bin/mssql-conf set network.rmtcpconnection 1,改完后重启mssql-server服务
  • 确认服务没有被限制仅监听回环地址,可执行sudo /opt/mssql/bin/mssql-conf set network.ipaddress 0.0.0.0让服务绑定所有可用网卡

4. 分层测试连通性,不要直接靠SSMS判断问题

完成配置后先做基础连通性测试,定位问题出在哪一层,不要上来就折腾SSMS设置:

  • 在你本地笔记本上打开PowerShell,执行Test-NetConnection 217.x.x.x -Port 1433,如果返回TcpTestSucceeded : False,说明流量在到达SQL Server进程前就被拦截了,问题在防火墙或网络链路层,和SQL Server本身配置无关
  • 如果连通性测试返回成功,但SSMS依然连接失败,可在SSMS的连接设置中勾选强制加密连接,部分运营商网络会拦截未加密的SQL Server初始握手流量
  • 排除本地网络的拦截:比如你家用/公司的路由器是否封锁了出站1433端口,可以临时切手机热点连一下SSMS测试,快速排除本地网络问题

5. 容易混淆的误判点

  • 你看到的127.0.0.1:1431是SQL Server内部本地通信的专用通道,不影响公网1433端口的正常监听
  • 1434端口是SQL Browser服务的专用端口,你直接用公网IP+1433端口连接时,不需要依赖1434的连通性,不要因为1434不通就判定连接失败

内容的提问来源于stack exchange,提问作者Sven Kabitzki

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.24 07:27:04