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.658 ]

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


Segurança



1. Execute o seguinte comando:

# iwconfig ath0 key restricted xxxxxxxxxxxxxxxxxxxxxxxxxxxx

Para a chave WEP, você deve utilizar uma seqüência em hexadecimal de 26 caracteres.

Nota: Podemos também implementar um controle de MAC, possibilitando que apenas os MAC cadastrados possam acessar a rede:

2. Criando uma whitelist de endereços MAC (permite somente os listados).

a. Primeiramente zeramos a lista do cartão:

# iwpriv ath0 maccmd 3

b. Agora criamos a whitelist:

# iwpriv ath0 maccmd 1

c. Agora inserimos os MACs que poderão acessar no AP:

# iwpriv ath0 addmac 00:12:0E:A1:87:AB

d. Para removermos o MAC da whitelist:

# iwpriv ath0 delmac 00:12:0E:A1:87:AB

Nota: Depois de excluir o MAC e para que ele pare de funcionar naquele momento precisaremos executar o seguinte comando:

# iwpriv ath0 kickmac 00:12:0E:A1:87:AB

Nota: Uma outra configuração interessante é a opção de esconder o SSID:

# iwpriv ath0 hide_ssid 1

Feito isso, temos uma Access Point com algumas regras de segurança implementadas e funcionando. Agora devemos configurar o DHCP, para que os "clientes obtenham os endereços ips".

Página anterior     Próxima página

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

Deixando a Área de Trabalho animada com slides no GNOME

Configurando 2 (dois) links ADSL no mesmo servidor

PuTTY - Release 0.66 - Parte V - (Final)

LAMP no Funtoo Linux em 15 minutos

Configurando o driver nVidia no Mandrake 10.1 community

  
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