como desabilitar os dispositivos USB com base no id do fornecedor no ambiente Linux?

10

Desejo desativar dispositivos usb com base no ID do fornecedor no ambiente Linux. Quero permitir apenas dispositivos USB específicos, com base no ID do fornecedor.

    
por subbarao 31.01.2013 / 07:37

2 respostas

9

Você pode criar uma regra do udev que desabilite dispositivos por padrão, mas habilita determinados por ID de fornecedor. Crie um arquivo /etc/udev/rules.d/01-usblockdown.rules que contenha uma regra para desativar dispositivos:

ACTION=="add", SUBSYSTEMS=="usb", RUN+="/bin/sh -c 'for host in /sys/bus/usb/devices/usb*; do echo 0 > $host/authorized_default; done'"

E, em seguida, regras para ativar os dispositivos que você deseja permitir (você pode usar ATTR{idVendor} para obter o ID do fornecedor):

ACTION=="add", ATTR{idVendor}=="0000" RUN+="/bin/sh -c 'echo 1 >/sys$DEVPATH/authorized'"

Veja "Bloqueio do Linux usando o UDEV" para mais informações.

    
por 01.02.2013 / 16:38
3

(isso pode ter sido melhor como um comentário, mas eu não tenho os pontos, então expandi-lo em uma resposta)

Eu vim aqui pesquisando como permitir todos os dispositivos usb, exceto desativar um específico pelo fornecedor e pelo ID do produto. Como desativar um dispositivo de som usb com o udev responde pelo exemplo 0d8c: 000c.

Crie /etc/udev/rules.d/disable-usb-device.rules :

ACTION=="add", ATTR{idVendor}=="0d8c", ATTR{idProduct}=="000c", RUN="/bin/sh -c 'echo 0 >/sys/\$devpath/authorized'"

Existe uma discrepância entre a resposta e um comentário abaixo com RUN= vs. RUN+= , tentei o primeiro e funcionou bem.

Eu esperava que o dmesg ou o lusb relatassem de forma diferente, mas ambos mostravam o dispositivo não autorizado sendo enumerado como antes, mas outros processos / módulos que seriam executados automaticamente parecem não estar em execução, o que era o efeito desejado. cat /sys/bus/usb/devices/1-2.2.1.1.4/authorized (o 1-2.2 ..., por exemplo, que pode ser encontrado no dmesg) mostra que o 0 foi colocado no lugar certo.

    
por 13.03.2015 / 17:23

Tags