+ Responder ao Tópico



  1. #1

    Question v. 2.9.6 Não consigo fazer bloqueio por horario

    Boa tarde pessoal...
    Seguinte: Ja revirei por todo o forum achei varios post sobre o assunto mas parece q na versao 2.9.6 do Mk nao funciona. Preciso fazer o seguinte.

    Um cliente meu quer que a internet dele funcione somente da 7h da manha até as 21h depois disso tem que bloquear o acesso a net,,,

    Ja fiz td o que diz por ai no forum mas nao da certo...

    Temtei pelo firewall, pela queues e nda... Será que realmente nao funciona nesta versao do Mk? e c funciona alguem ai ja conseguiu como que fez??? Tem como me passar um jeito de fazer isso?

    Agradeço desde ja a colaboração a todos.... E bom feriado...

  2. #2

    Padrão Bloqueio por horário

    Olá meu brother, como vc, pesquisei pra k...lho na net, sobre como derrubar a conexão de um determinado cliente em um horário pré-determinado, e bloquear sua conexão, logo em seguida. Estou começando agora a fusar no mk.

    Vamos ao que interessa... Acho que não é a melhor forma, mas, te garanto que funcionou.

    Obs.: (Os nomes aplicados por mim, aos procedimentos, mantém a ordem alfabética, e facilitam o meu entendimento, talvez não se aplica a vc.)

    1 - Crie um script que DERRUBE a conexão do cliente, caso ele já esteja conectado e IMPESA que ele se conecte novamente.
    Nome do script: Joao_Desativar_Desabilitar
    Policy: Deixa tudo marcado em todos os scripts. (Não me pergunte porque)
    Source:
    /ip hotspot active remove [find user=joao]
    /ip hotspot user disable joao

    2 - Crie um agendamento DIÁRIO (scheduler) para a execução deste script.
    (Desativa e Desabilita o usuario joao todos os dias as 22:00, começando na quinta-feira.
    Nome: Joao_Desativar_Desabilitar
    Start Date: Sep/06/2007
    Start Time: 22:00:00
    Interval: 1d 00:00:00
    ON Event: Joao_Desativar_Desabilitar

    3 – Crie um script que habilite o cliente, quando conveniente.
    Nome do script: Joao_Habilitar
    Policy: Deixa tudo marcado em todos os scripts. (Não me pergunte porque)
    Source:
    /ip hotspot user enable joao

    4 - Crie um agendamento DIÁRIO (scheduler) para a execução script a cima.
    (Habilita o usuario joao todos os dias as 10:00, começando na sexta dia 07.
    Nome: Joao_Habilitar
    Start Date: Sep/07/2007
    Start Time: 10:00:00
    Interval: 1d 00:00:00
    ON Event: Joao_Habilitar

    Estes procedimento simplesmente DESABILTA o usuário joão todos os dias às 22:00 e o habilita no outro dia às 10:00.
    Agora vai dar uma complicadinha, o pai do cliente quer que no final de semana se mantenha habilitado normalmente, pois o filho não estuda no sábado e nem do domingo cedo, podendo ficar na net até tarde.

    Vamos lá:
    Vc tem um agendamento que desabilita o cliente diariamente as 22:00, vamos criar um script que DESABILITE esse agendamento, para que o mesmo pare de ser executado nas sextas-feiras.

    5 - Crie um script que DESABILITE o agendamento DIARIO “João_Desativar_Desabilitar”, pois o pai permite que o filho fique conectado até tarde da sexta pro sábado e do sábado para do domingo.
    Policy: Deixa tudo marcado em todos os scripts. (Não me pergunte porque)
    Source:
    Nome do script: Joao_Suspende_Desativar_Desabilitar
    /system scheduler disable Joao_Desativar_Desabilitar
    6 - Crie um agendamento SEMANAL (scheduler) para a execução script acima.
    O mesmo suspende toda sexta às 21:50 a execução do agendamento que desabilitaria o usuário no final de semana, o que não é desejado.
    Nome: Joao_Suspende_Desativar_Desabilitar
    Start Date: Sep/07/2007
    Start Time: 21:50:00
    Interval: 7d 00:00:00
    ON Event: Joao_Suspende_Desativar_Desabilitar

    Bem, temos o seguinte: Desativa “derruba a conexão” e desabilita “impedi que se conecte” todos dos dias às 22:00 e permite que se conecte só no outro dia a partir das 10:00, com exceção do final de semana.

    Só que o agendamento desabilitado acima, precisa voltar a funcionar no domingo, pois o filho do cliente tem que estudar na segunda cedo e seu pai não quer que ele fique na net até tarde.

    Se fosse Eu, dava-lhe umas por... e botava o filha da p... pra dormir. A final, quem manda lá ?

    7 - Crie um script que HABILITA o agendamento DIARIO “João_Desativar_Desabilitar”.
    Policy: Deixa tudo marcado em todos os scripts. (Não me pergunte porque)
    Source:
    Nome do script: Joao_Habilita_Joao_Desativar_Desabilitar
    /system scheduler enable Joao_Desativar_Desabilitar

    6 - Crie um agendamento SEMANAL (scheduler) para a execução script acima.
    O mesmo habilita o agendamento diário “Joao_Desativar_Desabilitar” todos os domingos às 21:55 para que o mesmo possa ser executado as 22:00
    Nome: Joao_Habilita_Desativar_Desabilitar
    Start Date: Sep/09/2007
    Start Time: 21:55:00
    Interval: 7d 00:00:00
    ON Event: Joao_Habilita_Desativar_Desabilitar.


    Ok... Posso ter errado e ao menos, complicado, ao expor por escrito o que fiz, mas, as intenções foram as melhores.


    ah... vale lembrar que Eu uso hotspot.
    Abraços...
    [email protected] add ai.
    Última edição por Nairods; 09-09-2007 às 21:03.

  3. #3

  4. #4

    Cool Bloqueio Script Nairods

    Nairods, tudo bem ?
    Estou começando a utilizar Mikrotik e um cliente havia solicitando esse mesmo agendamento, pois as filhas passam a noite teclando e vendo filme pornô na madrugada hehehehehehehehe .
    Segui o seu script e verifiquei algo enganador.
    O script segue linha, ou seja , se o usuario não estiver logado as 22:00 o script passará em branco, nao irá desabilitar o usuario. por que ? quando ele vai no [find] e nao localiza o usuario online, ele simplesmente interrompe o script nao indo para outra linha. foi o q verifiquei aqui.
    Para a galera que tem autenticador pppoe, deverá utilizar
    ppp active remove [find name=xxxxx]
    ppp secret disable xxxxxxxx
    (xxxx é o nome do usuario.. no caso do nairods Joao)
    a solução desse script é:
    desativar primeiro e depois desabilitar
    ppp secret disable xxxxxxxx
    ppp active remove [find name=xxxxx]
    Veja se existe essa ordem do script e confirme aqui para galera.

    Agradeço a atenção de todos.

    Marcus Rocha.
    Última edição por solaretecnologia; 10-09-2007 às 19:04.

  5. #5

    Padrão Bloqueio por horário

    Caro Marcos,

    Bela observação, com a sua ajuda, também acabei de constatar meu equívocu. Coisa de principiante.
    Em um script mais longo "complexo", acho que o correto seria usar um comando que interaja sob uma condição. tipo...

    Se usuario XXX = a ativo
    faça isso
    se nao
    faça aquilo
    fim

    Mas não é o caso. Acho que é suficiente, apenas inverter a posição entre as duas linha de comando do script "Joao_Desativar_Desabilitar"
    Já testei aqui sob as duas únicas condições possíveis, usuario xxx ativo ou não ativo.

    abraço

  6. #6

    Smile

    Olá Galera..
    Puxa.. a idéia que o pessoal deu funciona.. pelo menos parece..
    Agora nos queues simple já existe um controle por horário. Mas pra quem coloca e tenta de primeira, parece que não funciona.
    Mas funciona sim..

    É o seguinte. Aquele controle que têm em cada queue simple de hora e dias da semana é quando a regra vai funcionar e não o período que o cliente vai funcionar.
    Como o mikrotik trabalha em ordem nas tabelas, se colocamos lá para o ip 192.168.0.2 funcionar das 10:00 ás 22:00, essa regra ficará ativa nesse período e fora desse período o cliente sai da regra.
    No caso se não houver mais nenhuma regra o cliente fica com velocidade liberada, ou seja, é como se deixasse ele sem regra no queue.. ficará liberado.

    No caso pra funcionar legar teriam dois jeitos. o mais fácil e o mais complicado.

    1- Fazer duas regras por clientes, uma do horário que controla e outra do horário bloqueado, no qual pode ser colocado 1k de down e 1 k de up (acho que com isso ele não vai conseguir navegar)

    2- Fazer uma regra para cada cliente com os horários determinados e deixar uma última regra abrangendo o range de ips com apenas 1k de down e 1 k de up. Assim, quando o controle for desativado pelo horário qualquer usuário que sair da regra cai na última que abrange o range todo.

    Uso e funciona normalmente..
    Se alguém não entendeu minha explicação, agente tenta de novo..

    Abraços a todos

  7. #7

    Padrão

    Citação Postado originalmente por solaretecnologia Ver Post
    Nairods, tudo bem ?
    Estou começando a utilizar Mikrotik e um cliente havia solicitando esse mesmo agendamento, pois as filhas passam a noite teclando e vendo filme pornô na madrugada hehehehehehehehe .
    Segui o seu script e verifiquei algo enganador.
    O script segue linha, ou seja , se o usuario não estiver logado as 22:00 o script passará em branco, nao irá desabilitar o usuario. por que ? quando ele vai no [find] e nao localiza o usuario online, ele simplesmente interrompe o script nao indo para outra linha. foi o q verifiquei aqui.
    Para a galera que tem autenticador pppoe, deverá utilizar
    ppp active remove [find name=xxxxx]
    ppp secret disable xxxxxxxx
    (xxxx é o nome do usuario.. no caso do nairods Joao)
    a solução desse script é:
    desativar primeiro e depois desabilitar
    ppp secret disable xxxxxxxx
    ppp active remove [find name=xxxxx]
    Veja se existe essa ordem do script e confirme aqui para galera.

    Agradeço a atenção de todos.

    Marcus Rocha.

    Boa noite amigos ..

    Para quem usa hostpot é simples, bolei um script que bloqueia o cara no horario especificado e libera no horario que quiser, é simples, vai em hotspot ip bindings clica e adiciona um la, colocando o mac do kra. depois vc seleciona em server all, type blocked (agora o X da questao) coloque o comentario fulanodetal e da ok. Agora vá em scripts adicione os seguintes dados dentro de um script /ip hotspot ip-binding {enable [find comment=fulanodetal]} salve o script com o nome bloqueio diario. Agora você vai fazer a mesma coisa adicionando e alterando o enable para disable, esse vai ser o script de desbloqueio /ip-binding {disable [find comment=fulanodetal]} salve como liberadiario. Pronto, agora é so agendar os bloqueios e as liberações em schedule. cria um novo agendamento colocando os seguintes dados start data sua data atual 10/09/2007 start time 22:00 será o horario que o script de bloqueio vai entrar em funcionamento. interval vc coloca 24:00:00 índicando que todos os dias ele tera que fazer isso no on evento vc coloca o nome do script salvo para bloqueio que no caso bloqueiodiario. Agora você cria um outro agendamento de desbloqueio com os seguintes dados Start data 10/09/2007 start time 07:00:00 interval 24:00:00 on event liberadiario. Bom passei um pouquinho do meu conhecimento para vcs, essa regra tive que fazer na unha pois tinha problemas com agendamento normal, lembrando que essas regras que passei pode ser adaptadas a qualquer necessidade, precisando é so falar t++

  8. #8

    Smile Script

    Nazzi,
    seria uma boa solução, porém ficaria chato no meu caso. Imagine o cliente logar e nao conseguir navegar.
    Aqui eu nao tenho dhcp ativo e o cliente nao tem um ip fixo.
    Ele só recebe o ip quando loga e fechei o mac ao usuario e ele pega o ip que estiver disponivel no pool.
    acho que o script de nairods já me ajuda. sendo que só foi apenas um usuário que solicitou isso.

    Agradeço ao tópico.

    qualquer coisa podem me add no msn para trocarmos conhecimento
    [email protected] - MSN

  9. #9

    Smile

    Citação Postado originalmente por gilbertoandrade Ver Post
    Boa noite amigos ..

    Para quem usa hostpot é simples, bolei um script que bloqueia o cara no horario especificado e libera no horario que quiser, é simples, vai em hotspot ip bindings clica e adiciona um la, colocando o mac do kra. depois vc seleciona em server all, type blocked (agora o X da questao) coloque o comentario fulanodetal e da ok. Agora vá em scripts adicione os seguintes dados dentro de um script /ip hotspot ip-binding {enable [find comment=fulanodetal]} salve o script com o nome bloqueio diario. Agora você vai fazer a mesma coisa adicionando e alterando o enable para disable, esse vai ser o script de desbloqueio /ip-binding {disable [find comment=fulanodetal]} salve como liberadiario. Pronto, agora é so agendar os bloqueios e as liberações em schedule. cria um novo agendamento colocando os seguintes dados start data sua data atual 10/09/2007 start time 22:00 será o horario que o script de bloqueio vai entrar em funcionamento. interval vc coloca 24:00:00 índicando que todos os dias ele tera que fazer isso no on evento vc coloca o nome do script salvo para bloqueio que no caso bloqueiodiario. Agora você cria um outro agendamento de desbloqueio com os seguintes dados Start data 10/09/2007 start time 07:00:00 interval 24:00:00 on event liberadiario. Bom passei um pouquinho do meu conhecimento para vcs, essa regra tive que fazer na unha pois tinha problemas com agendamento normal, lembrando que essas regras que passei pode ser adaptadas a qualquer necessidade, precisando é so falar t++
    Hummmmmm... to usando PPPOE vou testar..
    reparei que nao precisamos colocar o /ip ou /ppp pois ele aceita o compando sem a barra
    ...valeuz galera
    vcs tem provedor e sao de qual regiao ?
    vamos trocar msn

  10. #10

    Padrão

    Citação Postado originalmente por solaretecnologia Ver Post
    Hummmmmm... to usando PPPOE vou testar..
    reparei que nao precisamos colocar o /ip ou /ppp pois ele aceita o compando sem a barra
    ...valeuz galera
    vcs tem provedor e sao de qual regiao ?
    vamos trocar msn
    Sim é so adaptar as suas necessidades, Sul de minas, qualquer coisa entre em contato em pvt... abraço...