Criamos um hotspot wi-fi ou um ponto de acesso sem fio usando hostapd
o Ubuntu. Como podemos isolar clientes wifi da mesma forma que o "Isolamento de cliente" faz em alguns pontos de acesso? Existe alguma maneira de combinarmos iptables
a hostapd
aplicação de algumas regras de firewall entre clientes wifi?
Responder1
Crie uma regra iptables de entrada e saída que permita que o intervalo de endereços de origem se comunique com o roteador/gateway padrão, regras adicionais para quaisquer servidores ou outros recursos nessa sub-rede.
Crie uma regra final que descarte pacotes entre o intervalo de endereços de origem e o intervalo de endereços de origem.
iptables -A INPUT -i $WIFI -o $WIFI -s 192.168.1.0/24 -d 192.168.1.1 -j ACCEPT
iptables -A INPUT -i $WIFI -o $WIFI -s 192.168.1.0/24 -d $SOMESERVERIP -j ACCEPT
iptables -A INPUT -i $WIFI -o $WIFI -s 192.168.1.0/24 -d $SOMEOTHERSERVERIP -j ACCEPT
iptables -A INPUT -i $WIFI -o $WIFI -s 192.168.1.0/24 -d 192.168.1.0/24 -j DROP
O básico desta cadeia de eventos é:
- se estiver na sub-rede e estiver conversando com o gateway, aceite
- Se estiver na sub-rede e conversando com um servidor, aceite-o
- A regra 2 se repete até que você fique sem servidores aceitáveis
- Se estiver na sub-rede e estiver conversando com qualquer outra coisa na sub-rede, descarte-o
Responder2
Neste momento, iptables
as regras não têm efeito sobre os pacotes encaminhados diretamente pela interface wifi, de acordo comesse.
A boa notícia é que o Hostapd 2.9 tem uma opção chamada ap_isolate
que faz exatamente o que você descreveu. Você pode ler sobre issoaqui.
Depois de definir esse sinalizador, todos os pacotes de dispositivos na rede do ponto de acesso serão descartados pelo ponto de acesso.