UPnP 是一套网络协议,其主要设计目的是让同一本地网络中的设备能够自动发现并相互连接。对于非技术用户来说,这听起来像是梦想,而且在许多方面,确实如此。
毕竟,在当今这个高度互联的世界中,便捷为王。从轻松连接互联网的游戏主机,到开箱即”用”的智能电视和IoT 设备(新窗口)——现代网络的设计宗旨就是尽量减少用户的操作。而通用即插即用(UPnP)正是让这一切无缝连接悄然成为可能的技术之一。
但是,UPnP 也常被用于配置路由器上的端口转发,让互联网上的设备能够访问您的局域网(LAN)中的资源。这一点(连同我们稍后将讨论的其他安全漏洞)意味着,最好将 UPnP 完全停用。
本文将介绍以下内容:
UPnP 是什么?
顾名思义,UPnP 的主要目标是让联网设备”即插即用”。换句话说,当您将设备连接到网络时,它应该直接就能使用,无需深入研究路由器的设置、打开端口或调整 IP 地址。
UPnP 通过一套网络协议来实现这一点,这些协议允许本地网络上的设备(如个人计算机、打印机、调制解调器、路由器和移动设备)无缝地发现彼此在网络中的存在,然后相互通信。
UPnP can also be used to configure port forwarding, routing connections through your router’s firewall(新窗口) so that you can connect devices on the internet with devices on your local network. Popular reasons for this include:
- IoT 设备:例如,您可能想随时随地查看监控摄像头的画面、控制智能恒温器或管理智能家居系统。
- 家庭媒体服务器:这样您就可以在外出时通过互联网观看 Plex 或 Jellyfin 服务器上的内容
- 游戏服务器:这样您就可以托管多人游戏,而无需支付第三方服务器费用
- P2P 文件共享:允许传入连接,以提高下载速度。有关其工作原理的更多信息,请参阅我们的种子下载终极指南。
UPnP 如何工作?
简单来说,UPnP 的工作方式可以分为以下几个步骤:
- 发现:当设备连接到网络时,它会广播一条消息来宣告自己的存在。网络上的其他设备可以响应此消息,从而发现彼此。
- 描述:设备相互发现后,会交换有关自身能力和服务的信息。此步骤涉及设备分享自己能做什么、以及其他设备如何与之交互的详细信息。
- 自动配置:设备可以自动向路由器请求端口转发。例如,游戏主机可能会请求路由器打开特定端口,以便无需人工干预即可托管多人游戏。
UPnP 为什么危险?
虽然 UPnP 带来了不可否认的便捷,但它也带来了严重的安全隐患。UPnP 的风险不仅在于其工作方式,还在于您通常对其幕后操作几乎没有控制权和可见性。UPnP 的主要风险包括:
自动端口转发
虽然 UPnP 的主要设计目的是连接本地网络中的设备,但其最有用的功能之一是自动打开路由器上的端口,让 LAN 中的设备能够与互联网上的设备通信。遗憾的是,开放的端口可能让恶意行为者得以访问本地网络中的设备。
需要注意的是,如果您在路由器上手动配置端口转发,这一风险同样存在。但是,如果启用了 UPnP,它可能会在您不知情的情况下自动打开端口,以配置本地网络上的多台(可能存在漏洞的)设备。
无身份验证
UPnP 的设计初衷是面向可信的本地网络,因此它通常不需要设备进行任何身份验证即可工作。这意味着同一网络上的任何设备——包括可能已遭泄露的设备——都可以向路由器发送请求来打开端口或重定向流量。
如果网络中仅有一台设备感染了恶意软件,它就可以在您不知情的情况下悄然修改网络设置并在防火墙上打洞,从而使恶意软件能够与外部世界通信。臭名昭著的 Mirai 僵尸网络(新窗口)正是如此,它利用 UPnP 漏洞感染 IoT 设备(如家用摄像头)和路由器,发动了有史以来规模最大的几起 DDoS 攻击(新窗口)。
缺乏身份验证还意味着恶意软件可以轻松在连接到本地网络的 UPnP 设备之间传播。
端口扫描攻击的风险更高
主要是由于一些较旧或配置不当的路由器会接受来自互联网的 UPnP 连接(而不仅仅是本地连接),数以百万计的网络设备和路由器(新窗口)容易遭受 DDoS 和其他攻击。
为什么应停用 UPnP
UPnP 可以自动完成网络设置,让生活更加轻松,但它缺乏安全控制且容易被滥用,是一项高风险功能。在消费级路由器上尤其如此——UPnP 默认”信任一切”的设计理念与现代安全最佳实践完全不符,还会助长恶意软件的传播。因此对大多数人来说,这种便捷可能不值得冒这个险。
您无法清楚了解哪些端口是开放的、为什么开放,以及是否已正确关闭,这在网络安全中造成了盲区。这为恶意软件和黑客提供了轻松的入侵切入点,他们随后可以在您的网络中创建持久性后门,甚至将您的流量路由至受攻击者控制的 DNS 服务器(如 Switcher 木马(新窗口)所示)。
更好的解决方案是在需要时手动配置端口转发,这样您就能完全掌控并清楚了解哪些端口是开放的。
不过请注意,为连接到 VPN 的设备在路由器上设置端口转发毫无意义(见下文)。
端口转发、UPnP 与 VPN
当您将设备连接到 VPN 服务器时,设备与服务器之间传输的所有数据都会通过加密的 VPN 隧道路由。在通过此 VPN 隧道传输时,任何其他人或设备都无法看到您的数据。
这包括您的互联网服务提供商(ISP)(进而包括您的政府),但也包括您自己的路由器。因此,使用 VPN 时,连接实际上绕过了您的路由器,使 UPnP(以及在路由器上手动进行端口转发)变得多余。使用 VPN 时的端口转发是指在 VPN 提供商用于保护 VPN 服务器的 NAT 防火墙上打开端口——而不是在路由器上。
如果设备(或在该设备上运行的应用,如 BitTorrent 客户端)支持 UPnP,您应停用该设置,以免与 VPN 软件发生冲突。
如何在路由器上停用 UPnP
在路由器上停用 UPnP 的过程很简单,但具体步骤因路由器的品牌和型号而异。以下是在一些最常见路由器品牌上停用 UPnP 的一般说明。在其他路由器上,步骤也类似。
首先,在浏览器的地址栏中输入路由器的IP 地址(通常为 192.168.1.1 或 192.168.0.1),然后使用管理员用户名和密码登入。这些信息通常印在路由器上粘贴的标签上(除非您已更改)。然后:
Linksys 路由器
前往 Administration(管理)标签页 → UPnP → 将 UPnP 设置切换为关。点击 Save Settings(保存设置)以应用更改。建议重启路由器以确保更改生效。为此,请前往 Administration(管理)标签页 → Reboot(重启)。
Netgear 路由器
前往 Administration(管理)标签页 → UPnP → 将 UPnP 设置切换为关。点击 Apply(应用)以保存更改。建议重启路由器以确保更改生效。为此,请前往 Maintenance(维护)标签页 → Reboot(重启)。
TP-Link 路由器
前往 Advanced(高级)标签页 → NAT Forwarding(NAT 转发)→ UPnP,将 UPnP 设置切换为关。建议重启路由器以确保更改生效。为此,请前往 System(系统)标签页 → Reboot(重启)。

关于 UPnP 的结语 —— 有代价的便捷
UPnP 的设计初衷是好的:通过让设备自动通信和自行配置,让普通人更轻松地使用网络。但在网络威胁比以往任何时候都更复杂、更频繁的时代,这种便捷也是一种隐患。
UPnP 缺乏身份验证、涉及端口转发,且有被利用的历史,因此让它保持启用是一项有风险的功能,尤其是对于很少被监控或更新的家用路由器。虽然它可以简化游戏、流媒体设备和智能家居设备的设置,但它也在悄然打开大门,让黑客和恶意软件欣然步入。
幸运的是,停用 UPnP 很简单,大多数人在日常上网中不会察觉任何差别——尤其是如果您花一点时间手动配置少数真正需要开放端口的服务。
如果您在设备上使用 Proton VPN,这会更加简单,因为您只需开启该功能,我们就会在 VPN 防火墙中为您打开一个合适的端口。






