11.4. 永久阻止和授权 USB 设备
您可以使用 -p
选项永久阻止和授权一个 USB 设备。这会在当前策略中添加特定于设备的规则,并在重启后保留。USBGuard 使用术语 block
和 reject
,其含义如下:
block
- 现在不要与此设备进行交互。
reject
- 忽略此设备,就好像它不存在一样。
先决条件
-
usbguard
服务已安装并运行。
流程
配置 SELinux,以允许
usbguard
守护进程编写规则。显示与
usbguard
相关的semanage
布尔值。semanage boolean -l | grep usbguard
# semanage boolean -l | grep usbguard usbguard_daemon_write_conf (off , off) Allow usbguard to daemon write conf usbguard_daemon_write_rules (on , on) Allow usbguard to daemon write rules
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 如果
usbguard_daemon_write_rules
布尔值已关闭,请打开它。semanage boolean -m --on usbguard_daemon_write_rules
# semanage boolean -m --on usbguard_daemon_write_rules
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
通过列出 USBGuard 识别的设备来确定 USB 设备的 ID:
usbguard list-devices
# usbguard list-devices 1: allow id 1d6b:0002 serial "0000:00:06.7" name "EHCI Host Controller" hash "JDOb0BiktYs2ct3mSQKopnOOV2h9MGYADwhT+oUtF2s=" parent-hash "4PHGcaDKWtPjKDwYpIRG722cB9SlGz9l9Iea93+Gt9c=" via-port "usb1" with-interface 09:00:00 ... 6: block id 1b1c:1ab1 serial "000024937962" name "Voyager" hash "CrXgiaWIf2bZAU+5WkzOE7y0rdSO82XMzubn7HDb95Q=" parent-hash "JDOb0BiktYs2ct3mSQKopnOOV2h9MGYADwhT+oUtF2s=" via-port "1-3" with-interface 08:06:50
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 永久授权设备以与系统交互:
usbguard allow-device <ID> -p
# usbguard allow-device <ID> -p
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 永久取消授权并删除设备:
usbguard reject-device <ID> -p
# usbguard reject-device <ID> -p
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 永久取消授权并保留设备:
usbguard block-device <ID> -p
# usbguard block-device <ID> -p
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
检查 USBGuard 规则是否包含您所做的更改。
usbguard list-rules
# usbguard list-rules
Copy to Clipboard Copied! Toggle word wrap Toggle overflow