Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

4.12.2. 创建白名单和黑名单

usbguard-daemon.conf 文件解析其命令行选项后,由 usbguard 守护进程加载,用于配置守护进程的运行时参数。要覆盖默认配置文件(/etc/usbguard/usbguard-daemon.conf),请使用 -c 命令行选项。详情请查看 usbguard-daemon(8)手册页
要创建白名单或黑名单,请编辑 usbguard-daemon.conf 文件并使用以下选项:

usbguard 配置文件

RuleFile=<path>
usbguard 守护进程使用此文件来加载策略规则集,再编写通过 IPC 接口接收的新规则。
IPCAllowedUsers=<username> [<username> ...]
守护进程将接受来自这个以空格分隔的用户名列表的 IPC 连接。
IPCAllowedGroups=<groupname> [<groupname> ...]
守护进程将接受来自这个以空格分隔的组名称列表的 IPC 连接。
IPCAccessControlFiles=<path>
保存 IPC 访问控制文件的目录的路径。
ImplicitPolicyTarget=<target>
如何处理与策略中的任何规则不匹配的设备。可接受的值:allow、block、reject.
PresentDevicePolicy=<policy>
如何处理守护进程启动时已连接的设备:
  • allow - 授权所有现有设备
  • block - 取消授权所有现有设备
  • reject - 删除所有存在的设备
  • keep - 仅同步内部状态并保留它
  • apply-policy - 评估每个现在设备的规则集
PresentControllerPolicy=<policy>
如何处理守护进程启动时已连接的 USB 控制器:
  • allow - 授权所有现有设备
  • block - 取消授权所有现有设备
  • reject - 删除所有存在的设备
  • keep - 仅同步内部状态并保留它
  • apply-policy - 评估每个现在设备的规则集

例 4.5. usbguard 配置

以下配置文件会命令 usbguard 守护进程从 /etc/usbguard/rules.conf 文件中加载规则,它只允许 usbguard 组中的用户使用 IPC 接口:
RuleFile=/etc/usbguard/rules.conf
IPCAccessControlFiles=/etc/usbguard/IPCAccessControl.d/
若要指定 IPC 访问控制列表(ACL),请使用 usbguard add-user 或 usbguard remove-user 命令。详情请查看 usbguard(1)。在本例中,要允许 usbguard 组中的用户修改 USB 设备的授权状态,列出 USB 设备,侦听异常事件,并列出 USB 授权策略,以 root 身份输入以下命令:
~]# usbguard add-user -g usbguard --devices=modify,list,listen --policy=list --exceptions=listen
重要
守护进程提供 USBGuard 公共 IPC 接口。在 Red Hat Enterprise Linux 中,此接口默认仅限于 root 用户。考虑设置 IPCAccessControlFiles 选项(推荐)或 IPCAllowedUsers 和 IPCAllowedGroups 选项,以限制对 IPC 接口的访问。不要保留未配置 ACL,因为这会将 IPC 接口公开给所有本地用户,并允许他们操作 USB 设备的授权状态并修改 USBGuard 策略
如需更多信息,请参阅 usbguard-daemon.conf(5) man page 中的 IPC 访问控制部分。