Выборочное подключение USB-накопителей в Windows
Однажды на предприятии была поставлена задача: ограничить использование usb-накопителей (флешки, внешние жесткие диски и другие устройства) на компьютерах пользователей, с использованием "белых списков", т.е. одобренные накопители можно использовать - все другие нельзя. Причем сделать это "имеющимися средствами", без дополнительных денежных вложений.
В интернете было найдено множество статей по данной теме, в результате их анализа родилось решение (спасибо пользователю nik за помощь в поисках).
Введение
Когда вы подключаете устройство накопления к usb-порту, система заносит информацию о нем в ветку реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USBSTOR
.
Делает она это от имени пользователя system. Соответственно если запретить создавать пользователю system подразделы в USBSTOR то новые устройства хоть и определятся, но работать не будут.
Точнее, несмотря на установленный запрет подразделы все равно создадутся, однако параметры будут не все и работать устройство не будет (сравните рисунок 1 и рисунок 3).
Теперь о том, как применить это на практике. Рассмотрим на конкретном примере. Вот, что мы имеем:
- Сеть на Active Directory (домен domain.local)
- Отдельный компьютер администратора, на котором пользователь system имеет полные права на раздел
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USBSTOR
- Внешний жесткий диск (hdd1) и 2 флешки (flash1 и flash2)
Требуется сделать так чтобы все usb-накопители кроме hdd1, flash1, flash2 не работали на компьютерах домена. Итак, приступим.
Получим данные о разрешённых usb-накопителях
На компьютере, где пользователь system имеет полные права на ветку USBSTOR, подключим по очереди наши устройства, для того чтобы информация о них появилась в реестре:
Выгрузим данные из реестра в reg-файлы:
Сохраняем файлы в общую сетевую папку \\domain.local\netlogon\usbstor
:
Запрещаем пользователю system создавать подразделы
И так файлы с данными по разрешенным устройствам мы получили, теперь необходимо запретить пользователю system создавать подразделы в USBSTOR. Создадим групповую политику Active Directory (напомним на компьютер администратора она распространяться недолжна, иначе на нем не будут правильно создаваться подразделы USBSTOR).
В созданной групповой политике откройте Конфигурация компьютера\Политики\Конфигурация Windows\Параметры безопасности\Реестр
и добавьте раздел MACHINE\SYSTEM\CurrentControlSet\Enum\USBSTOR
Установите параметр "Заменить текущие разрешения во всех подразделах наследуемыми":
нажмите кнопку "изменить параметры" и в открывшемся окне установите права:
- Для пользователя system назначьте права как указано на рисунке 2
- Для группы DOMAIN\Администраторы установите полные права
Способы распространения информации о разрешенных usb-накопителях
Теперь о том, как распространить подготовленные ранее reg-файлы на компьютеры.
Локально, на компьютере пользователя
Зайдите на компьютер пользователя под учетной записью, которая входит в группу DOMAIN\Администраторы (данная группа имеет полные права на раздел USBSTOR) и последовательно импортируйте данные с выгруженных ранее файлов flash1.reg, flash2.reg, hdd1.reg.
С комьютера администратора используя "удаленный реестр"
Откройте редактор реестра (regedit.exe) на компьютере под пользователей администратора домена.
Подключите в нем сетевой реестр (Файл\Подключить сетевой реестр
).
Затем Файл\Импорт
и выберите нужные reg-файлы.
Дополнительно
Черные списки (работает на Windows XP)
Чтобы определенная флешка или другой usb-накопитель не работал на компьютерах, установите параметр ConfigFlags (см. рисунок 1) равным 400.