Я хотел бы знать, как ограничить одного (не администратора) пользователя от использования определенных команд из командной строки.
Например: dir
должен быть разрешен, но shutdown
должно быть заблокировано.
В качестве бонуса возможно ли это в белом списке (т.е. все команды заблокированы, кроме dir
)?
2 ответа
В отличие от операционных систем UNIX/Linux, в Windows есть два типа команд: внутренние и внешние. Такие команды, как dir
, cd
, rd
, copy
, del
и т.д., Встроены в интерпретатор команд и, таким образом, являются внутренними командами. Все остальные утилиты командной строки (такие как net
, shutdown
, telnet
, ftp
и т.д.) Являются внешними командами - они имеют связанный файл .exe. Вы можете получить список внутренних команд, набрав help
в командной строке.
Внутренние команды - сделка "все или ничего". Если вы предоставляете доступ к командной строке, вы предоставляете доступ ко всем им. Внешние команды - это просто программы, как и любые другие, поэтому, если вы не хотите, чтобы пользователь запускал команду ipconfig
, вы можете просто отозвать разрешения на чтение для этого пользователя.
Однако вы должны знать, что командная строка не волшебная. Он не может и не позволяет пользователю делать то, что он обычно не может делать. Функции, предоставляемые командной строкой, по-прежнему регулируются системой безопасности. Пользователь, не имеющий доступа на чтение / запись к папке, не может использовать rd
или del
для ее удаления. Если они не имеют доступа на чтение к папке, они не могут cd
в него.
Я бы посоветовал вам действительно подумать о том, что вы пытаетесь достичь. Блокировка команды похожа на удаление дверной ручки. Это не мешает открытию двери. Если бы вы хотели защитить дверь, вы бы заперли ее.
Допустим, вы хотите заблокировать доступ к команде shutdown
для ваших пользователей. Это не мешает им выключить систему. Есть буквально дюжина способов выключить компьютер. Все, что вы делаете, блокирует один конкретный путь. Вместо этого вы должны использовать политику безопасности, чтобы лишить пользователей права выключать компьютер. Таким образом, любая попытка выключить машину будет заблокирована - независимо от того, как они пытаются это сделать. Это политика по умолчанию на серверах.
Изменение разрешений безопасности по умолчанию в каталоге Windows, как правило, также является плохой идеей. Это может иметь последствия, о которых вы даже не думаете. И они могут быть не сразу очевидны.
Запустите редактор, набрав secpol.msc в диалоге запуска и перейдя к Политике управления приложениями, а затем к AppLocker и Исполняемым правилам.
Щелкните правой кнопкой мыши и создайте исполняемые правила и нажмите Далее и выберите пользователей, которых вы хотите разрешить или запретить. Затем File Path и Next, затем Browse Files и используйте *.*
Вы можете дать ему имя и комментарий, нажав Далее или просто нажав Создать.
Вы также можете сказать Запретить пользователя X для *.*
файле / папке / пути. Тем не менее, вам придется занести в белый список все приложения, включая Word, Firefox и даже стандартные инструменты Windows.
Скажите Да, чтобы создать правила по умолчанию.
Вам необходимо переместить новые правила в начало списка, чтобы они имели приоритет над другими правилами.
Примечание. Выключение - это EXE-файл, поэтому он заблокирует его. Однако встроенные команды DOS, такие как CD, MD, RD, являются частью DOS, поэтому они не будут блокироваться таким образом. Разрешение только для чтения файлов может блокировать их для файлов / папок, которые не должны иметь разрешений на запись.