+ Responder ao Tópico



  1. #1

    Padrão Alguem conseguiu usar o SISCAP???

    Eai pessoal da lista blz?, seguinte estou tentando aqui usar o sistema de captura de página ínicial desenvolvido peo Kalamat, porem ate agora sem sucesso, vou postar o link pro tutorial e os scripts abaixo:

    http://200.99.28.130/downloads/siscap - sistema de captura de pagina inicial.pdf

    Virtual host
    ---------------------------------------------------------------------------------------------------------------------------

    <VirtualHost *:82>
    DocumentRoot "/var/www/html/weblogin"
    <Directory "/var/www/html/weblogin">
    allow from all
    Options +Indexes
    </Directory>
    CheckSpelling On
    Options +FollowSymLinks
    RewriteEngine on
    RewriteCond %{HTTP_HOST} !^192\.168\.100\.1 [NC]
    RewriteCond %{HTTP_HOST} !^$
    RewriteRule ^(.*)$ "http://192.168.100.1:82/index.php?ip=%{REMOTE_ADDR}&url=%{HTTP_HOST}" [L]
    SSLEngine off
    </VirtualHost>


    Página index.html
    ------------------------------------------------------------------------------------------------------------------------------------------------------------------
    <html>
    <head>
    <title>Autenticação</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <style type="text/css">
    <!--
    body,td,th {
    font-family: Verdana, Arial, Helvetica, sans-serif;
    color: #000000;
    font-size: 10px;
    }
    body {
    background-color: #FFFFFF;
    margin: 20px;
    }
    form {
    margin: 0px;
    }
    input {
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 10px;
    color: #000000;
    }
    .azul {color: #0000FF}
    .vermelho {color: #FF0000}
    -->
    </style></head>

    <body>
    <table width="100%" height="100%" border="0" cellpadding="0" cellspacing="0">
    <tr>
    <td align="center" valign="middle"><strong><span class="azul">Autenticação</span> <br>
    <br>
    <span class="vermelho">Clique em conectar para acessar a internet.</span><br>
    <br>
    <form action="conectar.php" method="post" name="Conexao" id="Conexao">
    <input type="submit" name="Submit" value="Conectar">
    </form></td>
    </tr>
    </table>
    </body>
    </html>


    Script conectar.php
    ----------------------------------------------------------------------------------------------------------------------------------------------------------------------
    <?php
    //SisCaPI - Sistema de Captura de Página Inicial
    //Marcus Roberto Lima Almeida - [email protected]
    //http://wwwmarcus.cjb.net
    //msn: [email protected]
    //icq: 72454817
    //O uso desse sistema é aberto e ninguem tem o direito de cobrar um centavo por ele.
    //Se possível, mantenha meu nome nos creditos de programador. Obrigado e bom uso!

    header ("Expires: Mon, 26 jul 1997 05:00:00 GMT");
    header ("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
    header ("Cache-Control: no-cache, must-revalidate, no-store, post-check=0, precheck=0");
    header ("Pragma: no-cache");

    //Pega o endereço de MAC do cliente
    //$mac = shell_exec("/usr/bin/sudo /sbin/arp -n | grep ".$_SERVER['REMOTE_ADDR']." | tail -n 1 | awk '{print $3}'";
    //Pesquisando aqui no forum onde esta variavel mac, não é utilizada

    //Libera a navegação
    $ret = shell_exec('/usr/bin/sudo /sbin/iptables -t nat -F PRE-'.$_SERVER['REMOTE_ADDR']);
    $ret = shell_exec('/usr/bin/sudo /sbin/iptables -t nat -x PRE-'.$_SERVER['REMOTE_ADDR']);
    $ret = shell_exec('/usr/bin/sudo /sbin/iptables -t nat -N PRE-'.$_SERVER['REMOTE_ADDR']);
    $ret = shell_exec('/usr/bin/sudo /sbin/iptables -t nat -A PRE-'.$_SERVER['REMOTE_ADDR'].' -i eth0 -p tcp -s '.$_SERVER['REMOTE_ADDR'].' --dport 80 -j REDIRECT --to-port 3128');
    $ret = shell_exec('/usr/bin/sudo /sbin/iptables -t nat -A POSTROUTING -s '.$_SERVER['REMOTE_ADDR'].' -j MASQUERADE');

    //Redireciona para a página do provedor
    header("Location:http://www.granadanet.com.br/");

    ?>


    Firewall
    ------------------------------------------------------------------------------------------------------------------------------------------------------
    IPT=/sbin/iptables
    ADDR=192.168.100.2

    $IPT -t nat -N "PRE-$ADDR"
    $IPT -t nat -A "PRE-$ADDR" -i eth0 -p tcp -s $ADDR --dport 80 -j REDIRECT --to-port 82
    $IPT -t nat -A PREROUTING -i eth0 -p tcp -s $ADDR --dport 80 -j "PRE-$ADDR"

    Porem não sei o pq o trafego da porta 80 não é redirecionado pro virtual host do apache, tenho o bind rodando na mesma maquina onde estou testanto o sistema

    Grato

    Clecio

  2. #2

    Padrão Re: Alguem conseguiu usar o SISCAP???

    O que aconteçe no browser? ele dá um erro de "timeout" ?

  3. #3

    Padrão Re: Alguem conseguiu usar o SISCAP???

    Na verdade amigo, hoje brincado mais um pouco com ele, tive um certo sucesso alterando as regras do script porem gostaria de entender realmente como ele funciona, pois algumas partes não estão claras pra mim, e obrigado por estar disposto a me ajudar.

    Firewall
    --------------------------------------------------------------------------------------------------------
    IPT=/sbin/iptables
    ADDR=192.168.100.2
    $IPT -t nat -N "PRE-$ADDR"
    $IPT -t nat -A "PRE-$ADDR" -i eth0 -p tcp -s $ADDR --dport 80 -j REDIRECT --to-port 82
    $IPT -t nat -A PREROUTING -i eth0 -p tcp -s $ADDR --dport 80 -j "PRE-$ADDR"

    Não entendi bem como funciona essas regra, ela criara um Cadeia pro IP 192.168.100.2

    conectar.php
    --------------------------------------------------------------------------------------------------------
    //Libera a navegação
    $ret = shell_exec('/usr/bin/sudo /sbin/iptables -t nat -F PRE-'.$_SERVER['REMOTE_ADDR']);
    $ret = shell_exec('/usr/bin/sudo /sbin/iptables -t nat -x PRE-'.$_SERVER['REMOTE_ADDR']);
    $ret = shell_exec('/usr/bin/sudo /sbin/iptables -t nat -N PRE-'.$_SERVER['REMOTE_ADDR']);
    $ret = shell_exec('/usr/bin/sudo /sbin/iptables -t nat -A PRE-'.$_SERVER['REMOTE_ADDR'].' -i eth0 -p tcp -s '.$_SERVER['REMOTE_ADDR'].' --dport 80 -j REDIRECT --to-port 3128');
    $ret = shell_exec('/usr/bin/sudo /sbin/iptables -t nat -A POSTROUTING -s '.$_SERVER['REMOTE_ADDR'].' -j MASQUERADE');

    Essas regras altera as cadeias criadas anteriormente ou cria regras antes delas??

    Espero ter sido claro

  4. #4

    Padrão Re: Alguem conseguiu usar o SISCAP???

    geralmente isso acontece quando o usuario esquece de liberar as portas no apache, vou colocar aqui o apache.conf mais é so criar o host virtual na porta 81 e 82 que funciona, tenho aqui no meu provedor e em breve estarei liberando o sistema completo aqui.

  5. #5

    Padrão Re: Alguem conseguiu usar o SISCAP???

    Valeu amigo, analisando com calma o seu sistema consegui colocar ele pra funcionar, mais posta ai os seus arquivos de configuração