Vou explicar o meu problema da melhor maneira possível.
Eu tenho um roteador. As pessoas podem se conectar ao meu roteador e, quando a conexão é estabelecida, eu quero que eles vejam uma página da Web na qual possam controlar outro dispositivo. A página da web é local em um pi de framboesa e já é funcional, eu só não quero que os usuários acessem 192.168.1.245, já que isso não é muito fácil de usar.
Como eu disse, a página da web só é acessível se você estiver conectado à rede Wi-Fi. Eu li algo sobre portais cativos (com cachorro Wi-Fi), mas eles precisam de um servidor de autenticação, isso é verdade? (que eu não tenho e não tenho o conhecimento nem o tempo para configurar este servidor) Eu uso o OpenWRT no roteador.
Meu objetivo é conceder acesso somente a uma página da Web e restringir todos os outros acessos à Internet. Mas eu não tenho absolutamente nenhuma pista sobre como abordar isso. (Eu instalei o OpenWRT no TP-Link AC1750) Eu ainda preciso ter uma conexão com a internet, já que eu preciso do SSH no pi do framboesa.
Tenho muito pouca ou nenhuma experiência em engenharia de rede e estou ficando muito desesperado.
Depois de alguma googline eu tentei estes iptables no meu firewall:
iptables -P FORWARD ACCEPT
iptables -A INPUT -m state --state INVALID -j DROP
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -s 192.168.1.1 -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
iptables -P INPUT DROP # Drop everything we don't accept
iptables -A INPUT -s 192.168.1.252 -j ACCEPT
iptables -A OUTPUT -d 192.168.1.252 -j ACCEPT
iptables -A INPUT -s 192.168.1.1 -j ACCEPT
iptables -A OUTPUT -d 192.168.1.1 -j ACCEPT
iptables -P INPUT DROP
iptables -P OUTPUT DROP
O resultado que espero:
Bloqueie todos os endereços, exceto os 192.168.1.1
e .252
Aceitar conexões SSH de entrada via ethernet
O resultado que recebi:
Bloqueado todos os endereços, exceto o 192.168.1.252
(o painel de configuração não está acessível)
Conexões SSH bloqueadas via ethernet
Não é possível conectar-se ao roteador via Wi-Fi mais. (Meu laptop pode tho, desde que eu já estava conectado ou algo assim?)
Quando faço ping para 252
recebo respostas, quando faço ping de 192.168.1.1
, estou recebendo uma resposta de tempo limite (por isso é descartada?) e quando faço ping em qualquer outro endereço na submask de rede ( 192.168.1.xxx
) Eu fico inacessível. (por isso é rejeitado?)