禁用所有用户的所有 USB 设备

禁用所有用户的所有 USB 设备

问题

禁用所有用户的所有 USB 端口上的所有通信(最好断开电源,但正如我将在下面指出的,我认为这是不可能的)。我目前正在使用 Linux Mint 18。

我尝试过的

以上似乎都不起作用(使用 USB 鼠标和记忆棒进行测试)。

我还没有抽出时间尝试这个建议unix.stackexchange.com/questions/274203然而(这可能会禁用键盘和鼠标),但是,也不允许允许 root 破坏黑名单。

我觉得删除驱动程序可能是最好的解决方案(至少放置在根目录中进行测试),但我需要知道要定位哪些驱动程序,这样我就不会破坏其他任何东西。

如果可能的话,我宁愿不用拿出焊接套件来进行硬件调整......

答案1

另一种选择是将“nousb”选项添加到内核引导行,无论是在引导时,还是编辑 /etc/default/grub 文件或 /boot/grub.cfg

RedHat 7 在选择 DISA Stig 安全配置文件时执行了此操作。我花了一些时间才弄清楚为什么我的鼠标和键盘停止工作。

答案2

我在 BIOS 中有一个选项可以禁用所有 USB 端口。我禁用了摄像头、麦克风和蓝牙。

出于安全原因,最好禁用 USB 端口。很多公司都这样做。但是,如果您想在 Linux 中执行此操作,有一个名为“usb-storage”的驱动程序。尝试删除它,或者如果不可能,尝试禁止它(将其列入黑名单)。

正如讨论中所述,尝试将其列入黑名单。转到/etc/modprobe.d/blacklist.conf并添加blacklist usb-storage

请参阅 OpenSUSE 中的讨论:https://forums.opensuse.org/showthread.php/441492-how-to-disable-usb-storage

答案3

您可以添加与此类似的 udev 规则:

ENV{ID_SERIAL}!="?*", SUBSYSTEMS=="usb", RUN+="/usr/bin/usbdevinserted.sh"

并且,在 usbdevinserted.sh 中添加命令以锁定对此 USB 的访问。

此外,您可以从usb组(或提供 USB 设备访问权限的其他组)中删除用户

相关内容