Может наступить время, когда вам нужно написать скрипт или удаленно подключиться к ПК и запустить команду для включения или отключения брандмауэра Windows. Для большинства ИТ-сред использование групповой политики является самым простым способом настройки брандмауэра Windows на клиентских компьютерах.
Это также самый простой способ добавить исключения портов для таких служб, как HTTP, общий доступ к файлам, программные приложения и многое другое. Однако также полезно знать, как настроить брандмауэр Windows из командной строки на случай, если у вас есть компьютеры и серверы, которых нет в Active Directory.
Управление брандмауэром Windows из командной строки
Сначала, чтобы узнать, включен ли брандмауэр Windows на сервере или компьютере, введите в командной строке следующую команду:
netsh advfirewall показать все профили
Убедитесь, что вы открыли командную строку администратора (нажмите «Пуск», введите CMD, затем щелкните правой кнопкой мыши командную строку и выберите « Запуск от имени администратора» ). Вы должны получить что-то похожее на то, что показано ниже:
По умолчанию вы должны увидеть три отдельных списка: настройки профиля домена, настройки личного профиля и настройки общего профиля. Эти три соответствуют трем состояниям, в которые вы можете поместить каждое сетевое соединение на вашем компьютере. Если вы подключены к домашней сети и выбрали опцию « Домашняя сеть», будут применены настройки частного профиля.
Состояние означает, что брандмауэр включен или выключен. Политика брандмауэра сообщает вам, какие входящие и исходящие политики применяются к каждому профилю.
Чтобы отключить брандмауэр для определенного профиля, вы должны использовать следующую команду:
netsh advfirewall выключил состояние privateprofile
Другими параметрами являются currentprofile, publicprofile, domainprofile и allprofiles . Поэтому, если вы хотите полностью отключить брандмауэр, вы должны использовать все профили вместо частного. Чтобы снова включить, просто поставьте в конце вместо выключения .
Откройте порт в брандмауэре с помощью командной строки
А что если вы хотите открыть порт в брандмауэре с помощью командной строки? Это тоже просто!
Допустим, вы хотите открыть порт 3389, который предназначен для удаленного рабочего стола в Windows. Вы просто запустите эту команду:
netsh advfirewall firewall add rule name = протокол "Open Remote Desktop" = TCP dir = в localport = 3389 action = allow
Команда довольно длинная, но ее довольно легко сломать. Вы добавляете правило, даете ему имя, выбираете протокол (TCP или UDP), выбираете направление (In или Out), назначаете ему номер порта и выбираете действие (Allow или Deny).
Если вы запустите эту команду, а затем перейдите к просмотру разрешенных приложений в брандмауэре Windows, вы увидите, что элемент Remote Desktop теперь проверен:
Если вам нужно открыть диапазон портов, просто используйте простую черту. Например, здесь я открываю порты 600o - 7000 для исходящего трафика UDP:
netsh advfirewall firewall add rule name = протокол "UDP ports" = UDP dir = out localport = 6000-7000 action = allow
Существует много более сложных команд, которые можно использовать для управления всеми аспектами брандмауэра Windows, поэтому обязательно используйте /? символы в конце любой команды, чтобы увидеть все варианты и примеры.