Leia este tutorial que usa um outro script pra o velox. Estou usando ele e n�o tive problemas com a mudan�a do velox.

http://www.brunotorres.net/gnulinux/velox-linux


Atenciosamente,

Fl�vio Alencar




Ronielton Rezende Oliveira escreveu:

Bom Dia,

Caros amigos,

Utilizo o script abaixo, para fazer minha autentica��o no Veloxzone, por�m
hoje pela manha fui surpreendido com mudan�as no Portal VeloxZone [
http://www.veloxzone.com.br ], e via de fato o script n�o funciona mais.
Por�m sei que � possivel adapta-lo para as novas mudan�as feitas pela
Telemar, por�m n�o conhe�o nada de Perl.

Se algu�m passa por problema similiar ou saiba como alterar o script,
gostaria de uma ajuda, pois meu server depende deste script para se
autenticar na rede velox, onde o mesmo esta agendado pelo crontab.

Ou se conhecem outra solu��o de autentica��o...???

Obrigado!!!

Ronielton Rezende Oliveira
Tr�s Cora��es/MG

----------------------------- SCRIPT DE AUTENTICACAO
VELOX -----------------------------------

#!/usr/bin/perl
#
# --------------------------------------------------------------------------
-
#        ID-Velox v2.00 [01/11/2003] - http://www.isec.com.br/velox
# Por Fabio Vilan aka/nick Duwde, fabio -arroba- isec -ponto- com -ponto- br
# --------------------------------------------------------------------------
-
#
# [-=> Alteracoes <=-]
#
# v2.00 - [01/11/2003]
#
# - Versao totalmente rescrita do script, agora em perl, totalmente
#   independentenao do sh, fetch, lynx ou ping !!
#
# - Suporta o novo esquema de autenticacao do Velox da Telemar
#   tanto no modo comercial, como residencial, via o metodo CGI POST,
#   e permite mais flexibilidade nas futuras *inesperadas* mudancas
#
# - Lista dos provedores residenciais atualizada.
#
# -------------
# Configuracao
# -------------

# Define se seu velox e' residencial ou comercial, se for residencial,
# voce precisa de um login/senha em um provedor, se for comercial,
# acessa diretamente pela telemar.
#
# Valores : 'RES' = Residencial
#           'COM' = Comercial

$VELOX = 'RES';

# Caso use o sistema comercial, pode ser necessario alterar a string
# abaixo de acordo com a sua regiao (esta e' a string de conexao
# para a regiao da Bahia, outras opcoes comentadas abaixo, veja no codigo
# fonte html da autenticacao velox de sua regiao, caso tenha duvidas)
#
# Somente uma das opcoes deve estar descomentada ! Essa opcao so eh
# util se voce estiver usando o modo COMERCIAL, caso esteja no modo
# residencial, nao surtira qualquer efeito, pode ignorar esta opcao.
#

# $COMERCIAL='AABA';
# $COMERCIAL='AAMG';
# $COMERCIAL='AARJ';

# Caso use o sistema residencial, voce precisa definir
# o nome do seu provedor, o nome tem que ser EXATAMENTE como
# esta na pagina de autenticacao no velox, aqui estao alguns
# exemplos, (aparentemente agora varia o final, por regiao,
# em alguns provedores com o TERRA)
#
# Somente uma das opcoes deve estar descomentada ! Essa opcao so eh
# util se vc estiver usando o modo RESIDENCIAL, caso esteja no modo
# comercial, nao surtira qualquer efeito, pode ignorar esta opcao.
#

$PROVEDOR='TERRAMG2';

# $PROVEDOR='AOL';
# $PROVEDOR='ATARDE';
# $PROVEDOR='ATT';
# $PROVEDOR='BIOHARD';
# $PROVEDOR='BITNET';
# $PROVEDOR='BRFAST';
# $PROVEDOR='BRIDGE';
# $PROVEDOR='BRTURBO';
# $PROVEDOR='CPUNET';
# $PROVEDOR='DDN';
# $PROVEDOR='DH';
# $PROVEDOR='DIGIZAP';
# $PROVEDOR='FACILINTERNET';
# $PROVEDOR='GD';
# $PROVEDOR='GLOBO';
# $PROVEDOR='HOTLINK';
# $PROVEDOR='INTERCALL';
# $PROVEDOR='INTERDOTNET';
# $PROVEDOR='INTERNETRJ';
# $PROVEDOR='INTERNETT';
# $PROVEDOR='MICROECIANET';
# $PROVEDOR='NUXNET';
# $PROVEDOR='OLIMPO';
# $PROVEDOR='OXENTENET';
# $PROVEDOR='POWERTRIX';
# $PROVEDOR='PRODASAL';
# $PROVEDOR='SEVEN';
# $PROVEDOR='SKNET';
# $PROVEDOR='STL';
# $PROVEDOR='SUPERIG';
# $PROVEDOR='SUPRANET';
# $PROVEDOR='TERRAMG2';
# $PROVEDOR='TERRAMG4';
# $PROVEDOR='WAVENET';

# Seu Login no Provedor (!! somente se for residencial !!)
$LOGIN = 'MEULOGIN;

# Sua Senha no Provedor (!! somente se for residencial !!)
$SENHA = 'MINHASENHA';

# ----------------------------------------
# -=*=- FIM DA SECAO DE CONFIGURACAO -=*=-
# ----------------------------------------
# Nao altere mais nada abaixo, toda configuracao pode ser feita,
# alterando as variaveis acima, qualquer alteracao abaixo pode
# tornar seu script nao funcional.

$HOST = 'www.veloxzone.com.br'; # 200.165.104.28
$PORTA = 80;
@HOSTS =('mx.uol.com.br','mx.terra.com.br','mail.telemar.net.br');
$HOSTPORTA = 25;
$HOSTTIMEOUT = 2;
$RES_URL="/serviceLogon";
$RES_POST="service=internet_$PROVEDOR&fcn=serviceLogon&ac=home&usr=&username
=$LOGIN&password=$SENHA&OK=OK";
$COM_URL="/serviceStart?service=internet_$COMERCIAL";
$COM_POST="confirmed=true";

print "\n";
print
"---------------------------------------------------------------------------
--\n";
print "       ID-Velox v2.00 [01/11/2003] - http://www.isec.com.br/velox\n";;
print
"---------------------------------------------------------------------------
--\n";

if ($VELOX eq 'RES')
       {
       print "!CONFIG! Modo Residencial\n";
       print "!CONFIG! Provedor : $PROVEDOR\n";
       print "!CONFIG! Login : $LOGIN\n";
       $URL=$RES_URL;
       $POST=$RES_POST;
       }
elsif ($VELOX eq 'COM')
       {
       print "!CONFIG! Modo Comercial\n";
       print "!CONFIG! Regiao : $COMERCIAL\n";
       $URL=$COM_URL;
       $POST=$COM_POST;
       }
else
       {
       print "!ERRO! Tipo do VELOX mal configurado, edite o script !!!\n";
       print "!ERRO! Somente as opcoes \"RES\" ou \"COM\" sao
possiveis!!!\n";
       exit 2;
       }

use IO::Socket;

sub autentica()
       {
       $sock = new IO::Socket::INET (  PeerAddr => $HOST, PeerPort =>
$PORTA, Proto => 'tcp');
       die("!ERRO! Nao e' possivel conectar em $HOST !!!\n") unless $sock;

       print "!OK! Conexao estabelecida com $HOST.\n";
       $sock->print("POST $URL HTTP/1.0\r\n");
       $sock->print("Content-Type: application/x-www-form-urlencoded\r\n");
       $sock->print("Host: $HOST\r\n");
       $sock->print("Content-Length: " . length($POST) . "\r\n");
       $sock->print("\r\n$POST\r\n\r\n\r\n");
       print "!OK! Aguardando resposta do servidor...\n";
       while ($sock->getline()) {}
       $sock->close();
       }

sub ping($)
       {
       $x=0;
       foreach (@HOSTS)
               {
               if (($_[0] eq 'rapido') && ($x>0))
                       { return 0; }

               $c = new IO::Socket::INET ( PeerAddr => "$_" , PeerPort =>
$HOSTPORTA, Proto => 'tcp', Timeout => $HOSTTIMEOUT
);
               if ($c)

                       {
                       $c->close();
                       return 1;
                       }
               $x++;
               }
       }

print
"---------------------------------------------------------------------------
--\n";

print "!OK! Verificando se voce ja esta autenticado...\n";
if ( ping('rapido') )
       {
       print "!OK! Voce ja esta autenticado !!!\n";
       exit 0;
       }

print "!OK! Voce ainda nao esta autenticado.\n";

autentica();
while ( not ping('completo') )
       {
       print "!ERRO! Servidor nao liberou acesso, possivel senha ou
configuracao incorreta...\n";
       print "!OK! Tentando novamente...\n";
       autentica();
       }

print "!OK! Autenticado com sucesso !!!\n";
print
"---------------------------------------------------------------------------
--\n";
# EOF






--------------------------------------------------------------------------- Esta lista � patrocinada pela Conectiva S.A. Visite http://www.conectiva.com.br

Arquivo: http://bazar2.conectiva.com.br/mailman/listinfo/linux-br
Regras de utiliza��o da lista: http://linux-br.conectiva.com.br
FAQ: http://www.zago.eti.br/menu.html

Responder a