12.6. Creación de una política personalizada estructurada para los dispositivos USB
Puede organizar su política personalizada USBGuard en varios archivos .conf dentro del directorio /etc/usbguard/rules.d/. El usbguard-daemon combina entonces el archivo principal rules.conf con los archivos .conf dentro del directorio en orden alfabético.
Requisitos previos
-
El servicio
usbguardestá instalado y funcionando.
Procedimiento
Cree una política que autorice los dispositivos USB actualmente conectados, y almacene las reglas generadas en un nuevo archivo
.conf, por ejemplo,policy.conf.usbguard generate-policy --no-hashes > ./policy.conf
# usbguard generate-policy --no-hashes > ./policy.confCopy to Clipboard Copied! Toggle word wrap Toggle overflow La opción
--no-hashesno genera atributos hash para los dispositivos. Evita los atributos hash en tus ajustes de configuración porque podrían no ser persistentes.Visualice el
policy.confarchivo con un editor de texto de su elección, por ejemplo:vi ./policy.conf
# vi ./policy.conf ... allow id 04f2:0833 serial "" name "USB Keyboard" via-port "7-2" with-interface { 03:01:01 03:00:00 } with-connect-type "unknown" ...Copy to Clipboard Copied! Toggle word wrap Toggle overflow Mover las líneas seleccionadas a un archivo separado
.conf.NotaLos dos dígitos al principio del nombre del archivo especifican el orden en que el demonio lee los archivos de configuración.
Por ejemplo, copie las reglas de sus teclados en un nuevo archivo
.conf.grep "USB Keyboard" ./policy.conf > ./10keyboards.conf
# grep "USB Keyboard" ./policy.conf > ./10keyboards.confCopy to Clipboard Copied! Toggle word wrap Toggle overflow Instale la nueva política en el directorio
/etc/usbguard/rules.d/.install -m 0600 -o root -g root 10keyboards.conf /etc/usbguard/rules.d/10keyboards.conf
# install -m 0600 -o root -g root 10keyboards.conf /etc/usbguard/rules.d/10keyboards.confCopy to Clipboard Copied! Toggle word wrap Toggle overflow Mueve el resto de las líneas a un archivo principal
rules.conf.grep -v "USB Keyboard" ./policy.conf > ./rules.conf
# grep -v "USB Keyboard" ./policy.conf > ./rules.confCopy to Clipboard Copied! Toggle word wrap Toggle overflow Instale las reglas restantes.
install -m 0600 -o root -g root rules.conf /etc/usbguard/rules.conf
# install -m 0600 -o root -g root rules.conf /etc/usbguard/rules.confCopy to Clipboard Copied! Toggle word wrap Toggle overflow Reinicie el demonio
usbguardpara aplicar los cambios.systemctl restart usbguard
# systemctl restart usbguardCopy to Clipboard Copied! Toggle word wrap Toggle overflow
Pasos de verificación
Muestra todas las reglas activas de USBGuard.
usbguard list-rules
# usbguard list-rules ... 15: allow id 04f2:0833 serial "" name "USB Keyboard" hash "kxM/iddRe/WSCocgiuQlVs6Dn0VEza7KiHoDeTz0fyg=" parent-hash "2i6ZBJfTl5BakXF7Gba84/Cp1gslnNc1DM6vWQpie3s=" via-port "7-2" with-interface { 03:01:01 03:00:00 } with-connect-type "unknown" ...Copy to Clipboard Copied! Toggle word wrap Toggle overflow Muestra el contenido del archivo
rules.confy todos los archivos.confen el directorio/etc/usbguard/rules.d/.cat /etc/usbguard/rules.conf /etc/usbguard/rules.d/*.conf
# cat /etc/usbguard/rules.conf /etc/usbguard/rules.d/*.confCopy to Clipboard Copied! Toggle word wrap Toggle overflow - Compruebe que las reglas activas contienen todas las reglas de los archivos y están en el orden correcto.
Recursos adicionales
-
usbguard-rules.conf(5)página de manual