Как ограничить сетевой доступ пользователя на многопользовательской машине Windows?

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

Я искал решение, но с небольшим успехом. Я думаю, что можно либо ограничить соединение для каждого пользователя Windows, либо "сопоставить" IP с пользователем Windows и ограничить по IP. Но, похоже, нет ничего, что позволило бы мне использовать любой из подходов. Я исследовал:

  • Использование брандмауэра Windows -> не позволяет создавать правила для пользователя, только для IP/ порта / имени процесса
  • Использование ограничений безопасности ASP.NET/IIS -> Все они являются входящими, а не исходящими.
  • Использование нескольких IP-адресов -> невозможно назначить исходящий IP-адрес соответствующему пулу приложений
  • Использование контейнеров -> Как правило, контейнеры также имеют одинаковые IP-адреса... и это все еще Technology Preview для Windows 2016
  • Использование параметров прокси-сервера.net -> не распространяется на соединения, отличные от http / https, например ado.net.

Я нашел в Linux (модуль iptables ipt_owner) именно то, что мне нужно, но переключение операционной системы не вариант. Мне нужно то же самое, но для Windows.

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

У вас есть другие идеи, которые стоит изучить?

Заранее благодарим за любую помощь, которую вы можете предоставить.

ура

1 ответ

ModSecurity сможет выполнить то, что вам нужно, поскольку он будет иметь полную видимость в поток запросов / ответов HTTP. Просто нужно сформулировать соответствующие правила для ограничения доступа, как вы описали.

Другие вопросы по тегам