Windows 防火墙将根据隧道数据检查哪个角色?

Which role will the Windows firewall check against the tunneled data?

通过 运行 将 SSH 隧道连接到 windows 远程服务器连接,如以下链接所述-

http://www.tech-recipes.com/rx/6194/windows-xp-vista-win7-setup-a-secure-remote-desktop-tunnel-connection-with-ssh-copssh-and-putty/

http://klinkner.net/~srk/techTips/ssh-remote/

通过在客户端的远程连接程序中键入 localhost:3390,并假设我有从 local 3390 到服务器 1.1.1.1:3389 的隧道(1.1.1.1 是服务器)我 运行 服务器端口 22(以及客户端 ssh 端口 22)上的 sshd 进程(带隧道),服务器的防火墙将检查哪些规则?

到达sshd进程的数据包的22端口规则? 3389端口用于数据到达服务器的远程连接过程?两个?

如果防火墙将根据端口 22 的规则检查数据,我可以禁用允许传入数据到服务器端口 3389 的角色,即不允许常规远程桌面连接,因此只允许 SSH 隧道连接,这是我的全部意图。

首先,这不完全是 "tunnel"。 SSH 手册将其称为 "port forward",这是一种模式准确描述,因为它处理单个 TCP 端口。

其次,转发有正向(-L)和反向(-R)两种。从您链接到的文章中,您指的是前者。

在像-L 3390:localhost:3389这样的正向端口转发上,将有exatly 一个新的open端口(除了通常的SSH端口在服务器上监听 - 通常是 22) - 这是客户端的 端口 3390

正在发生并且您的防火墙需要允许的连接是:

  • SSH 客户端连接到(默认)端口 22 上的 SSH 服务器
  • SSH 服务器连接到服务器本身的端口 3389

SSH 不(不能)关心服务器上的端口 3389。由另一个进程来打开它。

如果您注意到 localhost 部分是 从服务器 的角度来看,并且您可以指定服务器可以访问的任何其他主机,这将变得更加清楚.