Назад | Перейти на главную страницу

Правильный способ настройки брандмауэра Windows 10 для нескольких пользователей

Мы развертываем образ Windows 10 LTSC на нескольких устройствах. Изображение настраивает одного пользователя с правами администратора и второго пользователя без прав администратора. Пользователь без прав администратора является основной учетной записью для повседневного использования устройства. Другая часть конфигурации - предоставить правила брандмауэра для набора настраиваемых приложений.

Эта конфигурация брандмауэра в настоящее время вызывает у нас проблемы:

Большая часть конфигурации образа перед захватом выполняется сценариями Powershell, включая часть брандмауэра, при использовании учетной записи администратора.

Сценарий в конечном итоге вызывает из Powershell с помощью Invoke-Expression вызов netsh advfirewall ... с использованием аргументов сценария. Один пример показан ниже:

netsh advfirewall firewall add rule name='Custom App Rule' enable=Yes profile=Domain,Private,Public dir=In action=Allow protocol=any localip='Any' remoteip='Any' program="C:\Program Files (x86)\Some Company\Bin\CustomApp.exe" edge=deferapp

После этого мы можем проверить с помощью редактора брандмауэра Защитника Windows ('wf.msc'), что запись была создана (вывод из списка экспорта - текст с разделителями табуляции; вкладки изменены на запятую для экономии места):

Name,Group,Profile,Enabled,Action,Override,Program,Local Address,Remote Address,Protocol,Local Port,Remote Port,Authorized Users,Authorized Computers,Authorized Local Principals,Local User Owner,Application Package  
Custom App Rule,,All,Yes,Allow,No,C:\Program Files (x86)\Some Company\Bin\CustomApp.exe,Any,Any,Any,Any,Any,Any,Any,Any,Any,Any

Или переформатирован для наглядности:

Name = Custom App Rule
Group
Profile = All
Enabled = Yes
Action = Allow
Override = No
Program = C:\Program Files (x86)\Some Company\Bin\CustomApp.exe
Local Address = Any
Remote Address = Any
Protocol = Any
Local Port = Any
Remote Port = Any
Authorized Users = Any
Authorized Computers = Any
Authorized Local Principals = Any
Local User Owner = Any
Application Package = Any

Во время настройки не отображается сообщение об ошибке, которое могло бы указывать на проблему.

При перезагрузке системы мы автоматически выполняем вход в учетную запись без прав администратора (это сделано намеренно) и запускаем наш customapp.exe. Что, в свою очередь, вызывает неожиданное приглашение брандмауэра:

Windows Defender Firewall has blocked some features of this app
Your network administrator can unlock this app for you.
...
Path: C:\program files (x86)\some company\bin\customapp.exe
Network location: Public, private networks

И действительно, при проверке редактора брандмауэра Защитника Windows были созданы два новых правила блокировки для нашего customapp.exe: одно для TCP и одно для UDP (оба с Profile = Public). Единственное дополнительное отличие, кажется, состоит в том, что путь в «Программе» состоит только из маленьких заглавных букв. Имеет ли значение использование заглавных букв в пути при попытке сопоставить приложение с правилом?

Проблемы:

Спасибо, что нашли время, чтобы прочитать это и любые советы по этому вопросу.