Configurar o Wi-Fi no Linux

Aprenda a fazer a execução manual do Wi-Fi no Debian ou em uma outra distribuição derivada.</italL


Primeira etapa: diagnóstico

As placas Wi-Fi são cada vez mais reconhecidas e, em geral, tudo funciona diretamente. O Wi-Fi é configurado com o iwconfig, que pertence ao pacote <ital>Wireless-tools (ferramentas de Wi-Fi).

No Debian, este pacote não está presente por padrão (no Ubuntu, passamos para a segunda etapa). Assim, para instalá-lo, faça:

sudo aptitude update  
sudo aptitude safe-upgrade
sudo aptitude install wireless-tools

Obviamente, isso supõe outra maneira de conectar-se (ethernet , etc). Caso contrário, pegue o endereço dos pacotes que o aptitude tenta baixar, recupere-os (ex: num sistema onde o Wi-Fi funcione) e coloque-os nos arquivos /var/cache/apt. Em seguida, execute novamente o comando:

sudo aptitude install wireless-tools

Agora, as placas disponíveis aparecerão em uma lista. Nos laptops, verifique se o interruptor da placa Wi-Fi foi ativado (o LED - diodo semicondutor - deve estar aceso mesmo se no Linux isto não quer dizer nada):

(mando@cenedra) (~) $ /sbin/iwconfig  
lo no wireless extensions.
eth0 no wireless extensions.
wmaster0 no wireless extensions.
eth1 IEEE 802.11g ESSID:"xxxxx" Nickname:""
Mode:Managed Frequency:2.412 GHz Access Point: xx:xx:xx:xx:xx:xx
Bit Rate=48 Mb/s Tx-Power=27 dBm
Retry min limit:7 RTS thr:off Fragment thr=2346 B
Power Management:off
Link Quality=57/100 Signal level=-74 dBm Noise level=-96 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0

Neste exemplo, tudo está bem, uma placa Wi-Fi chamada eth1 foi encontrada. Dependendo da máquina e da marca, a placa pode ter nomes diferentes (eth2, wlan0, ra0, etc.), o que importa é o que aparece no iwconfig. Se a placa não aparecer no iwconfig é porque ela não foi detectada. Neste caso, passe à segunda etapa, ou vá diretamente para a terceira etapa.

Segunda etapa: a placa não foi reconhecida

Se a placa não foi reconhecida imediatamente, tente pela marca. De um modo geral, ou se a placa não estiver referenciada na página de documentos mencionada acima, adotaremos a seguinte abordagem.

Procurar um driver Linux, nos links:

(mando@cenedra) (~) $ apt-cache search ralink  
rt2400-source - source for rt2400 wireless network driver
rt2500-source - source for rt2500 wireless network driver
rt2570-source - source for rt2570 wireless network driver

Para os atheros, podemos utilizar, por exemplo, o madwifi. Para os da Intel, é preciso instalar um firmware (pense em adicionar os repositórios não gratuitos no arquivo /etc/apt/sources.list, caso esses pacotes não apareçam):

(mando@aldur) (~) $ apt-cache search firmware | grep -i intel | grep -i firmware  
firmware-ipw2x00 - Binary firmware for Intel Pro Wireless 2100, 2200 and 2915
firmware-iwlwifi - Binary firmware for Intel Wireless 3945 and 4965

Às vezes, outras placas podem funcionar com este método.

Converter o driver Windows com o ndiswrapper. Podemos nos basear no seguinte link.

Terceira etapa: configurar a placa

O ponto de acesso distribui de forma dinâmica (pelo DHCP) um endereço IP, caminhos, DNS, o que é o caso da maioria dos pontos de acesso Wi-Fi (box, em particular). Nas distribuições mas recentes, em vez de editar os arquivos de configuração manualmente, vamos utilizar uma interface gráfica, como a Network Manager. Se não quisermos ou não pudermos passar pelo Network Manager, o método manual será detalhado a seguir.

No WEP

Basta editar o arquivo /etc/network/interfaces como neste exemplo, digitando no root ou com o sudo:

sudo nano /etc/network/interfaces

Em seguida, modifique a seção relativa à placa (aqui, eth1) sem mexer no resto:

auto eth1  
iface eth1 inet dhcp
wireless-essid Mon_EssiD
wireless-key 1234567890ABCDEF

Onde 1234567890ABCDEF indica a chave WEP. Respeite o tamanho da letra quando for digitar o ESSID. Salve e Feche (Ctrl + X).

No WPA

É mais complicado. Para começar, você deverá instalar o wpa_supplicant. Se somente a conexão Wi-Fi for possível e este pacote esiver faltando, refaça a abordagem proposta na primeira etapa para recuperar o wpa_supplicant e suas dependências:

sudo aptitude install wpasupplicant

Em seguida, corrija /etc/network/interfaces:

sudo nano /etc/network/interfaces

E modifique a seção correspondente à placa Wi-Fi (aqui, eth1):

auto eth1  
iface eth1 inet dhcp
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

Salve e saia (Ctrl + x). Agora, vamos configurar o wpa_supplicant:

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Neste arquivo, escreva:

ctrl_interface=/var/run/wpa_supplicant  
eapol_version=1
ap_scan=1
fast_reauth=1
network={
ssid="Meu_EssiD"
scan_ssid=1
proto=WPA
key_mgmt=WPA-PSK
psk=1234567890ABCDEF
priority=5
}

Onde 1234567890ABCDEF indica a chave WPA. Respeite o tamanho da letra quando for digitar o ESSID. Salve e feche (Ctrl + x).

Observação: nas versões mais recentes, parece que a chave WPA pode ser configurada diretamente em /etc/network/interfaces e não precisa mais do wpa_supplicant.

Quarta etapa: se conectar ao ponto de acesso

Prepare o roteador. Para os detentores de uma Freebox, verifique se o serviço Wi-Fi foi ativado na interface web da mesma e que você está em modo roteador. Lembre-se de configurar eventuais redirecionamentos de portas, que você poderia precisar se estivesse em modo modem.

Para os detentores da Livebox, pressione o botão que faz o LED-WiFi piscar (na parte inferior ou atrás da mesma).

Para os detentores de Roteadores Wi-Fi executando uma filtragem no endereço MAC, adicione, em primeiro lugar, o endereço MAC da sua placa Wi-Fi na lista das interfaces autorizadas pelo roteador, conectando-se em Ethernet ou USB à interface do roteador. Você pode recuperar esse endereço com o comando ifconfig:

(mando@cenedra) (~) $ /sbin/ifconfig  
...
eth1 Link encap:Ethernet HWaddr xx:xx:xx:xx:xx:xx
inet adr:192.168.0.13 Bcast:192.168.0.255 Masque:255.255.255.0
...

Conecte a interface.

Já que /etc/network/interfaces está pronto, podemos utilizar o ifup (conecta a interface) e o ifdown (desconecta a interface):

sudo ifup eth1

Saiba que isto equivale a:

sudo ifconfig eth1 up  
sudo dhclient eth1

Se tudo correr bem, deverá ficar assim:

(mando@cenedra) (~) $ sudo dhclient eth1  
[sudo] password for root:
Internet Systems Consortium DHCP Client V3.0.6
Copyright 2004-2007 Internet Systems Consortium.
All rights reserved.
For info, please visit http://www.isc.org/sw/dhcp/
wmaster0: unknown hardware address type 801
wmaster0: unknown hardware address type 801
Listening on LPF/eth1/00:19:d2:4d:2e:f5
Sending on LPF/eth1/00:19:d2:4d:2e:f5
Sending on Socket/fallback
DHCPREQUEST of 192.168.0.13 on eth1 to 255.255.255.255 port 67
....
DHCPACK of 192.168.0.13 from 192.168.0.254
bound to 192.168.0.13 -- renewal in 343576 seconds

Aqui a placa Wi-Fi recebeu o IP local 192.168.0.13. Em princípio, se o DHCPACK funcionou, tudo deve estar bom, porque também recebemos rotas e DNS. Para ter certeza:

/sbin/route -n  
cat /etc/resolv.conf

Podemos verificar se tudo funciona bem:

nslookup www.google.com  
ping -c2 www.google.com

Partindo daí, tudo deverá funcionar.

Possíveis dificuldades adicionais

Basta postar uma mensagem no fórum do Linux informando seu modelo de placa Wi-Fi, sua distribuição, seu tipo de roteador. Também será preciso transcrever os resultados dos seguintes comandos de diagnóstico:

/sbin/iwconfig  
/sbin/ifconfig
/sbin/route -n
cat /etc/resolv.conf
nslookup www.google.com
ping -c2 www.google.com

E o conteúdo dos arquivos de configuração Wi-Fi:

cat /etc/network/interfaces  
cat /etc/wpa_supplicant/wpa_supplicant.conf

Você pode tornar anônimas as chaves (WEP e WPA), que poderiam aparecer durante o iwconfig e nos arquivos de configuração.

Foto: © Fabian Irsara - Unsplash

Nosso conteúdo é produzido em colaboração com especialistas em tecnologia da informação sob o comando de Jean-François Pillou, fundador do CCM.net. CCM é um site sobre tecnologia líder em nível internacional e está disponível em 11 idiomas.
Este documento, intitulado 'Configurar o Wi-Fi no Linux', está disponível sob a licença Creative Commons. Você pode copiar e/ou modificar o conteúdo desta página com base nas condições estipuladas pela licença. Não se esqueça de creditar o CCM (br.ccm.net) ao utilizar este artigo.

Assine nossa newsletter!

Assine nossa newsletter!
Junte-se à comunidade