Как запустить службу брандмауэра windows из командной строки на Hyper-V

В поисках ответа, как же запустить брандмауер Windows из командной строки на Hyper-V сервере, нашел первое решение на сайте microsoft:

Пример 6. Включение брандмауэра Windows

Старая команда:    netsh firewall set opmode ENABLE    
Новая команда:     netsh advfirewall set currentprofile state on

Ввожу указанные команды в консоли Hyper-V — не работает.

Немного погуглив, нахожу еще одно решение для управления службами Windows из командной строки — это команда sc.

Набираем в консоли, получаем:

sc
ОПИСАНИЕ:
       SC представляет собой программу командной строки, используемую
       для связи со службами и диспетчером управления службами.
ИСПОЛЬЗОВАНИЕ:
       sc <сервер> [команда] [имя_службы] <параметр1> <параметр2>…

       Параметр <сервер> задается в формате «\\имя_сервера».
       Для получения справки о командах введите «sc [команда]»
       Команды:
         query————Запрашивает состояние службы или перечисляет
                         состояния типов служб.
         queryex———Запрашивает расширенное состояние службы или
                         перечисляет состояния типов служб.
         start————Запускает службу.
         pause————Отправляет службе управляющий запрос PAUSE.
         interrogate——Отправляет службе управляющий запрос INTERROGATE.
         continue———Отправляет службе управляющий запрос CONTINUE.
         stop————Отправляет службе запрос STOP.
         config———-Изменяет конфигурацию службы (с сохранением).
         description——Изменяет описание службы.
         failure———Изменяет действия, выполняемые службой при сбое.
         failureflag——Изменяет флаг действий, выполняемых службой при сбое.
         sidtype———Изменяет тип SID службы.
         privs————Изменяет привилегии, требуемые для службы.
         managedaccount—Изменяет службу для пометки пароля учетной записи
                         службы как управляемого LSA.
         qc—————Запрашивает данные конфигурации для службы.
         qdescription—-Запрашивает описание службы.
         qfailure———Запрашивает действия, выполняемые службой при сбое.
         qfailureflag—-Запрашивает флаг действий, выполняемых службой при
                         сбое.
         qsidtype———Запрашивает тип SID службы.
         qprivs———-Запрашивает привилегии, требуемые для службы.
         qtriggerinfo—-Запрашивает параметры триггеров службы.
         qpreferrednode—Запрашивает предпочтительный узел NUMA службы.
         qmanagedaccount-Запрашивает, использует ли служба учетную запись с
                         паролем, управляемым LSA.
         qprotection——Запрашивает уровень защиты процессов службы.
         delete———-Удаляет службу (из реестра).
         create———-Создает службу (добавляет ее в реестр).
         control———Отправляет службе управляющий сигнал.
         sdshow———-Отображает дескриптор безопасности службы.
         sdset————Устанавливает дескриптор безопасности службы.
         showsid———Отображает строку SID службы, которая соответствует
                         произвольному имени.
         triggerinfo——Задает параметры триггеров службы.
         preferrednode—Задает предпочтительный узел NUMA службы.
         GetDisplayName—Получает параметр DisplayName для службы.
         GetKeyName——Получает параметр ServiceKeyName для службы.
         EnumDepend——Перечисляет зависимости службы.

       Следующие команды не требуют имени службы:
       sc <сервер> <команда> <параметры>
         boot————(ok | bad) Указывает, требуется ли сохранить
                         последнюю загрузку в качестве последней удачной
                         конфигурации загрузки
         Lock————Блокирует базу данных служб
         QueryLock——-Запрашивает состояние блокировки (LockStatus) базы
                         данных диспетчера управления службами (SCManager)
ПРИМЕР:
       sc start MyService

Параметры QUERY и QUERYEX:
        Если после команды query указано имя службы, будет возвращено
        состояние этой службы.  В этом случае дополнительные параметры
        не используются.  Если после команды query указаны следующие
        параметры либо ничего не указано, выполняется перечисление служб.
    type=    Тип служб для перечисления (driver, service, userservice, all)
             (по умолчанию = service)
    state=   Состояние служб для перечисления (inactive, all)
             (по умолчанию = active)
    bufsize= Размер (в байтах) буфера перечисления
             (по умолчанию = 4096)
    ri=      Номер индекса возобновления для начала перечисления
             (по умолчанию = 0)
    group=   Группа служб для перечисления
             (по умолчанию = все группы)

Примеры использования:
sc query                — Перечисление состояний активных служб и драйверов
sc query eventlog       — Отображение состояния службы eventlog
sc queryex eventlog     — Отображение расширенного состояния службы eventlog
sc query type= driver   — Перечисление только активных драйверов
sc query type= service  — Перечисление только служб Win32
sc query state= all     — Перечисление всех служб и драйверов
sc query bufsize= 50    — Перечисление с буфером размером 50 байт
sc query ri= 14         — Перечисление с индексом возобновления = 14
sc queryex group= «»    — Перечисление активных служб, не входящих в группу
sc query type= interact — Перечисление всех интерактивных служб
sc query type= driver group= NDIS     — Перечисление всех драйверов NDIS

Дальше все просто — выбираем все службы командой (пробелы после знака равно важны):

sc query type= service state= all

и в списке, упорядоченном по английскому имени, находим, как же реально называется служба брандмауэра Windows: MpsSvc

 Имя_службы: MpsSvc
Выводимое_имя: Брандмауэр Windows
        Тип                : 20  WIN32_SHARE_PROCESS
        Состояние          : 4  RUNNING
                                (STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)
        Код_выхода_Win32   : 0  (0x0)
        Код_выхода_службы  : 0  (0x0)
        Контрольная_точка  : 0x0
        Ожидание           : 0x0

 

И наконец запускаем брандмауэр Windows из командной строки:

sc start MpsSvc

Имя_службы: MpsSvc
        Тип                : 20  WIN32_SHARE_PROCESS
        Состояние          : 2  START_PENDING
                                (NOT_STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)
        Код_выхода_Win32   : 0  (0x0)
        Код_выхода_службы  : 0  (0x0)
        Контрольная_точка  : 0x0
        Ожидание           : 0x7d0
        ID_процесса        : 520
        Флаги              :

 Далее проверяем состояние службы:

sc query MpsSvc

Имя_службы: MpsSvc
        Тип                : 20  WIN32_SHARE_PROCESS
        Состояние          : 4  RUNNING
                                (STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)
        Код_выхода_Win32   : 0  (0x0)
        Код_выхода_службы  : 0  (0x0)
        Контрольная_точка  : 0x0
        Ожидание           : 0x0

Запустилась!

Проверено на Microsoft Hyper-V 2012, Windows 10Pro

Оставить ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *