Sugestão de Configuração para os avisos Bloqueio/Vencimento de conexões PPPoE
Lembrando novamente que são apenas sugestões e caso as mesmas não funcionem corretamente ou haja a necessidade de adaptar as regras a uma versão mais antiga ou mais nova do Mikrotik/RouterBoard, cabe ao técnico responsável efetuar os ajustes.
1-Abra o Winbox
2-Clique no menu New Terminal
Criar lista de sites autorizados
Neste passo, você deverá criar uma Address-List chamada “sites permitidos” que será usada posteriormente para criação das regras de bloqueio e permissão.
Copie e altere o script abaixo. Substitua o x.x.x.x pelo IP do servidor onde encontram-se os avisos, depois cole no terminal do Winbox
Criar regras para bloqueio do tráfego dos clientes nas Address-Lists
As regras a seguir tem a finalidade de bloquear o tráfego dos clientes que estiverem na Address-List “aviso_permanente”.
Copie e cole no terminal do Winbox para que elas sejam aplicadas.
É sempre interessante manter estas regras antes de qualquer outra regra.
Criar regra de redirecionamento para os avisos
Os comandos a seguir, criam algumas regras de redirecionamento para os clientes que estão nas Address-Lists “aviso_permanente” direcionando todo o tráfego HTTP (navegação) para um servidor na porta 8081 e também direcionando os clientes na Address-List “aviso_temporario” para um aviso em um servidor com a porta 8082.
É interessante manter também estas regras antes de qualquer outra.
Criar Script para remoção dos IPs do aviso_temporario
O IP do cliente é adicionado a Address-List (aviso_permanente e aviso_temporario) através do Radius. Estes IPs ficarão na Address-lists durante toda a conexão do cliente. Isto é desejado caso o cliente esteja bloqueado, já que o mesmo não poderá navegar até que seja paga a fatura em aberto.
Porém, para o aviso_temporario (Aviso para os clientes com débito, mas não bloqueados), este não é o comportamento desejado.
Como o Mikrotik/RB atualmente não possui nenhum meio de definir quanto tempo o IP do cliente ficará na Address-List, faz-se necessário a configuração de um script que monitore constantemente estes IPs na address-list aviso_temporario e remova-os após um determinado tempo para que o cliente volte a navegar normalmente.
Abaixo encontra-se uma sugestão de configuração de um script no Scheduler do mikrotik:
fonte : http://wiki.vigo.com.br/mikrotik:avisos:pppoe
Lembrando novamente que são apenas sugestões e caso as mesmas não funcionem corretamente ou haja a necessidade de adaptar as regras a uma versão mais antiga ou mais nova do Mikrotik/RouterBoard, cabe ao técnico responsável efetuar os ajustes.
1-Abra o Winbox
2-Clique no menu New Terminal
Criar lista de sites autorizados
Neste passo, você deverá criar uma Address-List chamada “sites permitidos” que será usada posteriormente para criação das regras de bloqueio e permissão.
Copie e altere o script abaixo. Substitua o x.x.x.x pelo IP do servidor onde encontram-se os avisos, depois cole no terminal do Winbox
- Código:
/ip firewall address-list
add address=x.x.x.x comment="" disabled=no list="sites permitidos"
Criar regras para bloqueio do tráfego dos clientes nas Address-Lists
As regras a seguir tem a finalidade de bloquear o tráfego dos clientes que estiverem na Address-List “aviso_permanente”.
Copie e cole no terminal do Winbox para que elas sejam aplicadas.
- Código:
/ip firewall filter
add action=accept chain=forward comment="" disabled=no \
dst-address-list="sites permitidos" dst-port=80 protocol=tcp \
src-address-list="aviso_permanente"
add action=accept chain=forward comment="" disabled=no dst-port=53 protocol=\
udp src-address-list="aviso_permanente"
add action=accept chain=forward comment="" disabled=no dst-port=53 protocol=\
tcp src-address-list="aviso_permanente"
add action=drop chain=forward comment="" disabled=no dst-address-list=\
"!sites permitidos" dst-port=!80 protocol=tcp src-address-list=\
"aviso_permanente"
move [find src-address-list="aviso_permanente"] 0
É sempre interessante manter estas regras antes de qualquer outra regra.
Criar regra de redirecionamento para os avisos
Os comandos a seguir, criam algumas regras de redirecionamento para os clientes que estão nas Address-Lists “aviso_permanente” direcionando todo o tráfego HTTP (navegação) para um servidor na porta 8081 e também direcionando os clientes na Address-List “aviso_temporario” para um aviso em um servidor com a porta 8082.
- Código:
/ip firewall nat
remove [find src-address-list="clientes bloqueados"]
remove [find src-address-list="aviso_de_bloqueio"]
add action=dst-nat chain=dstnat comment="Redirecionamento para o aviso Bloqueio" \
disabled=no dst-address-list=\
"!sites permitidos" dst-port=80 protocol=tcp src-address-list=\
"aviso_permanente" to-addresses=x.x.x.x to-ports=8081
add action=dst-nat chain=dstnat comment="Redireciona para o aviso de Vencimento" \
disabled=no dst-address-list=\
"!sites permitidos" dst-port=80 protocol=tcp src-address-list=\
"aviso_temporario" to-addresses=x.x.x.x to-ports=8082
move [find src-address-list="aviso_temporario"] 0
move [find src-address-list="aviso_permanente"] 0
É interessante manter também estas regras antes de qualquer outra.
Criar Script para remoção dos IPs do aviso_temporario
O IP do cliente é adicionado a Address-List (aviso_permanente e aviso_temporario) através do Radius. Estes IPs ficarão na Address-lists durante toda a conexão do cliente. Isto é desejado caso o cliente esteja bloqueado, já que o mesmo não poderá navegar até que seja paga a fatura em aberto.
Porém, para o aviso_temporario (Aviso para os clientes com débito, mas não bloqueados), este não é o comportamento desejado.
Como o Mikrotik/RB atualmente não possui nenhum meio de definir quanto tempo o IP do cliente ficará na Address-List, faz-se necessário a configuração de um script que monitore constantemente estes IPs na address-list aviso_temporario e remova-os após um determinado tempo para que o cliente volte a navegar normalmente.
Abaixo encontra-se uma sugestão de configuração de um script no Scheduler do mikrotik:
- Código:
/system scheduler
add disabled=no interval=30s name=atualiza_lista_aviso_vencimento \
on-event=":foreach ip in=[/ip firewall address-list find list=\"aviso_temporario\"] do={/ip firewall address-list remove \$ip}" \
policy=ftp,reboot,read,write,policy,test,winbox,password,sniff,sensitive,api start-time=startup
fonte : http://wiki.vigo.com.br/mikrotik:avisos:pppoe
Última edição por Marcio Marques em Dom 10 Mar - 11:53, editado 1 vez(es)