Общие методы определения и настройки исключений
Если работа приложения или службы нарушается из-за блокирования брандмауэром Windows незапрашиваемого входящего трафика, то вместо того, чтобы отключать сам брандмауэр Windows, следует задать ему исключения таким образом, чтобы блокируемый трафик был разрешен. Отключение брандмауэра Windows не рекомендуется, так как это сделает Ваш компьютер уязвимым для злоумышленников и вредоносных программ, если Вы при этом не используете сетевой экран от стороннего производителя.
Как описывается в разделе данной статьи "Игровой, веб- или иной сервер не доступен из Интернета", брандмауэр Windows уведомляет пользователя, когда приложения пытаются прослушивать порты. В зависимости от выбранного пользователем варианта ответа в диалоговом окне Оповещение системы безопасности Windows (Windows Security Alert), приложение либо добавляется в список исключений на вкладке Исключения (Exceptions), при этом трафик блокируется (опция Блокировать (Keep blocking)), либо добавляется в список исключений с разрешением трафика (опция Разблокировать(Unblock)), либо не добавляется в список и блокируется (опция Отложить (Ask Me Later)). Если Вы выбираете вариант Блокировать (Keep Blocking), разрешить трафик для этого приложения в случае необходимости Вы сможете из вкладки Исключения (Exceptions) диалогового окна Брандмауэр Windows (Windows Firewall). Исключения могут задаваться как приложениями при использовании API брандмауэра Windows, так и вручную.
Службы Windows, в отличие от приложений, не задействуют оповещения брандмауэра Windows для автоматического создания и активации исключений. Исключения для служб Windows задаются либо службой, использующей API брандмауэра Windows, либо ручной настройкой путем указания исключаемых программ или портов. Если служба запускается исполняемым файлом (таким, как *.exe), Вы можете задать исключение для программы. Если служба запускается другой службой, подобной Svchost.exe, Вам следует указать исключаемые порты.
Если требуется задать исключения для портов или сообщений ICMP, используемых какой-либо службой, то для определения нужных TCP или UDP портов, а также сообщений ICMP, обращайтесь к документации данной службы Windows или на соответствующий веб-сайт. Основываясь на документации, укажите необходимые исключения для портов и сообщений ICMP. Если же указания на используемые службой порты и ICMP сообщения в документации отсутствуют, выполните следующую последовательность действий:
- На вкладке Дополнительно(Advanced) диалогового окна Брандмауэр Windows (Windows Firewall) нажмите Параметры(Settings) в разделе Ведение журнала безопасности(Security Logging) и включите опцию Записывать пропущенные пакеты (Log dropped packets). Нажмите ОК для сохранения параметров ведения журнала и ОК для закрытия диалогового окна Брандмауэр Windows(Windows Firewall).
- Запишите IP-адрес другого клиентского компьютера, а затем попытайтесь, запустив на нем клиентское или равнозначное приложение, подключиться к компьютеру, на котором работает брандмауэр Windows и ведется журнал регистрации событий брандмауэра. Например, если на сервере работает почтовый сервер, запустите соответствующую почтовую программу на клиентском компьютере.
- После того, как попытки программы-клиента связаться с сервером закончатся неудачей, вернитесь к серверу и просмотрите с помощью Проводника Windows (Windows Explorer) содержимое файла Pfirewall.log, хранящегося в корневой папке Windows.
- Среди последних записей в файле журнала Pfirewall.log отыщите те, в которых отмечены отвергнутые пакеты с IP-адреса, совпадающего с IP-адресом клиентского компьютера. В этих записях найдите части, обозначенные "dst-port". Это и есть TCP или UDP порты, для которых нужно задать исключения. Для трафика ICMP следует найти фрагменты "icmptype" и "icmpcode" и проверить их на ICMP Parameters Web page, чтобы узнать название ICMP сообщения.
Определить номера портов, используемых службой, можно также с помощью аудита, выполнив следующие шаги:
- Включите ведение журналов аудита, как описано в разделе "Инструменты для решения проблем с брандмауэром Windows" данной статьи.
- Перезагрузите компьютер. Многие службы настроены на запуск при старте системы, и после перезагрузки события запуска служб будут зарегистрированы.
- Используйте оснастку Службы (Services), как описано в разделе " Инструменты для решения проблем с брандмауэром Windows" данной статьи, чтобы убедиться, что служба запущена.
- Воспользуйтесь оснасткой Просмотр событий (Event Viewer), как описано в разделе "Инструменты для решения проблем с брандмауэром Windows" данной статьи, чтобы найти события Аудита отказов (Failure Audit), обозначенные в журнале безопасности кодом 861. Эти события относятся к приложениям или службам, прослушивающим TCP или UDP порты, чей трафик не был разрешен брандмауэром Windows. В тексте сообщения об ошибке содержатся имя и путь к запросчику, код процесса, его тип – приложение или служба, и номера TCP или UDP портов.
Если можно отследить программу или службу по записям событий Аудита отказов (Failure Audit), используйте содержащуюся в них информацию о TCP или UDP портах для задания исключений. В качестве исключаемых необходимо указать все порты, запрашиваемые программой или службой.