答
案
UPnP是通用即插即用(Universal Plug and Play)的简写。UPnP是一种让用户不必去配置防火墙即可让网络好好工作的方法。运行在局域网内的UPnP应用程序可以在防火墙上定义它自己的NAT转换规则,以允许外界的计算机访问它。目前我们所知使用UPnP的唯一应用程序是Microsoft的MSN Messenger。
UPnP涉及安全问题 -- 在你启用UPnP之前请确信你理解它。
讨
论
我如何为UPnP来配置WinRoute防火墙?
打开Kerio管理控制台,并连接到你的防火墙。
进入Configuration中的Advanced Options。
在"Enable UPnP"前打勾。
另外请注意,根据UPnP的标准,兼容UPnP的防火墙必须允许所有的出站流量。是否这样设置防火墙由用户自己决定,但不建议在高安全要求的环境下这样设置。
为什么使用UPnP?
设计UPnP时,它期望让用户不必了解复杂网络背后的技术就能轻松使用它。UPnP期望将网络变得“即插即用”。
然而,使用UPnP的唯一成熟应用程序就只是Microsoft的MSN Messenger。
UPnP在Kerio WinRoute防火墙中干了些什么?
注意:WinRoute Firewall 5中的UPnP不能与新版的MSN Messenger协同工作。这个问题有望在WinRoute Firewall 6中得到解决。
UPnP协议本身非常,非常的复杂。花了很长时间才出现使用UPnP的产品。目前,WinRoute Firewall的UPnP支持还局限在Microsoft的MSN Messenger上,它也是所知唯一使用UPnP的成熟应用程序。
MSN Messenger与UPnP防火墙通信的两种情形:
当你启动MSN Messenger,它连接到中心MSN系统。
当需要第二条连接时,比如语音或者文件传送。
MSN Messenger“搜索”一个支持UPnP的防火墙。
WinRoute“宣告”它自己是一个支持UPnP的防火墙。
MSN Messenger与WinRoute计算机会话,请求打开一个随机的入站端口并且映射到MSN Messenger所运行的计算机上。
WinRoute打开这些端口并映射到对应的计算机上。这相当于在Traffic Policy中建立以下规则:
Source: [Internet]
Destination: Firewall host
Service: [MSN Messenger所指定打开的TCP或UDP端口]
Action: Permit (Green Check)
Translation: Detination NAT, Translate To: [MSN Messenger所运行的计算机IP地址]
WinRoute告诉MSN Messenger打开了哪些端口。
MSN Messenger“宣告”(通过防火墙)它已经可以被连接。此连接可以用来通过MSN Messenger发送文件或图片什么的,或者用来与MSN中心服务器通信(这样你就可以看到你的朋友并且与他们交谈)。
UPnP会带来安全风险吗?
既会也不会。
完整的UPnP协议允许一台局域网内的计算机不必经过系统管理员的批准就成为一台互联网服务器。这可以认为是一个安全隐患。
它还“宣告”了本地网络中可用的服务(倘若这些服务是兼容UPnP的,然而多数情况都不是)。这既可以认为是隐私问题,也是安全问题。
无论如何,与WinRoute的UPnP一同工作的程序只有MSN Messenger。如果你信任MSN Messenger,那么你就可以信任UPnP。当然,如果一个病毒伪装成MSN Messenger,它就可以做MSN Messenger能做的任何事情。
在安全第一的环境下,我们建议你禁用UPnP。