从远程机器连接到 NAT 后面的 SQL Server

孔夫子*_*孔夫子 6 sql-server remote

这种情况是,这是一个位于企业防火墙后面的 SQL Server,您的标准设置只允许最少的出站流量和零入站流量。但是,根据通常的允许,端口 80/443 是开放的。

有没有人试过,或者有没有可能

  1. 使用 Telnet 连接到远程机器端口 80。
  2. 在本地机器上,注意绑定地址和端口[1],例如netstat
  3. 断开与 telnet 的连接。启动端口转发器并监听[1],映射到 SQL Server TCP/IP 监听器
  4. 在远程计算机上,连接到 SQL Server [1]

你怎么认为?我只需要完成一些测试,我不想一次性将庞大的数据库移到外面。我熟悉并使用UDP打洞进行NAT穿越,主要用于推送到手机,但我有兴趣知道这是否也适用于TCP。

参考:

我愿意接受其他建议。

网络拓扑结构

Ali*_*ghi 0

这听起来基本上就像一个反向代理。我遇到的情况是,为了将 SQL Server 迁移到 24/7 环境中的不同数据中心,我几乎必须实施此操作,但我们使用了另一种方法。在与网络和运营团队的讨论中,这应该是可能的,但我自己没有明确地测试它来告诉你我的结果。

就 SQLOL 而言,SQL Server 需要获取分配给它的端口号上的请求,所以我不明白为什么不这样做,并且有一篇关于这样做的文章,重点介绍了 TechRepublic 发现的避免 SQL 注入的好处这里

基本上,它介绍了 SQL Server 注入攻击的频率/严重性,以及反向代理如何首先将请求从 Web 客户端转发到该设备,然后该设备在清理请求后将请求发送回。在他们的拓扑图中,他们让反向代理盒再次访问 Web 服务器,然后将其转到 SQL Server,在这种情况下,我们最有可能让它直接连接到 SQL Server。

除非我完全误解了你的问题,否则应该可以解决它。您连接到端口 80 上的反向代理,代理然后将您的请求转发到指定端口(默认端口 1433)上的 SQL Server。