Acesso Discado com Wvdial
De Fórum Debian Wiki
Índice de conteúdo |
Introdução
Muitas vezes não dispomos de conexões de rede ou banda larga para terminar uma instalação ou até mesmo poder navegar em algumas páginas, outras vezes queremos acessar mas o discador daquele provedor grátis não pode ser instalado no linux, a solução é utilizar o wvdial, rápido de instalar e configurar, só necessitando o número do telefone, nome de usuário e senha. O wvdial não tem tela gráfica, mas existem discadores gráficos caso queira isso, neste caso poderá estar instalando e configurando o kppp ou o gnome-ppp, porém para instalá-los é necessário mais pacotes que muitas vezes não estão presentes na instalação básica do Debian. Esse wiki não é igual a outros que existem na net, nele vou abordar todo processo de acesso discado, evidente que a tarefa mais dificil de ser executada será a identificação e construção do módulo do seu modem.
Instalando o Wvdial
Normalmente o wvdial já vem instalado com a instalação basica do linux, caso não esteja presente, insira o cd de instalação do Debian e proceda a instalação do mesmo.
# apt-cdrom add # aptitude install wvdial
Informações sobre Provedores grátis
Como você vai precisar dos números de conexão então abaixo relacionei os links e modos de conseguir isso dos principais e conhecidos provedores grátis, foram testados todos que tenho acesso aqui na minha cidade e conectaram sem muitos problemas. Estando devidamente de posse do cadastro de login e senha, vamos ao formato que deve ser colocado o login no wvdial e o modo de captura do telefone para acesso:
Provedor Click21.
Parâmetro Usuário: seulogin@click21.com.br
Telefones de acesso: [1]
Provedor Oi.
Parâmetro Usuário: seulogin@oi.com.br
Telefones de acesso: [2]
Provedor Ibest.
Parâmetro Usuário: seulogin@ibest.com.br
Telefones de acesso: [3]
Provedor IG. Parâmetro Usuário: este é o unico que não consegui passar o usuário e senha normalmente, porque a autenticação é feita com o discador lançando o login e senha no navegador para liberar a navegação, desta forma configuramos o wvdial com os campos de username e senha normalmente e no navegador criamos um link no favoritos para lançar a seguinte Url( substitua as palavras Username e Password): http://auth.ig.com.br/servlets/prediscador?action=login&url=http://www.ig.com.br&username=<Username>&password=<Password> Telefones de acesso: [4]
Provedor Itelefonica.
Parâmetro Usuário: seulogin@itelefonica.com.br
Telefones de acesso: O arquivo que consta os telefones vem do endereço [5] porém esse arquivo é codificado com o utilitário confgen.exe, o meio que encontrei para capturar o número utilizado no discador foi instalando o discador da itelefônica no Windows e configurando e discando o mesmo para que ficasse registrado na log de conexões do modem, conforme mostrado na figura abaixo:
Provedor cresce net.
Parâmetro Usuário: (não tenho acesso)
Telefones de acesso: idem do processo utilizado no Itelefônica, porém não sei se vai computar os prêmios que eles oferecem.
Provedor Inteligweb.
Parâmetro Usuário: (não tenho acesso)
Telefones de acesso: [6]
Provedor Pop.
Parâmetro Usuário: (não tenho acesso)
Telefones de acesso: [7]
Provedor Acessofree.
Parâmetro Usuário: (não tenho acesso)
Telefones de acesso: [8]
Provedor Busca aqui.
Parâmetro Usuário: (não tenho acesso)
Telefones de acesso: [9]
Instalando o Driver de Modem
Agora vamos instalar o driver do seu modem, dê um lspci para identificar o chipset:
~$ lspci 00:09.0 Multimedia audio controller: Ensoniq 5880 AudioPCI (rev 02) 00:0a.0 Communication controller: Agere Systems LT WinModem (rev 02)
Observamos a última linha acima (Communication controller) que identifica o modem e anotamos a versão do kernel do linux fornecido pelo comando uname ($ uname -r), passamos a localizar o pacote mais adequado ao tipo do modem. Antes de construir o modulo para o modem, esteja certo que fez os procedimentos do wiki Compilando drivers. [10] Uma das maneiras mais fáceis de instalar um modem é através da ferramenta de module-assistant, para isso instala-se os sources do modem disponíveis via apt-get e constroi-se o modulo, infelizmente só encontrei o source para o modem smartlink para essa operação:
# aptitude install sl-modem-daemon sl-modem-source module-assistant debhelper # m-a update # m-a prepare # m-a a-i sl-modem # depmod -a
Uma outra alternativa de fácil instalação deste mesmo modem é através do pacote .deb que pode ser baixado externamente:
[11]
e posteriormente instalado com:
# dpkg -i <pacote.deb>
Os endereços onde você vai encontrar o driver para seu modem é: [12] Neste link abaixo está em portugues informações sobre modem: [13] Neste endereço [14] você vai encontrar os seguintes diretórios do modelos mais conhecidos:
Motorola Intel - Ambient/Intel Pctel - AMR/HSP56 Ltmodem - Lucent/Agere Smartlink -AC97/MC97
Obs: NOVO! Os softmodems Lucent/Agere SV92 que antes não tinham drivers para linux agora existe um na versão alpha e pode ser baixado aqui [15]
Caso tenha dúvida ao tipo de modem instalado, poderá estar baixando um pequeno script [16] Extrai o pacote com:
# gzip -d scanModem.gz
dê a permissão:
# chmod +x scanModem
e execute:
# ./scanModem
Ele irá criar um diretório com arquivos contendo informações sobre o seu modem, dentre eles o arquivo ModemData.txt reporta vários dados coletados incluindo o chipset e o nome do driver para o modem. Existe alguns pacotes do projeto Messias o qual consiste em detectar qual o tipo do seu modem, o script meu-modem-v10.sh e modem-arquivos-v15.tar.gz se propõe a facilitar a instalação, porém são voltados para as distro kurumin e ubuntu. Sendo estas baseadas no debian, com alguns ajustes nos scripts é possível executa-los no debian. Testei o meu-modem-v10.sh e ele detectou corretamente o modem smartlink, porém na apresentação do xdialog falha ao mostrar o texto tendo que editar e corrigir os msgbox, quem quizer baixa-lo irá encontrar no endereço: [17]
Fique atento a versão do seu kernel, algum drivers só funcionam até determinada versão do kernel, como por exemplo o Lucent que até a versão do kernel 2.6.10 utiliza o pacote ltmodem-2.6-alk-8, em kernel superiores passam a usar o modulo do Martian. Leia sempre o readme e o install que vem nos pacotes. Depois de construído e instalado e carregado o modulo do seu modem, verifique se o dev foi criado ou se é necessário criá-lo manualmente ( muitas vezes isto consta no leiame ou install). Talvez seja necessário criar o dev manualmente toda vez que inicialize o sistema, então utilize o final do arquivo /etc/init.d/bootmisc.sh para adicionar daemons ou criação de links e devs, por exemplo as linhas abaixo são recomendadas no README do Ltmodem:
mknod --mode=0660 /dev/ttyLTM0 c 62 64 ln -s /dev/ttyLTM0 /dev/modem
Configuração do Wvdial
Modulo carregando e device presente, vamos para a parte final de configurar o wvdial. Caso não exista, crie o arquivo wvdial.conf executando o:
# wvdialconf
ou manualmente com:
# touch /etc/wvdial.conf
Depois edite inserindo o seguinte conteúdo, altere somente as opções iguais para esses valores com exceção do Username, Password e Phone que são exemplos próprios aqui já descrito anteriomente:
# mcedit /etc/wvdial.conf
[Dialer Defaults] ISDN = 0 Modem Type = Analog Modem Phone = 32269000 Username = login_ig Password = senha_ig New PPPD = yes Modem = /dev/modem Baud = 57600 Stupid Mode = 1 Modem Type = Analog Modem ;se seu modem for um slmodem ou um martian driver, desmarque a proxima linha ;Carrier Check = no
A ordem das opções não tem efeito, observe que o dev está apontando para o link modem, portanto certifique-se que esse link existe senão crie ele.
$ ls -l /dev/modem lrwxrwxrwx 1 root root 6 2007-02-14 09:13 /dev/modem -> ttyLTM0
Alguns ajustes podem ser necessário caso esteja discando mas o serviço pppd caindo. Vamos a eles:
Esteja certo de que o resolv.conf existe, senão crie ele com:
# touch /etc/resolv.conf
Pode ser necessário alterar as permissões e grupo do pppd
# chmod +S /usr/sbin/pppd
ou
# chmod 4711 /usr/sbin/pppd
pode estar faltando permissão nos arquivo em /etc/ppp
# chmod 755 /etc/ppp/*
Se mesmo após essas alterações estiver terminando o serviço pppd, vá em options e localize a linha onde está auth e ponha noauth ( caso o provedor aceite conexões sem autenticar )
# mcedit /etc/ppp/options
Observe também se o grupo do pppd está com dip:
# ls -l /usr/sbin/pppd -rws--x--x 1 root dip 260920 2007-03-17 19:52 /usr/sbin/pppd
Em alguns casos o discador reporta problemas de autenticação, então pode-se manualmente registrar o usuário e senha nas ultimas linhas do pap-secrets, exemplo:
# mcedit /etc/ppp/pap-secrets
# OUTBOUND connections ... ... ... ... # * password . meulogin * minhasenha meulogin@ibest.com.br * minhasenha
A senha neste caso fica em texto plano.
Conectando
Agora é só conectar, este comando deve ser executado como root, se precisar executá-lo e fazer com que libere o prompt do terminal, carregue ele como tarefa em segundo plano, assim:
$ sudo wvdial&
Para finalizar a conexão utilize o recurso:
$ fg Ctrl+C
Concluindo
Há muitas configurações que podem ser feitas no arquivo wvdial.conf, leia o manual dele para mais informações ($ man wvdial.conf), por exemplo, é possivel especificar mais de um provedor criando seções de [Dialer provedor1] com somente as opções que não constam na seção [Dialer Defaults] e na linha de comando passe o parâmetro para o wvdial (# wvdial provedor1). Para modem atrás de um PABX que requer 0 para linha externa, utilize na configuração Phone = 0,telefone. Além de se poder conectar sem tela gráfica, outra importante característica deste serviço é a possibilidade de se agendar pelo cron a discagem em horário específico com discagem automática.
