Desenvolvido por: Jose Roberto Kerne - jrkerne1@rno.matrix.com.br
Revisado em: 18 de agosto de 2000
Este trabalho foi especialmente desenvolvido para empresas de pequeno porte, usuários com uma pequena rede, enfim, todos aqueles que possuem acesso à Internet utilizando para isto um acesso discado. Na maioria dos casos, (como o meu) não há a necessidade de um link dedicado para acesso a internet, pois os custos com aquisição de um roteador e a mensalidade/inscrição do link são considerados relativamente altos para utilização de correio-eletrônico e navegação Web durante horários restritos. Uma alternativa para resolver esta questão é a utilização de acesso a internet por meio compartilhado, onde somente uma máquina se conecta a internet utilizando discagem sob demanda, dando acesso aos demais terminais da rede, podendo-se usufruir assim de todas as vantagens de proxy, firewall, correio interno, e tornando possível a implementação de uma Intranet com baixo custo.
Uma alternativa interessante, e que poucos tem conhecimento, é que pode-se utilizar uma interface pppX em modo "demand" para tornar os recursos acima disponíveis. (Descobri isso através de um amigo na lista linux-br, recebi alguns fontes, adaptei as minhas necessidades e veohlah!!! O squid já estava no ar e daí em diante foi mais fácil). Aproveito para agradecer ao amigo Fabio Tavares Vieira, que me enviou os fontes para que eu pudesse realizar esta maravilha:
[ Para o passo-a-passo abaixo, certifique-se que você está logado como root. ]
Pacotes necessários:
É necessário ter o pacote ppp instalado, para verificar a existência deste pacote, basta digitar o comando:
[root@servidor /]$ rpm -q ppp
Se o pacote estiver instalado a resposta sera a seguinte: ppp-2.3.11-3cl (minha versao do ppp, disponivel no CL5.0)
Caso contrário, pegue o CD de sua distribuição e instale o pacote ppp:
rpm -ivh /mnt/cdrom/
O próximo passo é configurar a interface ppp (considerarei como ppp0).
Entre no linuxconf, Ambiente de Rede.
Em "Tarefas do Servidor" selecione "PPP/SLIP/PLIP".
* Adicione uma nova interface PPP.
* Selecione a opção [ Personalizar ]
* Preenchar os campos indicados com o nome da conexão (somente identificação), velocidade da linha, porta do modem, string de inicialização do modem, número do seu provedor.
* Na área "Chat" você deverá preencher o script de conexão ppp, siga os passos abaixo:
Primeiro Espere: "ogin:" (sem aspas)
Primeiro Envie:
Segundo Espere: "ord:" (sem aspas)
Segundo Envie:
* Na área "Rede", preecha como mostrado abaixo:
* Na área PAP, informe seu login e sua senha.
* Salve suas configurações, e saia do linuxconf.
* Inclua a seguinte linha ao arquivo /etc/resolv.conf
* Altere o arquivo /etc/ppp/options de acordo com o mostrado abaixo:
Descricao das principais opcoes:
* pap-timeout 200 -> aumenta o tempo de verificação de usuario e senha do ppp para que o modem não desconecte antes de terminar a negociação (o som de conexão). Encontrei este problema quando configurei isto pela primeira vez
* noipdefault -> não estabelece um IP padrão para a interface ppp0
* defaultroute -> define como rota padrão a interface ppp0 (troca de eth0 para ppp0)
* modem -> utiliza controle de dispositivo /dev/modem
* user
* crtscts -> utiliza controle de fluxo do modem
* holdoff -> especifica o tempo em segundo para que a conexão seja reestabelecida
* maxfail -> especifica o numero maximo de tentativas de conexao, quandi atingir o valor especificado o pppd é desligado. Se você quer que a interface fique ativada, mesmo que por varias tentativas sem sucesso, apague esta linha.
* demand -> informa que o ppp será utilizado em modo Demand
* idle -> informar aqui quantos segundos a conexao podera ficar aberta sem tráfego. Exemplo 300 = 5 minutos
* persist -> informa ao pppd que esta conexão deverá persistir caso ocorra algum erro.
* Altere o arquivo /etc/ppp/chap-secrets de acordo com o mostrado abaixo
onde: "usuario" devera ser preenchido o nome do usuario/login,
deixar as "" (aspas);
interface indicará qual a interface que perfente esta configuracao,
usuario/senha. Para utilizar esta como padrão, basta colocar um "*" sem os sinais de ""
(aspas);
e "senha" deverá ser preenchido a senha,
deixar as "" (aspas)
* Altere o arquivo /etc/ppp/pap-secrets de acordo com o mostrado abaixo:
onde: usuario deverá ser preenchido o nome do usuário,
interface indicará qual a interface que pertence esta configuracao, usuário. Para utilizar esta como padrão, basta colocar um "*" sem as ""
(aspas), e
senha deverá ser preenchido a senha.
* Crie o diretorio: /etc/ppp/scripts
* Agora, crie dentro destes diretórios os seguintes arquivos:
Arquivo: /etc/ppp/scripts/carregar
echo "Discagem sob Demanda... [ Carregado ]"
/usr/sbin/pppd /dev/modem 115200 connect \
'/usr/sbin/chat TIMEOUT 200 ABORT "BUSY" ABORT "NO DIALTONE"
ABORT "NO CARRIER" "" ATZ OK ATS6=2S7=122X3DT
Explicação: Deve-se incluir a seguinte linha no arquivo: /etc/rc.d/rc.local
/etc/ppp/scripts/./carregar
Isto tornará a interface PPP ativa, e em espera por uma requisição de endereço externo a sua rede.
Arquivo: /etc/ppp/scripts/ligar
# Looping necessário para dar tempo para o pppd ser carregado em memoria.
echo "Ativando Conexao PPP on Demand..."
while ! [ -f /var/run/ppp0.pid ]
do
echo "Aguardando interface ppp0 ser carregada..."
done
# Para que a conexão seja realizada, e necessario que a rede solicite
# um endereco IP externo, ou seja, que não faça parte da sua rede, abaixo
# está um exemplo, utilizando IP do servidor Matrix
ping 200.196.7.1 -c 1 -i 1
Explicação: Este script servirá para os testes de conexão. Após executar o
script "carregar", este script fará a solicitação de um endereco externo,
forçando assim o pppd a discar e conectar ao provedor.
Arquivo: /etc/ppp/scripts/desligar
echo "Discagem sob Demanda... [ Descarregado ]"
killall pppd
Explicação: Este script servirá para os testes de conexão. Após a conexão
com o provedor, pode-se forçar a desconexão utilizando este script.
Arquivo: /etc/ppp/scripts/mantem_ligado
ping 200.196.7.1 -c 1 -i 1
Explicação: Este script mantem a conexão aberta, gerando tráfego para a
interface PPP. Isto serve para testes de sua interface PPP.
* Depois de criados estes arquivos, execute o comando: chmod 755
/etc/ppp/scripts/* Este comando tornará os arquivos executáveis, para que
possam ser carregados e devidamente testados.
Para testar se sua conexão está ok, execute o script
"/etc/ppp/scripts/carregar". Comando: /etc/ppp/scripts/./carregar
Aparentemente não acontecerá nada, mas será carregado o deamon pppd. Confira
nos processos: Comando: ps ax
o seguinte processo deverá estar ativo:
Agora, execute o script: /etc/ppp/scripts/ligar
Comando: /etc/ppp/scripts/./ligar
Você ouvira o seu modem discar, e conectar ao provedor. Se você verificar os
processos, irá observar que um novo processo foi iniciado, o chat:
Este é o processo de autenticação de usuario e senha, que utilizará o que
foi preenchido na interface ppp0, configurado via linuxconf.
Agora é so abrir o Netscape e navegar! Para desconectar, pode-se deixar a
conexão inativa por 5 minutos, ou executar o script:
/etc/ppp/scripts/desligar Execute o comando: /etc/ppp/scripts/./desligar
Finalmente acabou... é isso aí... se você teve paciência de escrever tudo o
que está aqui, agora você tem o serviço de discagem sob demanda ativo em
seu servidor. Se o serviço de Proxy estiver ativo, o funcionamento será o
mesmo, desde que o script /etc/ppp/scripts esteja carregado. Lembro que
você é livre para alterar este scripts da forma que quiser, desde que
envie uma cópia da alteração para o Autor e para o Revisor (descritos nos
scripts), e não retire as informações dos Autores Originais destes
scripts.
Grato pela atenção!
Abraços
O Arquivo Histórico do BR-Linux.org mantém no ar (sem alteração, exceto quanto à formatação) notícias, artigos e outros textos publicados originalmente no site na segunda metade da década de 1990 e na primeira década do século XXI, que contam parte considerável a história do Linux e do Open Source no Brasil. Exceto quando indicado em contrário, a autoria dos textos é de Augusto Campos, e os termos de uso podem ser consultados na capa do BR-Linux.org. Considerando seu caráter histórico, é provável que boa parte dos links estejam quebrados, e que as informações deste texto estejam desatualizadas.
[ ] Ativar interface na inicialização
[ ] Defina a rota padrão
[X] Restabelecer conexão quando falhar
login: seu_login
password: sua_senha
nameserver ip_do_seu_provedor
lock
pap-timeout 200
noipdefault
defaultroute
modem
usepeerdns
user
"usuario" interface "senha"
usuario interface senha
#!/bin/sh
# Script de Discagem para utilizacao do Daemon pppd em modo on demand
# com autenticacao no provedor via PAP
# Autoria : Fabio Tavares Vieira
# Em : Julho/2000
# Revisado por : Jose Roberto Kerne - jrkerne1@rno.matrix.com.br
# Em : 15 de Agosto de 2000
# Este script esta regido pela GPL - GNU General Public License.
#!/bin/sh
# Script para ativar o pppd e iniciar automaticamente
# a conexao com a Internet.
# Autoria : Fabio Tavares Vieira
# Em : Julho/2000
# Revisado por : Jose Roberto Kerne - jrkerne1@rno.matrix.com.br
# Em : 15 de agosto de 2000
# Este script esta regido pela GPL - GNU General Public License.
#!/bin/sh
# Script para desativar o pppd
# Autoria : Fabio Tavares Vieira
# Em : Julho/2000
# Revisado por : Jose Roberto Kerne - jrkerne1@rno.matrix.com.br
# Em : 15 de agosto de 2000
# Este script esta regido pela GPL - GNU General Public License.
#!/bin/sh
# Script para manter a conexão PPP ativa, mesmo que
# não se esteja utilizando
# a interface PPP, ou seja, navegando na internet,
# a conexao ficarah disponivel
# Autoria : Fabio Tavares Vieira
# Em : Julho/2000
# Revisado por : Jose Roberto Kerne - jrkerne1@rno.matrix.com.br
# Em : 15 de agosto de 2000
# Este script esta regido pela GPL - GNU General Public License.
Executando os testes
XXX X XX X:XX /usr/sbin/pppd /dev/modem 115200 connect ...
XXX XX X:XX /usr/sbin/chat ...
José Roberto Kerne
jrkerne1@rno.matrix.com.br
Departamento de Informática
Rineplast Plásticos Rio Negrinho Ltda