Slackware 14 - Roteamento com duas placas wireless

A proposta do artigo, é ilustrar a implementação de um projeto de compartilhamento de internet usando duas placas de rede sem fio com
roteamento virtual (hostapd) no Slackware 14 64 bits.

[ Hits: 16.086 ]

Por: Eduardo Walzburger em 18/10/2012


Instalação



Sugiro clicar na versão mais atualizada do hostapd, depois em "hostapd.tar.gz".

Na linha de comando, sem ser superusuário, no diretório em que o hostapd foi baixado:

tar -zvxf hostapd.tar.gz

Posteriormente, depois de descompactado, clicar em "hostapd-<versão mais nova>.tar.gz" e salve-o no diretório criado a partir da descompactação, o hostapd/. A partir deste diretório, como superusuário, façamos:

# ./hostapd.SlackBuild

Depois é só instalar o arquivo criado, com installpkg, por exemplo. No meu caso, teremos:

# installpkg /tmp/hostapd-0.6.10-x86_64-1_SBo.tgz

Configurando o hostapd

Com a instalação, é criado o diretório /etc/hostapd/ que contém arquivos para configuração. Há um arquivo no qual encontramos configurações genéricas, o "hostapd.conf", mas que possui 1025 linhas, o que torna sua manipulação pouco plausível.

Isto pois, na eventualidade da ocorrência de erros (e eles ocorrerão), será demorada sua alteração. A sugestão da Carla e dos outros autores, como André e Ademar Arvati Filho é modificar o nome do arquivo em questão e criar outro "hostapd.conf":

# cd /etc/hostapd/
# mv hostapd.conf hostapd.conf.orig
# vi hostapd.conf


Sim, gosto de editar com o Vi (cada um com suas excentricidades). Se escolheram este editor, lembrá-los-ei do básico:

Clicar uma vez na tecla "Insert" Entra com caracteres.
Clicar outra vez na tecla "Insert" Entra com caracteres sobrescrevendo-os.
Tecla "ESC" Sai da função de edição e vai para a dos comandos.
:wq Salva o arquivo e sai do editor.
:q! Sai do editor sem salvar.


Dadas as características da wlan0 e do sistema, o meu "hostapd.conf" ficou deste jeito:

interface=wlan0
driver=nl80211
ssid=quasar
hw_mode=g
channel=13
wpa=3
wpa_psk=e7d6ab5d58eb6cea975fed6d0c717a6f0de6e96db65f8d11abe80530694bfe90
#wpa_psk_file=/etc/hostapd/hostapd.wpa_psk
wpa_key_mgmt=WPA-PSK
wpa_pairwise=CCMP TKIP
rsn_pairwise=CCMP TKIP
ctrl_interface=/var/run/hostapd
ctrl_interface_group=0
auth_algs=1#


A interface que eu escolhi foi a wlan0, como havia dito. O driver para a wlan0 foi o "nl80211". Como descobri? Tentativa e erro, dentro do rol apresentado pelo agora "hostapd.conf.orig".

Pertencem a este rol, na atual versão do hostapd, os seguintes drivers:
  • hostap
  • wired
  • madwifi
  • prism54
  • test
  • none
  • nl80211
  • bsd

Com o citado comando hwinfo já utilizado, pode-se obter as informações necessárias para configurar hw_mode, channel e WPA. Como sugerem Carla e André, utiliza-se o comando wpa_passphrase para a geração de chaves criptografadas de 256 bits para senhas de texto simples.

Por exemplo, num SSID de nome "quasar" com uma senha "nerdhijodeunamadre", teremos:

# wpa_passphrase "quasar" "nerdhijodeunamadre"

network={
ssid="quasar"
#psk="nerdhijodeunamadre"
psk=e7d6ab5d58eb6cea975fed6d0c717a6f0de6e96db65f8d11abe80530694bfe90
}


De uma forma mais sofisticada, haveria, em vez de deixar uma chave genérica para todos os clientes da rede, como associar cada endereço MAC destes clientes a uma chave. Desta maneira, apenas as máquinas cadastradas teriam acesso à rede.

Esta tabela estaria no arquivo /etc/hostapd/hostapd.wpa_psk, que não foi utilizado por mim. Em termos de segurança é uma boa forma de tornar a rede mais robusta. O artigo de Carla, que enfoca mais a questão de segurança deste sistema, ilustra bem como fazê-lo.

As opções referentes a "wpa_key_mgmt", "wpa_pairwise" e "rsn_pairwise" estão relacionados ao sistema de criptografia que se quer adotar e que são suportados pela placa. São muito bem explanados nos artigos citados.

Diferentemente da sugestão de alguns autores de se utilizar uma ponte (bridge) e configurá-la no "hostapd.conf", isto não foi adotado aqui em virtude da inviabilidade de se adicionar duas placas de rede sem fio na ponte. Eu não consegui, e alguns comentários em fóruns internacionais desencorajaram-me neste sentido. Aceito opiniões a respeito.

Devidamente configurado o hostapd, se tudo tiver dado certo até o momento, poderemos ativar o roteador virtual desta forma:

# hostapd -dd /etc/hostapd/hostapd.conf

Então, será que neste instante devemos esperar o compartilhamento de conexão? Veja que, se utilizarmo-nos de um cliente, seja um tablet ou outro PC, iremos verificar a existência de uma rede sem fio de nome "quasar" (caso tenhamos usado o arquivo acima).

Neste caso, ficamos tentados a simplesmente escolher esta rede no cliente, colocar a senha e esperar. Eis que percebemos que o cliente não consegue adquirir seu endereço IP. Resolveremos isto.

Vamos forçar um endereço IP para o roteador virtual. Lembremos que utilizamos a wlan0 como placa de rede que enviará o sinal para o ambiente interno e, portanto, é justamente esta que terá que receber o IP do nosso pseudorroteador:

# ifconfig wlan0 192.168.44.1 netmask 255.255.255.0

Agora, podemos passar para as regras de Firewall.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução e Pré-requisitos
   2. Instalação
   3. Configurações
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Atualizando Flash Player no Firefox em Antergos (Arch Linux)

Acesso remoto fácil, sem necessidade de instalação de programa

Instalação do aMSN-0.97b em três maneiras diferentes

Bem vindo ao planeta Viva o Linux

OpenGoo - Seu escritório nas nuvens Online-Ontime-Fulltime

  
Comentários
[1] Comentário enviado por carlosgilmar em 06/02/2013 - 11:06h

Funcionou perfeitamente no Slackware 13.
Muito obrigado por compartilhar!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts