如果您使用 Windows RDP 或 Remmina,通常使用服务器的 IP(公共)或附加主机名进行登录。我想知道像团队查看器可以正常工作吗?此外,程序如何知道如何在互联网上路由该流量?
答案1
TeamViewer、LogMeIn 和任何其他允许zero config
远程桌面会话的程序都使用第三方服务器。
例如,LogMeIn 是一个类似于 TeamViewer 的程序,您可以通过它远程登录到您当前所在网络之外的计算机。您会注意到,这种类型的远程会话不需要任何外部配置。这是因为您在远程计算机上安装的软件(LogMeIn 客户端)发起向 LogMeIn 服务器发出传出请求。由于此客户端发起了请求,因此不需要在防火墙上进行端口转发。
在您的计算机上,位于 LogMeIn 计算机网络之外的人可以通过 LogMeIn 的网站远程访问此计算机。该网站接受来自远程计算机的发起请求,并保持连接处于活动状态以侦听远程会话请求。
当您运行 TeamViewer 时,您会在其代理服务器上被分配一个 ID。您与 Teamviewer ID 建立连接,TeamViewer 通过 TeamViewer 客户端建立的隧道将连接传递到目的地,然后系统会提示您输入密码,然后连接就会建立。
答案2
Teamviewer 使用端口 80 连接到中央服务器。如果连接成功,您将获得一个唯一 ID,并且服务器知道您在线。如果其他端口被阻止,则所有通信都可以通过端口 80 进行。
Teamviewer 确实允许您直接连接到 IP 地址。您必须在选项中设置它,以允许传入的 LAN 连接。这适用于本地网络,也可能适用于 WAN 网络,但您必须使端口转发正常工作,以使端口 80 连接到路由器/防火墙后面的正确计算机。这对大多数人来说都很困难,对其他大多数人来说也难以管理,所以我们使用 Teamviewer ID 方法。
我不知道这是否意味着所有流量都通过 teamviewer 服务器,但有可能。(由于它记录了所有点击和按键,这可能意味着他们可以 - 理论上 - 而且由于我们知道 PRISM 等,实际上可能也知道 - 知道您的所有登录名和密钥。)
答案3
这是该公司在其安全声明:
建立会话时,TeamViewer 会确定最佳连接类型。通过我们的主服务器握手后,70% 的情况下会通过 UDP 或 TCP 建立直接连接(即使在标准网关、NAT 和防火墙后面)。其余连接通过 TCP 或 https 隧道通过我们高度冗余的路由器网络路由。您无需打开任何端口即可使用 TeamViewer!
正如后面“加密和认证”段落中所述,即使是我们作为路由服务器的运营商,也无法读取加密的数据流量
所以:
答案4
如果没有可用的直接路径,大多数应用程序(例如 TeamViewer)都会通过其服务器进行路由,从而无需使用公共 IP 和开放端口。