USBGuard intrusion prevention
Use the USBGuard software framework to protect your systems against intrusive USB devices. USBGuard uses lists of allowed and blocked devices. It is based on the USB device authorization feature in the kernel.
The USBGuard framework provides the following components:
- The system service component. It has an IPC interface for dynamic interaction and policy enforcement.
- The command-line interface. Use it to interact with a running
usbguardsystem service. - The rule language. Use it to write USB device authorization policies.
- The C++ API. Use it to interact with the system service component in a shared library.
The usbguard system service configuration file is /etc/usbguard/usbguard-daemon.conf. It includes options to authorize users and groups to use the IPC interface.
The system service provides the USBGuard public IPC interface. In Red Hat Enterprise Linux, only the root user can access this interface by default.
Limit access to the IPC interface. Set one of these options:
-
IPCAccessControlFiles IPCAllowedUsersandIPCAllowedGroups
Do not leave the Access Control List (ACL) unconfigured. An unconfigured ACL exposes the IPC interface to all local users. They can then manipulate USB device authorization and modify the USBGuard policy.