모든 사용자에 대해 모든 USB 장치 비활성화

모든 사용자에 대해 모든 USB 장치 비활성화

질문

모든 사용자에 대해 모든 USB 포트의 모든 통신을 비활성화합니다(전원 연결을 끊는 것이 바람직하지만 아래에서 지적하겠지만 이것이 가능하다고 생각하지 않습니다). 현재 Linux Mint 18을 사용하고 있습니다.

내가 시도한 것

위의 어느 것도 작동하지 않는 것 같습니다(USB 마우스 및 메모리 스틱으로 테스트).

아직 이 제안을 시도하지 않았습니다.unix.stackexchange.com/questions/274203그러나 (이렇게 하면 키보드와 마우스가 비활성화될 수 있습니다) 루트가 블랙리스트를 깨는 것도 허용되지 않습니다.

드라이버를 삭제하는 것이 최선의 해결책일 수 있다고 생각합니다(적어도 테스트를 위해 루트 디렉토리에 배치). 그러나 다른 것을 손상시키지 않도록 어떤 드라이버를 대상으로 할지 알아야 합니다.

가능하다면 하드웨어 조정을 위해 납땜 키트를 준비할 필요가 없습니다...

답변1

또 다른 옵션은 부팅 시 또는 /etc/default/grub 파일 또는 /boot/grub.cfg를 편집하여 커널 부팅 라인에 "nousb" 옵션을 추가하는 것입니다.

RedHat 7은 DISA Stig 보안 프로필을 선택할 때 이 작업을 수행합니다. 마우스와 키보드가 작동을 멈춘 이유를 알아내는 데 시간이 좀 걸렸습니다.

답변2

BIOS에는 모든 USB 포트를 비활성화하는 옵션이 있습니다. 카메라, 마이크, 블루투스를 비활성화했습니다.

보안상의 이유로 USB 포트를 비활성화하는 것이 가장 좋습니다. 많은 회사들이 이렇게 합니다. 그러나 Linux에서 이 작업을 수행하려면 "usb-storage"라는 드라이버가 있습니다. 제거해 보세요. 가능하지 않은 경우 금지(블랙리스트 추가)해 보세요.

토론에서 언급했듯이 블랙리스트에 올려보세요. 가서 /etc/modprobe.d/blacklist.conf추가하세요blacklist usb-storage

OpenSUSE의 토론을 참조하세요.https://forums.opensuse.org/showthread.php/441492-how-to-disable-usb-storage

답변3

다음과 유사한 udev 규칙을 추가할 수 있습니다.

ENV{ID_SERIAL}!="?*", SUBSYSTEMS=="usb", RUN+="/usr/bin/usbdevinserted.sh"

또한 usbdevinserted.sh에 명령을 추가하여 이 USB에 대한 액세스를 잠급니다.

또한 usb그룹(또는 USB 장치 액세스를 제공하는 다른 그룹)에서 사용자를 제거 할 수 있습니다.

관련 정보