Boa noite,
Como pretendo fazer um Captive Portal em meu servidor resolvi instalar um Apache para exibir as páginas de autenticação ou seja quando o usuário não estiver autenticado ele ficará vendo está página em toda sua requisição WEB. O problema é que quando acessavamos algum endereço de IP a página era exibida mas ao se utilizar endereços isto não acontecia pois ele não conseguia acesso até o DNS. Pesquisei um pouco pela internet e vi alguns falando sobre a instalação de um servidor DNS no próprio servidor, fiz isso mas não achei muito interessante então pensando sobre regras de iptables me veio a grande idéia de simplesmente redirecionar os acessos a porta 53. As regras que utilizei para Bloquear acesso de MAC não liberados, redirecionar a porta 80 para meu apache, permitir acesso ao DNS foram as seguintes:
Ainda estou brincando com o servidor e hoje estava querendo liberar acesso exclusivamente para os MAC aqui de casa, garantindo assim que nenhum vizinho vai pegar meu sinal e utilizar. Demorei algum tempo para conseguir regras que funcionassem efetivamente.
Liberar acesso de tal MAC ADDRESS:
iptables -t nat -A PREROUTING -i INTERFACE_INTERNA -m mac --mac-source MAC -j ACCEPT
Redirecionar porta 80 para 8080
iptables -t nat -A PREROUTING -i INTERFACE_INTERNA -p tcp --dport 80 -j REDIRECT --to-port 8080
Liberar acesso somente ao servidor DNS:
iptables -t nat -A PREROUTING -i INTERFACE_INTERNA -p udp --dport 53 -j DNAT --to IP:53
Bloquear todos os acessos:
iptables -t nat -A PREROUTING -i INTERFACE_INTERNA -j DROP
Matheus
PS: Se as mesmas não estiverem funcionando, não se esqueca de dar uma verificada nas suas regras atuais de iptables pois pode ter algo proibindo ou liberando tudo antes. Então fique atento.
Be First to Comment