zl程序教程

您现在的位置是:首页 >  其他

当前栏目

Linux 已准备好禁用微软的 RNDIS 驱动程序,但是……

2023-02-25 17:58:49 时间

微软的 RNDIS 协议(即 远程网络驱动接口规范Remote Network Driver Interface Specification

这方面最常见的使用情况是通过连接到电脑上的 USB,使用手机的移动网络连接互联网,也称为 ​​系连​​Tethering。

尽管它主要在 Windows 上工作,但它成为 Linux 内核的一部分已经有一段时间了。

但这种情况很快就会改变。

向 RNDIS 协议说再见?

发生了什么? 周一,​​Greg Kroah-Hartman​​ 创建了 ​​usb.git rndis-removal​​ 分支,其中他提到禁用 Linux 上所有 RNDIS 协议驱动程序的实现。

在该提交中他提到:

微软的 RNDIS 协议按照设计是不安全的,在任何连接不信任的主机或设备的系统上使用它都是脆弱的。因为该协议不可能变得安全,所以只要禁用所有的 RNDIS 驱动,就可以防止任何人再使用它们。Windows 只在 XP 和更新一些的系统中需要用它,比这更早的 Windows 系统可以使用正常的 USB 类协议来代替,没有这些问题。

正如最初由 ​​Phoronix​​ 报道的那样,一旦这个协议在 Kconfig 选项中被标记为 “损坏”,它将再保留一段时间,最终从内核中删除。

但是为什么呢?

众所周知,RNDIS 在 Windows 之外的平台上的实现是一团糟,并带来了相当多的安全风险。此外,RNDIS 并不像以前那样广泛使用了,它带来的安全风险可能是作出这一决定的主要原因之一。

这对目前的用户有影响吗?你应该担心吗?

如果我们看一下对这一即将到来的变化的 ​​Reddit 讨论​​,我们会发现许多用户仍然很担心这是否会破坏大家的 USB 连接

考虑到许多安卓手机仍然使用 RNDIS 而不是 CDC NCM(一种较新的协议),用户似乎对这一举措感到困惑 ?;不只是用户,一位 ​​谷歌的内核网络开发人员​​ 也提出了这个议题,但我们还没有看到对此的回应。

但不是每个人都使用主线 Linux 内核?如果你不想受到这种变化的影响,你是否应该坚持使用 LTS 版本的内核?

此外,用户希望更清楚地了解这是否会影响到所有人。

但是,从目前来看,Greg 可能并没有给出更多的细节来说服一些相关用户。

? 当然,我们不是 Linux 内核维护者。所以,最好等这个提交通过时,我希望 Linux 内核维护者能比我们知道更多的信息。