Utilizar um placa PCI como Access Point no Debian 4

Este artigo tem por objetivo ajudar na montagem de um servidor de wireless, transformando uma placa PCI em um Access Point, utilizando o sistema operacional Debian 4.

[ Hits: 31.322 ]

Por: Bruno de la Mata Bani Arantes em 20/07/2008


Configuração do DHCP



1. Os pacotes para o funcionamento do DHCP já foram instalados no primeiro passo de nosso artigo, precisamos agora apenas configurá-lo:

a. Arquivo de configuração do DHCP, localizado em /etc/dhcp3/dhcpd.conf, execute o seguinte comando:

# vi /etc/dhcp3/dhcpd.conf

Nota: Segue o arquivo de configuração para ser usado como exemplo.

#CONFIGURAÇÃO DHCPD.CONF
default-lease-time 86400;
max-lease-time 604800;
authoritative;
ddns-update-style none;
        subnet 192.168.0.0 netmask 255.255.255.0 {
        range 192.168.0.10 192.168.0.254;
        option routers 192.168.0.1;
        option domain-name "seu dominio";
        option domain-name-servers 192.168.0.1;
        option broadcast-address 192.168.0.255;
}
# Exemplo de como fixar um mac/ip no dhcp, lembrando que se for utilizar esta opção deve ser retirado o range logo acima.
#host Micro_10 {
#     hardware ethernet 00:0e:a6:ad:c4:6f;
#     fixed-address 192.168.0.10;
#     option host-name "micro10";
#}

b. Feito isso o dhcp está configurado, bastando apenas setar qual interface ele deve usar para atribuir os IPs, o arquivo fica em /etc/default/dhcp3-server.

Segue o arquivo:

# Defaults for dhcp initscript
# sourced by /etc/init.d/dhcp
# installed at /etc/default/dhcp3-server by the maintainer scripts
# This is a POSIX shell fragment
# On what interfaces should the DHCP server (dhcpd) serve DHCP requests?
# Separate multiple interfaces with spaces, e.g. "eth0 eth1".

INTERFACES="ath0"

Nota: Lembrando que ath0 é a interface de wireless.

c. Agora precisa apenas iniciá-lo, execute os seguintes comandos:

# /etc/init.d/dhcp3-server stop
# /etc/init.d/dhcp3-server start


Feito isso o dhcp está ok.

Agradecimentos

Primeiramente agradecer a Deus, que me dá força todos os dias, agradecer a comunidade Viva o Linux pela oportunidade de poder compartilhar o pouco que conheço com os amigos do VOL e também por ter me socorrido várias vezes e ter me ajudado a superar as dificuldades algumas vezes encontradas.

Bom, espero ter ajudado e qualquer dúvida meu email é brunoarantes@hotmail.com.

Página anterior    

Páginas do artigo
   1. Especificações e configurações
   2. Segurança
   3. Configuração do DHCP
Outros artigos deste autor

Samba + LDAP + Squid no Debian

Leitura recomendada

Instalação e configuração do fluxbox-devel

Pós-instalação no Slackware 10

PHP5 + Apache2 no Ubuntu 7.04, com suporte ao MySQL e SQL Server

Configuração de vídeo - Solução de erro

Xen: Criando dom0 e domU no Fedora

  
Comentários
[1] Comentário enviado por marcelogpl em 21/07/2008 - 09:12h

Bruno

muito bom o artigo, principalmente o fechamento agradecendo a quem nos oferece todo o conhecimento.

Uma dúvida este AP que vc fez, pode funcionar como REPETIDOR? E qual seria a configuração?

[2] Comentário enviado por douglasdiasn em 21/07/2008 - 11:48h

Bom artigo, estava atras de algo assim para implementar na minha empresa

att

Douglas Noronha

[3] Comentário enviado por mvalho em 21/07/2008 - 12:38h

Muito bom o artigo, acho interessante isso, por que se tivermos um maquina parada em casa ou na empresa da pra por uma placa pci e transformá-lo num ap :D, assim que possivel vou fazer isso! vai pros favoritos!

valeu Bruno, parabéns!

[4] Comentário enviado por eloi em 21/07/2008 - 13:56h

Parabéns pelo Artigo ;)

[5] Comentário enviado por clediomir em 21/07/2008 - 23:10h

sabe me dizer se funciona com adaptadores USB?

[6] Comentário enviado por fabiomattes2011 em 18/09/2008 - 09:17h

Cara estive atrás disso um já faz um tempinho, hehehe ta no favoritos....

[7] Comentário enviado por fabiomattes2011 em 03/10/2008 - 11:35h

Só uma duvida:

Se eu reiniciar a maquina, terei que fazer todo esse processo novamente, posso implementalo em um script caso ela perca a cofiguração?

[8] Comentário enviado por carlosalberto4ti em 16/03/2009 - 18:12h

Muito bom aqui funcionou muito bem , mas foi uma dúvida se puderem responder :

aqui em casa é um pc e um note asus eee 701 .

eu tenho um asus eee , fiz os procedimentos e funcionou , agora só não navego no note asus mas enxergo minha rede wireless no outro pc normalmente , tem como mudar isso para o note navegar também ?

[9] Comentário enviado por networker em 23/03/2009 - 11:57h

Muito bom o artigo, mas daria para complementar informando as ferramentas de LOG, para podermos visualisar usuários que estão autenticados, usuários que estão errando a chave, etc?

[10] Comentário enviado por paulohahn em 23/05/2010 - 17:45h

Bom fiz tudo que esta aqui, e li muito mais em outros lugares..... estou dias nisto
Criei este script sh pra facilitar, esta com alguns "echo" pra facilitar o diagnóstico, e marquei o ponto onde inicia a falha:

#!/bin/bash
#
# Script Por Paulo Hahn, livre para ser usado e alterado, não precisa citar eu
# Um breve script para configurar um linux debian como ponto de acesso de rede sem-fio/wireless

# Programas Requeridos
IPT=`which iptables`;
WLC=`which wlanconfig`;
IWP=`which iwpriv`;
IWC=`which iwconfig`;

# Interface da rede sem-fio
IF_SEMFIO="ath0";

# Porta Física da Placa sem-fio
WLHD="wifi0";

# Interface da rede Com Acesso à Internet
IF_EXTERNA="eth0";

# Definição da rede sem-fio
RSF_ESSID="hahn";
RSF_RANGE="10.1.1.0/24"
RSF_GATEW="10.1.1.1";
RSF_CHANN="1";
RSF_RATE="54M";
RSF_TXPOW="auto";
RSF_SENHAWEP="012345abcdef012345abcdef26";

wln_start()
{
#
# Configurando Interface Sem Fio
#
# Zera a interface
$WLC $IF_SEMFIO destroy
# Recria no modo master/AP
$WLC $IF_SEMFIO create wlandev $WLHD wlanmode AP
# Configurando alguns parametros opcionais especificos do driver
$IWP $IF_SEMFIO mode 1 wds 1 turbo 0 dtim_period 2 bintval 25
# O nome da rede sem-fio
$IWC $IF_SEMFIO essid $RSF_ESSID
# Canal em que irá operar
$IWC $IF_SEMFIO channel $RSF_CHANN
# Velocidade
$IWC $IF_SEMFIO rate $RSF_RATE
# Potência de Transmissão
$IWC $IF_SEMFIO txpower $RSF_TXPOW

#
# Implementando a segurança
#
$IWC $IF_SEMFIO key restricted $RSF_SENHAWEP

#
# Criando a ponte entre a as interfaces
#

echo "Colocando as interfaces em modo promiscuo.."
ip link set dev $IF_EXTERNA down
ip link set dev $IF_SEMFIO down
ip link set $IF_EXTERNA promisc on
ip link set $IF_SEMFIO promisc on
ip link set dev $IF_EXTERNA up
ip link set dev $IF_SEMFIO up
ifconfig

ping $RSF_GATEW -c 1 -W 1
# Esse ping funcionou

echo "Criando a ponte br0"
brctl addbr br0
brctl addif br0 $IF_EXTERNA
brctl addif br0 $IF_SEMFIO

ping $RSF_GATEW -c 1 -W 1
# Esse ping NÃO MAIS
# Esta claro que a coisa toda para de funcionar por causa da bridge.... continua no fim

echo "Bota o endereço nela"
ip addr add $RSF_RANGE brd + dev br0
ping $RSF_GATEW -c 1 -W 1
echo "Gateway.."
ip route add default via $RSF_GATEW dev br0
ping $RSF_GATEW -c 1 -W 1
echo "Liga a passagem para frente de pacotes"
echo 1 > /proc/sys/net/ipv4/ip_forward

ping $RSF_GATEW -c 1 -W 1
echo "Levanta a ponte"
ifconfig br0 up
}

wln_stop(){
echo 0 > /proc/sys/net/ipv4/ip_forward
ip addr del $RSF_RANGE dev br0
ifconfig br0 down
brctl delbr br0
ip link set dev $IF_EXTERNA down
ip link set dev $IF_SEMFIO down
ip link set dev $IF_EXTERNA promisc off
ip link set dev $IF_SEMFIO promisc off
ip link set dev $IF_EXTERNA up
ip link set dev $IF_SEMFIO up
}

help_ajuda(){
echo
echo "$0 (start | stop)"
echo
echo "start - Ativa o Ponto de Acesso Sem-Fio"
echo "stop - Desativa o Ponto de Acesso Sem-Fio"
echo "restart - Reinicia o Ponto de Acesso Sem-Fio"
}
case $1 in

start)
wln_start;
;;

stop)
wln_stop;
;;

restart)
wln_stop;
wln_start;
;;

*)
help_ajuda;
exit;
;;

esac

Após a execução do script os micros conectados ao AP navegam tranquilamente, o problema é que o Gateway fica inacessível para o Linux Access Point, isto é, o micro que ta compartilhando a internet fica sem ela!

Se alguém tiver uma idéia... sei que estou quase lá! É sobre a bendita bridge.

[11] Comentário enviado por paulohahn em 25/05/2010 - 01:12h

Encontrei o problema!
Era a rota padrão o tal do "ip route add default via $RSF_GATEW dev br0"

Depois da ponte estar rodando eu dava um "netstat -r" e a eth0 aparecia como rota padrão, ora, quando a interface entra na bridge ela fica travada na bridge a gente tem de usar a própria bridge como placa, foi só colocar um comando pra tirar ela de lá, no meu caso fiz da seguinte forma:

route add default gw $RSF_GATEW dev br0
route del default gw $RSF_GATEW dev $IF_EXTERNA

Neste caso já estava utilizando "route" ao invés de "ip".

Agora que estou mais por dentro quero destrinchar como colocar todas as configurações já durante o boot, antes mesmo de logar, para ficar como um servidor.
Depois que o servidor wireless estiver carregando as configurações automaticamente já com WPA, vou para o gerenciamento de usuários.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts