Как настроить Windows Defender Firewall (или нужен аналог iptables)?
Всем доброго времени суток.
Подскажите пожалуйста варианты: или что посмотреть в плане настройки Windows Defender, или же аналоги iptables.
Суть проблемы:
Есть OpenVPN подключение, есть некоторые домены в интернете, доступ к которым разрешен, нужно запретить любой другой доступ в интернет, дополнительно хочется иметь возможность хранить настройки конфигурации для фаервола в виде отдельного файла для импорта на аналогичные системы.
Как это решается на линукс:
iptables - дает возможность блокировать трафик по сетевому интерфейсу, а так можно ограничить доступ по доменным именам.
Для Windows: Windows Defender - всё в целом хорошо, можно настроить из командной строки и тд, но, как я понял, он не умеет блокировать доступ по сетевым интерфейсам, а также в Custom Rule в scope нельзя использовать доменные имена, только IP. Плюс забавный момент с WSL2, который игнорирует настройки Windows Defender. Возможность создания правил по приложению не нужна. TinyWall - нет возможности добавлять правила по доменным именам, точно также отсутствует блокировка соединений в зависимости от сетевого интерфейса.
Не совсем понятна задача. Если при подключении OpenVPN переписывается основной шлюз, то весь трафик пойдет в него и блокировка трафика по интерфейсу ни к чему не приведет, поскольку он идет в туннель. А если основной шлюз не переписывается, то при чем тут вообще OpenVPN?
mureevms,
> Если при подключении OpenVPN переписывается основной шлюз, то весь трафик пойдет в него
Не весь трафик идет через OpenVPN, также подключение к OpenVPN можно отключить и
плюс пользователь может изменить OVPN файл, добавив route-nopull.
>блокировка трафика по интерфейсу ни к чему не приведет, поскольку он идет в туннель.
в iptables грубо говоря можно сделать такие правила
-A OUTPUT -o eth0 -j DROP
-A OUTPUT -o tun0 -j ACCEPT
-A OUTPUT -o eth0 -d OPENVPN_HOST --dport 1194 -j ACCEPT
что позволит заблокировать весь трафик в обход VPN.
Сделайте на уровне маршрутизации, фаервол не нужен:
1. Добавить роут до ВПН сервера через физичейсий интерфейс
2. Удалить шлюз по умолчанию
3. При подключении к ВПН серверу шлюз (подсети) на клиенте перепишется через туннель
Тем самым, у него будет доступ только до ВПН сервера и весь (разрешенный) трафик идет через него. Тот который не идет - не идет никуда, поскольку ДГВ в системе нет.
> Не весь трафик идет через OpenVPN, также подключение к OpenVPN можно отключить и плюс пользователь может изменить OVPN файл, добавив route-nopull.
Но мне все же не понятно, при чем тут блокировка сайтов. Вероятно, более понятно будет после описания что есть, что хочется, что сделано и что идет не так. Пока видно, что вы описываете задачу с конца. С другой стороны, если пользователь не должен менять конфиг, надо забрать у него такие права. А если может и понимает, что делает, то и фаервол он тоже перенастроит. Т.е. решать надо на стороне сервера или шлюза, если такое возможно, а не на сторое клиента
mureevms,
>Но мне все же не понятно, при чем тут блокировка сайтов. В
Требования заказчика, что машины для разработки не должны ходить в интернет.
>Вероятно, более понятно будет после описания что есть, >что хочется, что сделано и что идет не так.
Так всё прекрасно можно настроить, если рабочие машины на базе линукс. Как раз iptables это позволяет. Но некоторые проекты требуют использование excel (и именно excel, так как есть клиентский код на VBA, который только в excel и работает), как итог проверяю есть ли возможность использовать Windows в качестве операционки.
> Т.е. решать надо на стороне сервера или шлюза, если такое возможно, а не на сторое клиента
С радостью, но настраивается это всё дело на ноутбуках, которые выносятся за пределы офиса, поэтому вариант с настройкой шлюза невозможен.
Valerii Konchin, Давайте начнем с того, есть ли рут/админ права на этих ноутах? Если есть, то все тщетно, разрабы разберутся что сделано и переделают как надо будет им.
Все же у меня до сих непонимание происходящего.
1. В интернет ходить совсем нельзя? А как гуглить, обновления ставить, плагины там к IDE да и куча всего. Сейчас невозможно в этой среде работать без интернета.
2. Когда ноут в офисе, просто не маршрутизируйте эту подсеть в интернет
3. Когда ноут вне офиса надо включить ВПН, чтобы попасть в офисную сеть?
4. Как это сделать, если инета нет?
5. Или для чего вообще нужен ВПН?
mureevms,
>Давайте начнем с того, есть ли рут/админ права на этих ноутах?
Нету
>В интернет ходить совсем нельзя? А как гуглить, обновления ставить, плагины там к IDE да и куча всего. Сейчас >невозможно в этой среде работать без интернета.
Только до VPN сервера.
>2. Когда ноут в офисе, просто не маршрутизируйте эту подсеть в интернет
>3. Когда ноут вне офиса надо включить ВПН, чтобы попасть в офисную сеть?
В самом офисе, кроме WiFi роутера ничего нет, вся инфраструктура грубо говоря в облаках и подключение к ней возможно через VPN.
Обновления и тд можно ставить через кэширующий сервер внутри VPN (для Windows есть chocolatey, который позволяет использовать свои собственные сервера, а не публичные, соответственно установка софта будет с них). С linux еще проще.
>4. Как это сделать, если инета нет?
"Нету ножек - нет и мультиков"(c)
Нет инета - нет работы)
>5. Или для чего вообще нужен ВПН?
Для объединения всех устройств, раскиданных по разным локациям, в локальную сеть.
Valerii Konchin, Ого. Чем не подходит вариант с маршрутизацией и отключением DGW?
Сделайте на уровне маршрутизации, фаервол не нужен:
1. Добавить роут до ВПН сервера через физичейсий интерфейс
2. Удалить шлюз по умолчанию
3. При подключении к ВПН серверу шлюз (подсети) на клиенте перепишется через туннель
Тем самым, у него будет доступ только до ВПН сервера и весь (разрешенный) трафик идет через него. Тот который не идет - не идет никуда, поскольку ДГВ в системе нет.