Я развертываю приложение ASP.NET в бета-версии и хочу ограничить доступ по протоколу HTTP к нескольким избранным IP-адресам. Учитывая конфигурацию нашей среды, для меня самый простой способ добиться этого - это добавить в белый список IP-адресов на самих веб-серверах. Могут быть последствия, связанные с производительностью, конфигурацией и, возможно, многим другим, в зависимости от того, какой процесс отвечает за это на коробке.
Было бы лучше настроить принимаемые IP-адреса в IIS, брандмауэре Windows или другом альтернативе?
Вы можете использовать ограничения IP.
Откройте диспетчер IIS> Ограничения IPv4-адресов
Щелкните Разрешить, чтобы разрешить IPv4-адресу или диапазону IPv4-адресов для подключения к службе управления.
В диалоговом окне «Добавить правило разрешения подключения»> щелкните «Определенный IPv4-адрес», а затем введите IPv4-адрес в поле.
Чтобы разрешить диапазон IP-адресов, щелкните диапазон IPv4-адресов, введите IPv4-адрес в поле, а затем введите маску подсети в поле Маска подсети. На панели «Действия» нажмите «Применить», а затем нажмите «Пуск».
Вероятно, вам следует настроить это в брандмауэре, а не полагаться на IIS для фильтрации по IP-адресам.
Другой вариант - список доступа на коммутаторе или маршрутизаторе, в зависимости от того, где расположены эти исходные IP-адреса.
Я предпочитаю всегда делать такие вещи на небольшом сетевом оборудовании (коммутатор, маршрутизатор, аппаратный брандмауэр). Я знал это в прошлом, когда кто-то использовал брандмауэр Windows для применения аналогичного ограничения только для того, чтобы он стал бесполезным, когда позже другой техник отключил брандмауэр Windows на всех серверах с помощью GPO.