Фильтрация интернет-запросов в ОС Windows - PullRequest
1 голос
/ 10 февраля 2010

Я заинтересован в написании фильтра родительского контроля, который можно использовать для мониторинга и / или перенаправления всех исходящих интернет-запросов в операционной системе Windows для настольных ПК (Vista или выше). Мне бы хотелось, чтобы сам фильтр имел неограниченный доступ к Интернету, чтобы он мог обращаться к веб-службе в Интернете во время запросов приложений / браузеров. Для одобренного трафика я хотел бы просто пропустить запрос. Для запрещенного трафика я бы хотел перенаправить на страницу пользовательского ответа. Шаги будут выглядеть так:

  1. Фильтр URL получает запрос.
  2. Фильтр передает URL-адрес веб-службе для утверждения.
  3. Утвержденный запрос передается на интернет-шлюз.
  4. Запрещенные запросы перенаправляются на пользовательскую страницу ошибок. Скорее всего, страница ошибки будет в сети.

У меня вопрос, где именно я должен реализовать этот фильтр в сетевом стеке Windows? В статьях о платформе фильтрации Windows я вижу, что есть место для реализации стороннего родительского контроля, но сможет ли этот фильтр инициировать и получать собственный сетевой трафик, если он может распознавать свои собственные запросы и избегать застревания в бесконечной рекурсивной ситуации? Возможно, я мог бы хранить фильтры локально, но я бы предпочел посмотреть на их хранение в Интернете, где они могут использоваться несколькими клиентами, и он менее подвержен вмешательству.

Если этот сторонний блок родительского контроля не является правильным местоположением, есть ли другое место в архитектуре WFP, которое позволило бы мне реализовать фильтр, который я описал?

1 Ответ

2 голосов
/ 10 февраля 2010

Я бы использовал плагин Squid для этого. Который является прикладным уровнем или уровнем OSI 7. Теперь у вас есть 2 варианта. Вы можете заставить все браузеры на машине использовать прокси-сервер. Другой вариант - использование маршрутизатора для прозрачного перенаправления для принудительного выполнения всех HTTP-запросов через squid. Это сетевой уровень, решение OSI уровня 3 (Домашние маршрутизаторы, вероятно, не могут сделать прозрачное перенаправление. Я знаю, что shorewall может сделать это.)

И да, все это работает с Windows или любой другой странной ОС, которую вы любите использовать.

...