1

Я хотел бы создать топологию сети, в которой все устройства IoT (принтер, видеорегистратор, термостат, проигрыватель BluRay и т.д.) Находятся в демилитаризованной зоне, а остальные мои устройства - в локальной сети. Обратите внимание, что использование DMZ здесь отличается от настроек DMZ на маршрутизаторах и относится к «зоне сети, в которую я помещаю устройства, которым я не доверяю, чтобы не пытаться взломать мою сеть».

Обычно это делается путем создания многоуровневых шлюзов (т. Е. Наличия шлюза в демилитаризованной зоне для защиты локальной сети) или создания собственного трехстороннего шлюза со специальными правилами iptables. Я делал оба раньше, но оба страдают от проблемы, заключающейся в том, что они представляют собой решение уровня 3, и я ищу решение уровня 2, в первую очередь для сохранения работы mDNS и Service Discovery.

Я думаю, что хочу разрешить:

LAN - [что угодно] -> DMZ

DMZ - [установлено + трансляция + DHCP] -> локальная сеть

Однако, глядя на документацию ebtables , я не вижу разницы между установленными ip-соединениями и новыми ip-соединениями, что является обязательной особенностью моего плана.

Итак, есть две возможности:

1) Определение того, как использовать ebtables чтобы делать то, что я хочу; или же

2) Использование подхода с двойным NAT и наличие устройства (RasPi или чего-то еще) прослушивают широковещательные передачи Service Discovery в DMZ и ретранслируют их в локальной сети.

Последний вопрос: какой подход возможен и / или прост в управлении с точки зрения того, как долго я буду возиться с вещами, чтобы заставить его работать?

Примечание: добавление тегов под iptables вместо ebtables потому что я, очевидно, не могу создать этот тег ...

1 ответ1

0

Во-первых, ebtables - это протокол Link-Layer, и поэтому он не может ничего знать о ESTABLISHED, RELATED соединениях. Согласно Википедии,

Канальный уровень - это группа методов и протоколов связи, которые работают только на канале, к которому физически подключен хост.

Итак, как он может знать, что этот пакет с некоторого удаленного URL-адреса является следующим пакетом в серии, которая была инициирована локально?

Что касается вашего второго решения, мне не ясно, чего вы пытаетесь достичь. Как правило, DMZ используются для ограничения объема трафика, передаваемого между ним и локальной сетью без DMZ, именно для предотвращения обнаружения и / или зондирования сети и т.д. Вы вместо этого пытаетесь увеличить протоколы и связи между ними.

Если вы хотите сделать это, почему бы не создать единую локальную сеть, охватывающую как DMZ, так и не DMZ, а затем проследить трафик через iptables? Таким образом, вы разрешите не-IP-трафик между ними, но можете заблокировать IP-трафик, например, сбросить все соединения ssh/telnet из одной зоны в другую.

В качестве альтернативы вы можете использовать своего рода Man in the Middle, то есть компьютер с интерфейсом в не-DMZ и один в DMZ, с включенной пересылкой IPv4, но управляемой iptables , и dhcp-relay чтобы разрешить прохождение DHCP запросы (версия, предоставляемая dnsmaq , особенно проста в настройке). Кроме того, вы можете включить Proxy-ARP на этом компьютере MIM, чтобы он отвечал на запросы ARP от имени компьютеров, находящихся на карантине.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .