vasek |
|
Темы:
47
Сообщения:
11874
Участник с: 17 февраля 2013
|
Бывают ситуации, когда временно требуется или полностью запретить подключение всех USB-устройств или просто запретить их автомонтирование, а иногда разрешить автомонтирование только определенного USB-устройства ... конечно, это бывает не так часто и не у всех, но может кому то будет и интересно, как это можно осуществить. Опишу в кратце 1. Полный запрет на подключение всех USB-устройств - в основном защита от более продвинутых юзеров, которым разрешено sudo (USB-устройства не возмножно будет смонтировать даже в ручную - модуль usb_storage будет не рабочий) Создаем файл /etc/modprobe.d/usb-storage.conf и прописываем в нем строку install usb-storage /bin/trueТребуется выполнить reboot ... Эта фича выполняет фальшивую загрузку модуля usb_storage при вставке USB-накопителя в порт - команда /bin/true ничего не делает и возвращает статус 0. Согласно спецификации USB флэшка будет определяться системой, то есть будет видна в lsusb, а вот lsblk и пр. ее не покажут. В принципе можно просто прописать, а пока нет необходимости, закомментировать, что я и сделал. cat /etc/modprobe.d/usb-storage.conf
2. Полный запрет на автомонтирование всех USB-устройств - но можно смонтировать в ручную, если разрешено использование sudo (в основном защита от простых юзеров, которым не разрешено sudo или же не умеют монтировать в ручную) Создаем файл /etc/udev/rules.d/99-usb.rules и прописываем в нем правило Чтобы заработало без перегрузки, выполняем - sudo udevadm control --reload-rules3. Автомонтирование только определенных USB-устройств Создаем файл /etc/udev/rules.d/99-usb.rules, как в п. 2 и прописываем в нем два правила (две строчки) 1-ое - то же правило, что и при полном запрете автомонтирования, то есть как в п. 2 2-ое - правило, идентифицирующее USB-устройство, которое должно автомонтироваться, например, по его серийному номеру (38QFP30TV3EYT48U) Но мне больше нравится немного другой способ, состояший всего из одного правила Иногда ID_SERIAL_SHORT отсутствует, тогда можно, например, использовать длинный номер ID_SERIAL Чтобы узнать номера устройства вставляем нужную флэшку и смотрим выводudevadm info --query=env --name=/dev/sdb | grep ID_SERIAL Чтобы заработало без перегрузки, выполняем sudo udevadm control --reload-rules
Ошибки не исчезают с опытом - они просто умнеют
|
anode |
|
Темы:
8
Сообщения:
1019
Участник с: 30 августа 2011
|
vasek, отлично, мне кажется, лучше в блоги. |
vasek |
|
Темы:
47
Сообщения:
11874
Участник с: 17 февраля 2013
|
anodeдумал об этом, но слишком маленький объем ... да, наверное, и мало кому это и нужно.
Ошибки не исчезают с опытом - они просто умнеют
|
vall |
|
Темы:
45
Сообщения:
1786
Участник с: 28 марта 2017
|
anodeПоддерживаю! У меня уже специальная папка есть для Ваших материалов. Спасибо. |
vadik |
|
Темы:
57
Сообщения:
5496
Участник с: 17 августа 2009
|
Перенес. Информация полезная. Считаю, что в блогах ей самое место. |
ZeniaM |
|
Темы:
37
Сообщения:
298
Участник с: 20 сентября 2015
|
vasekЗа-то, лаконично и по делу.anodeдумал об этом, но слишком маленький объем … да, наверное, и мало кому это и нужно. Спасибо! |
Koluchka |
|
Темы:
2
Сообщения:
151
Участник с: 15 октября 2011
|
Спасибо, полезно. А как насчет запрета подключения всяких левых usb-клавиатур или флешек, которые притворяются клавиатурами или сетевыми адаптерами? Несколько лет назад писали про такую потенциальную дыру, кажется, называется Bad USB. |
indeviral |
|
Темы:
39
Сообщения:
3204
Участник с: 10 августа 2013
|
ну и объявление label end
Ошибки в тексте-неповторимый стиль автора©
|
Koluchka |
|
Темы:
2
Сообщения:
151
Участник с: 15 октября 2011
|
Здорово. А можно немножко комментариев? А то в целом понятно, но не очень)) Вот GOTO например, это куда и зачем? |
vasek |
|
Темы:
47
Сообщения:
11874
Участник с: 17 февраля 2013
|
KoluchkaBadUSB - способ внедрения вредоносного кода, основанный на уязвимости USB-устройств … простым языком, прошивается микроконтроллер, например, флэшка, которая при инициализации будет выдавать себя за другое устройство. Об этом много писали раньше, но это не так уж просто и осуществить - не каждый контроллер можно перепрошить, но если даже и получится перепрошить, то встает вопрос - чем перепрошить? - нужно писать свой код, под конкретные цели … и не забываем, что производители не очень то раскрывают свои программы для этих устройств … Отсюда вывод - обычным юзерам бояться нечего, но все-таки рекомендуется относится с настороженностью к незнакомым USB-устройствам и стараться не оставлять работающий компьютер без присмотра ... но это обычные правила, которые нужно соблюдать всегда. В свое время этот вопрос был задан спецам компании Касперского - они ответили близко к этому, привожу часть ответа Защита на уровне hard и soft от этого - способов много, это и отключение лишних USB-портов это и правила UDEV это и правила polkit и др.Кстати в Archlinux имеется пакет usbguard и описание в Wiki … но сам его не пробовал.
Ошибки не исчезают с опытом - они просто умнеют
|