A partir da sua edição, você é um (W) ISP e gostaria de redirecionar todos para um painel de controle de faturamento se eles não pagassem suas contas. Você gostaria de fazer isso usando ferramentas de código aberto. Eu coloquei uma solução usando iptables
e um servidor web de sua escolha. Usando iptables
, eu simplesmente DNAT
de todos os acessos na porta 80
(HTTP) e DROP
tudo, exceto HTTP e DNS. Não importa o que o usuário digita no navegador, não importa o endereço DNS que deseja resolver, o redirecionador da porta 80 envia o tráfego para o seu portal de cobrança.
Tendo essa solução em mente, você pode começar a criar uma lista de problemas que precisam ser resolvidos para que isso funcione:
- Todo o tráfego precisa (no final das contas) passar pelo seu
iptables
roteador. Se você já tiver outros tipos de hardware, precisará atualizar a pergunta porque é uma limitação significativa. - O roteador
iptables
precisa saber os endereços IP dos clientes que precisam ser banidos. Ele também precisa de uma maneira com script de atualizar rapidamente suas regras. Obter a lista de IPs estáticos que precisam ser banidos não deve ser um problema. Obter a lista de IPs dinâmicos que precisam do mesmo tratamento pode ser um pouco mais difícil, dependendo de como eles chegam lá, mas isso deve ser viável. Se o IP falhar, você pode sempre combinar no endereço MAC! - Você precisa ter um servidor da Web em um endereço estático que só atenda ao seu portal. Para uma melhor experiência, este servidor web deve servir dois sites: Um site padrão que usa uma regra de reescrita para servir uma página de redirecionamento HTTP, não importa qual URL foi solicitada, e um site virtual baseado em nome que implementa seu portal real.
Cada uma dessas balas precisaria ser abordada separadamente.