Страница 1 из 1

udev белый список USB устройств

Добавлено: 2017-04-06 21:55:22
CTOPMbI4
Доброго времени суток комрады Linux.
Озадачился вопросом. Блокировки всех устройств USB кроме разрешенных. Чтобы сотрудники не подключали левые девайсы по USB.
Делал по этой ссылки https://wiki.gentoo.org/wiki/Allow_only … sb_devices
Собственно версия ОС.
# uname -a

Код: Выделить всё

Linux TEST 3.0.101-68.4-desktop #1 SMP PREEMPT Tue Dec 1 17:21:37 CET 2015 (ed01a9f) x86_64 x86_64 x86_64 GNU/Linux
Набросал правила в

Код: Выделить всё

 /etc/udev/rules.d/
# Skeep not USB
SUBSYSTEM!="usb", GOTO="usb_end"
# Skeep remove actions
ACTION=="remove", GOTO="usb_end"

#Usb-Intel-HUB
SUBSYSTEMS=="usb", ACTION=="add", ATTR{idVendor}=="8087", ATTR{authorized}="1", GOTO="usb_end"

#Usb-HUB1
SUBSYSTEMS=="usb", ACTION=="add", ATTR{idVendor}=="1d6b", ATTR{authorized}="1", GOTO="usb_end"

#Microsystems-HUB
SUBSYSTEMS=="usb", ACTION=="add", ATTR{idVendor}=="0424", ATTR{authorized}="1", GOTO="usb_end"

#Usb-Hasp-Key
SUBSYSTEMS=="usb", ACTION=="add", ATTR{idVendor}=="1111", ATTR{authorized}="1", GOTO="usb_end"

#Keyboard
SUBSYSTEMS=="usb", ACTION=="add", ATTR{idVendor}=="046d", ATTR{authorized}="1", GOTO="usb_end"

#Mouse
SUBSYSTEMS=="usb", ACTION=="add", ATTR{idVendor}=="045e", ATTR{authorized}="1", GOTO="usb_end"

#Flash
SUBSYSTEMS=="usb", ACTION=="add", ATTRS{serial}=="55555", ATTR{authorized}="1", GOTO="usb_end"

# Disable all other USB devices
SUBSYSTEMS=="usb", ACTION=="add", ATTR{authorized}="0"

LABEL="usb_end"
То есть взял вывод с
lsusb

Код: Выделить всё

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 1111:0001 Aladdin Knowledge Systems HASP copy protection dongle
Bus 001 Device 003: ID 0424:2514 Standard Microsystems Corp. USB 2.0 Hub
Bus 003 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 004 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 004: ID 046d:c31c Logitech, Inc. Keyboard K120
Bus 001 Device 005: ID 045e:0797 Microsoft Corp. Optical Mouse 200
Bus 001 Device 006: ID 5555:161a Kingston Technology Dell HyperVisor internal flash drive
Решил проверять по параметру
ATTRS{idProduct}
Таким образом все работает, пропускает все устройства. Причем и те которые не добавлены в данный список.
Тут возникли вопросы: Как посмотреть где находится устройства, клава, мышь и т.д.
Чтобы проверить их параметры как с Flash.
Как я понял должны находится тут

Код: Выделить всё

/sys/bus/usb/devices 
ls /sys/bus/usb/devices/ |grep -v ':'
1-3
1-4
1-4.1
1-4.2
1-4.4
3-1
4-1
usb1
usb2
usb3
usb4
Саму Flash нашел
udevadm info -a -p /sys/block/sdc
Вопрос в правилах указывать
ATTR
или
ATTRS
?
Где ошибся почему не работает так как задумано?

Отправлено спустя 40 минут 53 секунды:
Как я понял если разрешить

Код: Выделить всё

#Usb-Intel-HUB
SUBSYSTEMS=="usb", ACTION=="add", ATTR{idVendor}=="8087", ATTR{authorized}="1", GOTO="usb_end"
то все устройства пропускаются и дальнейшие правила уже не просматриваются.
Почему так происходит?

Отправлено спустя 16 секунд:
Как я понял если разрешить

Код: Выделить всё

#Usb-Intel-HUB
SUBSYSTEMS=="usb", ACTION=="add", ATTR{idVendor}=="8087", ATTR{authorized}="1", GOTO="usb_end"
то все устройства пропускаются и дальнейшие правила уже не просматриваются.
Почему так происходит?

udev белый список USB устройств

Добавлено: 2017-04-07 15:54:48
Alex Keda
А нахрена?

udev белый список USB устройств

Добавлено: 2017-04-07 18:05:54
CTOPMbI4
Леха. Требования заказчика. Теперь и на линуксе)