Postado originalmente por
sosouteiro
É perfeitamente possível fazer isso pelo firewall. Aqui no provedor eu autentico o cliente por PPPoE e quando estão em débito eles passam dez minutos recebendo uma mensagem de atrazo e dez minutos navegando, dez minutos recebendo uma mensagem de atrazo e dez minutos navegando, até o bloqueio total de dois dias, no meu caso.
Isso eu fiz utilizando o adresslist, script e o scheduler (esse ultimo para ficar ligando e desligando o aviso a cada 10 min.) e, lógico, utilizando regra de firewall.