无法通过防火墙从 Linux 连接到 SQL Server

无法通过防火墙从 Linux 连接到 SQL Server

我需要从 Debian GNU/Linux 网络服务器连接到托管在组织本地网络内的 Windows 机器上的 SQL Server 数据库。

数据库服务器的负责人和防火墙的负责人都说他们已经设置好一切,以便我可以连接:数据库服务器允许传入连接,防火墙允许传入连接并启用端口转发(1433 TCP 和 1434 UDP)。他们已经允许了 Web 服务器的 IP,但我仍然无法连接到数据库。我甚至无法使用 telnet 或 nc 发起到端口 1433 的 TCP 连接。我已经在防火墙上运行了 nmap,但它没有报告这些端口为打开。为了进行测试,管理数据库机器的人员已要求管理防火墙的人员允许他自己的 IP,这样他就可以正常连接。我还要求 Web 服务器托管公司检查到这些端口的传出连接,他们明确允许了。

我是否正确地认为,在寻找 FreeTDS 的问题之前,我应该能够与端口 1433 建立原始 TCP 连接?

SQL Server 在其网络实现上是否可能做了一些不寻常的事情,并且我使用 telnet、nmap 或 nc 的测试在这种情况下不相关?

nmap 是否有可能没有将端口报告为打开但实际上却是打开的?

答案1

对于我来说,telnet 一直是连接方面的警示灯。您说得对,您应该能够 telnet 到该端口。您无法从那里做太多事情,但这至少可以告诉您所有移动部件是否都已准备就绪,以便您能够通过该端口进行通信。祝您好运!

答案2

如果有人可以通过端口 1433 使用本机 SQL Server 工具进行连接(如果您使用的是命名实例,则只需要 UDP 1434),而您无法从 Linux 服务器进行连接,则说明存在防火墙。我一直使用 telnet 来验证连接性。

相关内容