usbguard 규칙은 모든 키보드와 마우스를 허용합니다

usbguard 규칙은 모든 키보드와 마우스를 허용합니다

이 파일은 /etc/usbguard/rules.conf다음에서 생성된 파일 입니다.usbguard generate-policy > /etc/usbguard/rules.conf

이는 유선 키보드와 유선 마우스만 연결된 Dell Optiplex 컴퓨터에 있습니다.RHEL-8.9그리고usbguard-1.0.0-13.el8.x86_64

allow id 1d6b:0002 serial "0000:00:1d.0" name "EHCI Host Controller" hash "WHBTxNaEoMGNSNc31KpFNSAeFF4HbLMQgSBqORlC6S8=" parent-hash "jW2YTPWRLeQOE7Q8I2f0pdN13zFYXVQGQoNmr1gDZgg=" with-interface 09:00:00 with-connect-type ""
allow id 1d6b:0002 serial "0000:00:14.0" name "xHCI Host Controller" hash "jEP/6WzviqdJ5VSeTUY8PatCNBKeaREvo2OqdplND/o=" parent-hash "rV9bfLq7c2eA4tYjVjwO4bxhm+y6GgZpl9J60L0fBkY=" with-interface 09:00:00 with-connect-type ""
allow id 1d6b:0002 serial "0000:00:1a.0" name "EHCI Host Controller" hash "ej1WVedyLyUMLiQxzEcrwbY45zCodwV85Kzy7hm2Gv4=" parent-hash "e/RW0mMbM+TSFQxpRiMEfL7/3RJfKVdqffBm9F5qA+E=" with-interface 09:00:00 with-connect-type ""
allow id 1d6b:0003 serial "0000:00:14.0" name "xHCI Host Controller" hash "3Wo3XWDgen1hD5xM3PSNl3P98kLp1RUTgGQ5HSxtf8k=" parent-hash "rV9bfLq7c2eA4tYjVjwO4bxhm+y6GgZpl9J60L0fBkY=" with-interface 09:00:00 with-connect-type ""
allow id 8087:0024 serial "" name "" hash "Zx7v0FMQEjScKSAFENAiobEs1OGPPB0YWR+yXDCVE04=" parent-hash "WHBTxNaEoMGNSNc31KpFNSAeFF4HbLMQgSBqORlC6S8=" via-port "1-1" with-interface 09:00:00 with-connect-type "hardwired"

allow id 0461:4d51 serial "" name "DELL Laser Mouse" hash "w2bwgTsGy6TVhOOr7smHrvF8PtmYVKQwxbqgA5betmI=" parent-hash "jEP/6WzviqdJ5VSeTUY8PatCNBKeaREvo2OqdplND/o=" via-port "2-3" with-interface 03:01:02 with-connect-type "hotplug"
allow id 413c:2003 serial "" name "Dell USB Keyboard" hash "3eEGsGE566EIofQwRf06EINoPRynZIa/09c3uyy4TTY=" parent-hash "jEP/6WzviqdJ5VSeTUY8PatCNBKeaREvo2OqdplND/o=" via-port "2-4" with-interface 03:01:01 with-connect-type "hotplug"

allow id 8087:0024 serial "" name "" hash "kv3v2+rnq9QvYI3/HbJ1EV9vdujZ0aVCQ/CGBYIkEB0=" parent-hash "ej1WVedyLyUMLiQxzEcrwbY45zCodwV85Kzy7hm2Gv4=" via-port "3-1" with-interface 09:00:00 with-connect-type "hardwired"

allow id 0461:4d22 serial "" name "USB Optical Mouse" hash "OZ6XJQmjdeDg7Dp2MelZt+ewNTtdNTt92FtGPI0VPAc=" parent-hash "kv3v2+rnq9QvYI3/HbJ1EV9vdujZ0aVCQ/CGBYIkEB0=" via-port "3-1.4" with-interface 03:01:02 with-connect-type "hotplug"

규칙 파일에 마지막 줄이 없으면 두 번째 마우스를 삽입할 때 작동하지 않으므로 이 규칙 파일은 키보드 및 마우스에만 해당된다는 것을 알고 있습니다.

내 질문은 – 이것이 가능하다는 말을 들었습니다 – 모든 키보드와 마우스를 시스템 [모든 USB 포트에] 연결할 수 있도록 규칙 구문을 어떻게 작성합니까?

보너스 질문: 유선 USB kybd와 마우스를 USB 포트가 있는 모니터에 연결하고 해당 모니터에서 컴퓨터 USB 포트로 연결되는 USB 케이블이 있는 경우 모든 모니터를 허용하도록 화이트리스트에 추가할 수 있습니까?

답변1

생성된 규칙은 키보드와 마우스에만 적용되는 것이 아니라 규칙이 생성될 때 시스템에 연결된 장치에만 적용됩니다.

키보드와 마우스를 허용하려면 다음을 사용하십시오.이에 일치하는 규칙:

allow with-interface one-of { 03:00:01 03:01:01 03:00:02 03:01:02 }

콜론으로 구분된 각 삼중항에서 첫 번째 값은 인터페이스 클래스, 두 번째 값은 인터페이스 하위 클래스, 세 번째 값은 인터페이스 프로토콜입니다. 카테고리 3은 "휴먼 인터페이스 장비"입니다. 하위 클래스 0과 1을 지정하면 부팅 장치와 비부팅 장치를 일치시킬 수 있습니다. 프로토콜 1은 키보드이고 프로토콜 2는 마우스입니다.

문서에는 첫 번째 키보드만 허용하는 좀 더 이국적인 변형이 나와 있습니다.

allow with-interface one-of { 03:00:01 03:01:01 } if !allowed-matches(with-interface one-of { 03:00:01 03:01:01 })

이는 프로토콜을 2로 변경하여 마우스에 맞게 조정할 수 있습니다.

모니터의 경우 대부분의 경우 관련 기능은 인터페이스 클래스 9입니다.

allow with-interface equals { 09:*:* }

관련 정보