+ Responder ao Tópico



  1. #1

    Padrão Captive Portal - Enviando página de aviso aos clientes PPPoE/HotSpot

    Boa tarde a todos,

    Pessoal a pedido de um amigo, bolei um sistema de captive portal para envio de aviso aos clientes, o sistema é bem simples o cliente é redirecionado pro servidor web, onde tem a página de aviso, assim que ele é redirecionado o IP dele é inserido em address list que libera o acesso à internet, é possivel derterminar o tempo que o cliente será novamente redirecionado a página de aviso, com o IP adicionado ao address list um outra regra libera o IP do cliente para navegar direto, após 30 segundos na página de aviso ele é redirecionado pra URL que estava tentando acessar através de virtual host do apache e de uma página PHP.

    Bloco de IP dos clientes: 10.10.10.0/24
    IP Servidor WEB: 10.200.29.2
    IP Servidor Proxy: 10.200.29.3

    O servidor Mikrotik possui três interfaces de rede, sendo uma para os clientes, uma para os servidores, uma para o link

    As regras do mikrotik são as seguintes:

    /ip firewall nat
    add chain=dstnat action=accept src-address-list=IP-LIBERADO dst-address-list=SEMPROXY dst-port=80 protocol=tcp comment="SISTEMA DE AVISO"
    add chain=dstnat action=dst-nat to-addresses=10.200.29.3 to-ports=8080 src-address-list=IP-LIBERADO dst-port=80 protocol=tcp
    add chain=dstnat action=dst-nat to-addresses=10.200.29.2 to-ports=80 src-address=10.10.10.0/24 dst-address=!10.200.29.2 dst-port=80 protocol=tcp
    add chain=dstnat action=add-src-to-address-list src-address=10.10.10.0/24 dst-address=10.200.29.2 address-list=IP-LIBERADO address-list-timeout=1h dst-port=80 protocol=tcp

    Configuração do Apache

    <VirtualHost *:80>
    DocumentRoot "/var/www/html/"
    <Directory "/var/www/html/">
    allow from all
    Options +Indexes
    </Directory>
    CheckSpelling On
    Options +FollowSymLinks
    RewriteEngine on
    RewriteCond %{HTTP_HOST} !^10\.200\.29\.2 [NC]
    RewriteCond %{HTTP_HOST} !^$
    RewriteRule ^(.*)$ "http://10.200.29.2:80/index.php?url=%{HTTP_HOST}" [L]
    </VirtualHost>

    Página de aviso index.php

    <html>
    <head>
    <title>AVISO DE MANUTEN&Ccedil;&Atilde;O</title>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <?php
    $url = $_GET['url'];
    echo"<meta http-equiv=\"refresh\" content=\"30;url=http://$url\">";
    ?>

    <style type="text/css">
    <!--
    body {
    margin-left: 0px;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    }
    .destaque {
    font-family: "Trebuchet MS";
    font-weight: bold;
    color: #FF0000;
    font-size: 36px;
    }
    .texto {
    font-family: "Trebuchet MS";
    font-size: 12px;
    }
    #box {
    border: 1px solid #CCCCCC;
    background-color: #F2F2F2;
    }
    -->
    </style>
    </head>

    <body>
    <table width="100%" height="100%" border="0" cellspacing="0" cellpadding="0">
    <tr>
    <td align="center" valign="middle"><table width="500" border="0" cellpadding="0" cellspacing="0" id="box">
    <tr>
    <td align="center">&nbsp;</td>
    </tr>
    <tr>
    <td align="center"><table width="480" border="0" cellspacing="0" cellpadding="0">
    <tr>
    <td align="center" class="destaque">AVISO DE MANUTEN&Ccedil;&Atilde;O</td>
    </tr>
    <tr>
    <td align="center" class="texto"><p><br>
    <strong>Prezado cliente:</strong></p>
    <p align="justify">Estamos efetuando a manuten&ccedil;&atilde;o em nossa rede. Em caso de d&uacute;vidas entre em contato conosco pelo telefone (XX) XXXX-XXXX.</p>
    <p>Agradecemos sua compreen&ccedil;&atilde;o,</p>
    <p><strong>Provedor Banda Larga</strong><br>
    internet via r&aacute;dio 100% Digital<br>
    </p></td>
    </tr>
    </table></td>
    </tr>
    <tr>
    <td align="center">&nbsp;</td>
    </tr>
    </table></td>
    </tr>
    </table>
    </body>
    </html>

    Ae pessoal a dica tae... quem precisa grita

    PS. Ainda esta em testes

    Att..

    Clecio Rodrigo

  2. #2

    Padrão Re: Captive Portal - Enviando página de aviso aos clientes PPPoE/HotSpot

    Sei que o post é bem antigo, mas esta funcionando bem a solução?

    abraços



  3. #3

    Padrão Re: Captive Portal - Enviando página de aviso aos clientes PPPoE/HotSpot

    Pra mim esta redondo a mais de 1 ano heheheh, é claro q é nescessario algumas adaptações.

  4. #4

    Padrão Re: Captive Portal - Enviando página de aviso aos clientes PPPoE/HotSpot

    ressucitação de post, hehe, cara eu preciso mandar um aviso para os clientes, uso autenticação via pppoe.
    pelo que vi em sua regra você deixa esse pool de ip liberado 10.200.29.3, porém eu tenho varios outros ips, pois diferenciamos clientes residenciais e e empresariais, tem alguma ajuda pra mim ?



  5. #5

    Padrão Re: Captive Portal - Enviando página de aviso aos clientes PPPoE/HotSpot

    Existem diversas formas de enviar avisos com PPPoE, utiliza algum sistema administrativo pra gerenciar o seu provedor?

  6. #6

    Padrão Re: Captive Portal - Enviando página de aviso aos clientes PPPoE/HotSpot

    Citação Postado originalmente por cleciorodrigo Ver Post
    Existem diversas formas de enviar avisos com PPPoE, utiliza algum sistema administrativo pra gerenciar o seu provedor?
    Pesquisando aqui no under consegui algumas respostas, aqui nós não usamos nenhum sistema atualmente, fiquei sabendo que eu devo criar um servidor com o apache para hospedar a página de aviso nele, e ai faço um pool do ip que vai ir pro aviso, e faço um dst-nat
    o caso é que eu sou meio leigo, se alguém puder dar uma explicada melhor de como fazer, ai facilita, Kkkk vlw