DMZ de Camada 2 Acessível: ebtables?

1

Eu gostaria de fazer uma topologia de rede onde todos os dispositivos de IoT (impressora, DVR, termostato, leitor de Blu-Ray, etc.) estejam todos em uma DMZ e os demais dispositivos estejam todos na LAN. Note que o uso de DMZ aqui é diferente das configurações DMZ nos roteadores e se refere a uma "zona da rede Eu coloquei dispositivos nos quais eu não confio para não tentar hackear minha rede ".

Normalmente, isso é feito através da criação de gateways em camadas (por exemplo, ter um gateway dentro da DMZ para proteger a LAN) ou ter um gateway de 3 vias personalizado com regras especiais de iptables. Eu já fiz as duas coisas antes, mas ambos sofrem do problema de que eles são uma solução de camada 3 e estou procurando uma solução de camada 2, principalmente para preservar o mDNS e o Service Discovery.

O que eu acho que quero é permitir:

LAN - [qualquer coisa] - > DMZ

DMZ - [estabelecido + transmissões + DHCP] - > LAN

No entanto, olhando para a documentação de ebtables , não parece que eu possa diferenciar entre conexões ip estabelecidas e novas conexões ip, que é um recurso necessário do meu plano.

Então, há duas possibilidades que vêm disso:

1) Determinar como usar ebtables para fazer o que eu quero; ou

2) Usando a abordagem de NAT duplo e tendo um dispositivo (RasPi ou algo assim), ouça as difusões de Service Discovery na DMZ e retransmita-as na LAN.

A pergunta final: Qual abordagem é possível e / ou mais fácil de gerenciar a partir da perspectiva de quanto tempo eu vou estar mexendo com as coisas para que ela funcione?

Nota: marcação em iptables em vez de ebtables , porque aparentemente não consigo criar essa tag ...

    
por iAdjunct 29.02.2016 / 02:32

1 resposta

0

Primeiro, ebtables é um protocolo de camada de link e, como tal, não pode saber nada sobre ESTABLISHED, RELATED de conexões. De acordo com a Wikipedia,

The link layer is the group of methods and communications protocols that only operate on the link that a host is physically connected to.

Então, como pode saber que esse pacote de alguma URL remota é o próximo pacote de uma série que foi iniciada localmente?

Quanto à sua segunda solução, não está claro para mim o que você está tentando alcançar. Geralmente, as DMZs são usadas para limitar a quantidade de tráfego trocado entre ela e a LAN não-DMZ, exatamente para impedir a descoberta e / ou a sondagem de rede, e assim por diante. Você está tentando aumentar os protocolos e as comunicações entre os dois.

Se você quiser fazer isso, por que não apenas criar uma única LAN, incluindo DMZ e não-DMZ, e, em seguida, filtrar o tráfego através de iptables ? Dessa forma, você permitirá o tráfego não-IP entre os dois, mas poderá bloquear o tráfego IP, como descartar todas as conexões ssh / telnet de uma zona para outra.

Alternativamente, você pode usar um tipo de Man in the Middle, ie um pc com uma interface no não-DMZ e um no DMZ, com o IPv4-forwarding habilitado mas controlado por iptables e dhcp-relay para permitir a transmissão de solicitações DHCP (a versão fornecida por dnsmaq é especialmente fácil de configurar). Além disso, você pode habilitar o Proxy-ARP neste computador MIM, para que ele responda às consultas ARP em nome da quarentena máquinas.

    
por 29.02.2016 / 08:12