Gentoo Logo

1.  Introdução

Atualmente nós suportamos configurações wireless tanto através de wireless-tools ou wpa_supplicant. É importante lembrar que você deve configurar para redes wireless com base global e não com base em interface.

wpa_suppliant é a melhor escolha, mas não suporta todos drivers. Para uma lista de drivers suportados, leia o site do wpa_supplicant. Também, o wpa_supplicant só pode conectar atualmente a um SSID que você tenha configurado.

wireless-tools suporta quase todos cartões e drivers, mas não pode conectar a pontos de acesso (APs) só de WPA.

Aviso: O driver linux-wlan-ng não é suportado pelo baselayout neste momento. Isto ocorre porque o linux-wlan-ng tem seus próprios ajustes e configuração que são completamente diferentes do resto. Existe um boato de que os desenvolvedores do linux-wlan-ng estejam mudando sua configuração para a do wireless-tools - quando isto acontecer, você poderá usar o linux-wlan-ng com o baselayout.

1.  WPA Supplicant (suplicante)

WPA Supplicant é um pacote que permite que você se conecte a pontos de acesso com WPA. Sua configuração é bagunçada já que ainda está em beta - no entanto, funciona bem na maior parte.

Listagem de código 1.1: Instale o wpa_supplicant

# emerge net-wireless/wpa_supplicant

Importante: Você deve ter CONFIG_PACKET ativado em seu kernel para que o wpa_supplicant funcione.

Agora nós configuramos o /etc/conf.d/net para que prefiramos wpa_supplicant ao invés de wireless-tools (se ambos estiverem instalados, o wireless-tools é o padrão).

Listagem de código 1.1: configure /etc/conf.d/net para wpa_supplicant

# Preferir wpa_supplicant ao invés de wireless-tools
modules=( "wpa_supplicant" )

# É importante dizer ao wpa_supplicant que driver nós devemos
# usar já que ele ainda não é bom em adivinhar
wpa_supplicant_eth0="-Dmadwifi"

Nota: Se você estiver usando o driver host-ap, você precisará colocar o cartão em modo gerenciado antes de poder ser usado com wpa_supplicant corretamente. Você pode usar iwconfig_eth0="mode managed" para fazer isto no /etc/conf.d/net.

Foi simples, não foi? Todavia, ainda precisamos configurar o próprio wpa_supplicant, o que é um pouco complicado dependendo da segurança dos pontos de acesso a que você está tentando conectar. O exemplo abaixo é tirado e simplificado do /etc/wpa_supplicant.conf.example que vem com o wpa_supplicant.

Listagem de código 1.1: um exemplo de /etc/wpa_supplicant.conf

# A linha abaixo não pode ser mudada, senão não funcionamos
ctrl_interface=/var/run/wpa_supplicant

# Certificar que só o administrador (root) pode ler a configuração de WPA
ctrl_interface_group=0

# Permitir que o wpa_supplicant tome conta do escaneamento e seleção de AP
ap_scan=1

# Caso simples: WPA-PSK, PSK como uma senha ASCII, permitir todas cifras válidas
network={
  ssid="simples"
  psk="senha super secreta"
  # Quanto maior a prioridade, mais rápido somos encontrados
  priority=5
}

# Igual ao anterior, mas pedir escaneamento específico de SSID (para APs que rejeitam
# broadcast SSID)
network={
  ssid="segundo ssid"
  scan_ssid=1
  psk="senha super secreta"
  priority=2
}

# Só WPA-PSK é usado. QUalquer combinação válida de cifras é usada
network={
  ssid="exemplo"
  proto=WPA
  key_mgmt=WPA-PSK
  pairwise=CCMP TKIP
  group=CCMP TKIP WEP104 WEP40
  psk=06b4be19da289f475aa46a33cb793029d4ab3db7a23ee92382eb0106c72ac7bb
  priority=2
}

# Conexão de texto simples (sem WPA, sem IEEE 802.1X)
network={
  ssid="textosimples-teste"
  key_mgmt=NONE
}

# Conexão de chave WEP compartilhada (sem WPA, sem IEEE 802.1X)
network={
  ssid="static-wep-test"
  key_mgmt=NONE
  wep_key0="abcde"
  wep_key1=0102030405
  wep_key2="1234567890123"
  wep_tx_keyidx=0
  priority=5
}

# Conexão de chave WEP compartilhada (sem WPA, sem IEEE 802.1X) usando chave compartilhada
# com autenticação IEEE 802.11
network={
  ssid="static-wep-test2"
  key_mgmt=NONE
  wep_key0="abcde"
  wep_key1=0102030405
  wep_key2="1234567890123"
  wep_tx_keyidx=0
  priority=5
  auth_alg=SHARED
}

# rede IBSS/ad-hoc com WPA-None/TKIP
network={
  ssid="test adhoc"
  mode=1
  proto=WPA
  key_mgmt=WPA-NONE
  pairwise=NONE
  group=TKIP
  psk="senha secreta"
}
							

1.  Wireless Tools (ferramentas de wireless)

Configuração inicial e modo gerenciado

Wireless Tools fornecem um modo genérico de configurar interfaces de wireless básicas até o nível de segurança WEP. Embora o WEP seja um método de segurança fraco, também é o predominante.

A configuração do Wireless Tools é controlada por algumas variáveis principais. O arquivo de configuração abaixo deve descrever tudo de que você precisa. Uma coisa para ter em mente é que nenhuma configuração significa "conectar ao ponto de acesso sem criptografia mais forte" - nós sempre iremos tentar e conectar você com alguma coisa.

Listagem de código 1.1: Instale o wireless-tools

# emerge net-wireless/wireless-tools

Nota: Embora você possa gravar seus ajustes de wireless em /etc/conf.d/wireless este guia recomenda que você guarde-os em /etc/conf.d/net.

Importante: Você irá precisar consultar a documentação de (nomes de variáveis).

Listagem de código 1.1: exemplo de ajuste de iwconfig em /etc/conf.d/net

# Preferir iwconfig ao invés de wpa_supplicant
modules=( "iwconfig" )

# Configurar chaves de WEP para pontos de acesso chamados ESSID1 e ESSID2
# Você pode configurar até 4 chaves WEP, mas só 1 pode estar ativa
# durante qualquer hora, então damos um índice padrão [1] para configurar a chave [1] e então
# novamente depois para mudar a chave ativa para [1]
# Fazemos isto caso você defina outros ESSID's para usar as chaves WEP fora 1
#
# Prefixar a chave com s: significa que é uma chave ASCII, caso contrário é uma chave HEX
#
# enc open specified open security (mais seguro)
# enc restricted specified restricted security (menos seguro)
key_ESSID1="[1] s:suachaveaqui key [1] enc open"
key_ESSID2="[1] aaaa-bbbb-cccc-dd key [1] enc restricted"

# O abaixo só funciona quando escaneamos pontos de acesso disponíveis

# Às vezes mais de um ponto de acesso está visível, então precisamos
# definir um preferido para conectar
preferred_aps=( "ESSID1" "ESSID2" )

Ajustes finos de seleção de pontos de acesso

Você pode encontrar algumas opções adicionais para fazer ajustes finos a sua seleção de pontos de acesso, mas não são normalmente necessários.

Você pode decidir se apenas conectamos aos pontos de acesso preferidos ou não. Por padrão, se tudo configurado falhar e pudermos conectar a um ponto de acesso sem criptografia, faremos isso. Isto pode ser controlado pela variável associate_order. Aqui está uma tabela de valores e como eles controlam isso.

Valor Descrição
any Comportamento padrão
preferredonly Só iremos conectar a pontos de acesso visíveis na lista de preferência
forcepreferred Nós iremos forçar a conexão a pontos de acesso na ordem preferida se não forem encontrados em um escaneamento
forcepreferredonly Não escanear pontos de acesso - ao invés disso, conectar-se a cada um em ordem
forceany Igual a forcepreferred + conectar a qualquer outro ponto de acesso disponível

Finalmente nós temos algumas seleções de blacklist_aps e unique_ap. blacklist_aps funciona de uma forma parecida a preferred_aps. unique_ap é um valor yes ou no que diz se uma segunda interface de wireless pode conectar-se ao mesmo ponto de acesso que a primeira interface.

Listagem de código 1.1: exemplo de blacklist_aps e unique_ap

# Às vezes você não deseja conectar-se a certos pontos de acesso
blacklist_aps=( "ESSID3" "ESSID4" )

# Se você tiver mais que um cartão wireless, você pode dizer se você quer
# permitir que cada cartão se associe com o mesmo ponto de acesso ou não
# Valores são "yes" e "no"
# O padrão é "yes"
unique_ap="yes"

Modos Ad-Hoc e Master

Se você quiser configurar-se como um node de Ad-Hoc se você não conseguir se conectar a nenhum ponto de acesso em modo gerenciado, você também pode fazê-lo.

Listagem de código 1.1: alternativa de modo ad-hoc

adhoc_essid_eth0="Este node de Adhoc"

E conectar-se a redes Ad-Hoc ou rodar em modo Master para tornar-se um ponto de acesso? Aqui está uma configuração para isto! Você pode precisar especificar chaves de WEP como mostrado acima.

Listagem de código 1.1: exemplo de configuração de ad-hoc/master

# Configurar o modo - pode ser gerenciado (padrão), ad-hoc ou master
# Nem todos drivers suportam todos modos
mode_eth0="ad-hoc"

# Configure o ESSID da interface
# Em modo gerenciado, isto força a interface a tentar e conectar-se ao
# ESSID especificado e nada mais
essid_eth0="Este node de Adhoc"

# Nós usamos o canal 3 se você não especificar um
channel_eth0="9"

Importante: O abaixo é tirado diretamente da documentação de wavelan do BSD encontrada na documentação do NetBSD. Existem 14 canais possíveis; É dito a nós que os canais 1-11 são legais para a América do Norte, canais 1-13 para a maior parte da Europa, canais 10-13 para a França, e só canal 14 para o Japão. Se em dúvida, por favor faça referência à documentação que veio junto com seu cartão ou ponto de acesso. Certifique-se de que o canal que você selecionar é o mesmo canal de seu ponto acesso (ou o mesmo cartão na rede ad-hoc). O padrão para cartões vendidos na América do Norte e a maior parte da Europa é 3; o padrão para cartões vendidos na França é 11, e o padrão para cartões vendidos no Japão é 14.

Resolvendo problemas com o Wireless Tools

Existem mais algumas variáveis que você pode usar para colocar sua conexão wireless para funcionar devido a problemas de driver ou ambiente. Aqui está uma tabela com outras coisas que você pode tentar.

Variável Valor padrão Descrição
iwconfig_eth0 Veja a página de manual do iwconfig para detalhes sobre o que enviar ao iwconfig
iwpriv_eth0 Ver a página de manual do iwpriv para detalhes sobre o que enviar ao iwpriv
sleep_scan_eth0 0 O número de segundos para dormir antes de tentar escanear. Isto é necessário quando o driver/firmware precisa de mais tempo para ser ativado antes de ser usado.
sleep_associate_eth0 5 O número de segundos para esperar que a interface se associe com um ponto de acesso antes de tentar o próximo
associate_test_eth0 MAC Alguns drivers não resetam o endereço de MAC associado com um inválido quando perdem ou tentam associação. Alguns drivers não resetam o nível de qualidade quando perdem ou tentam associação. Valores válidos são MAC, quality e all.
scan_mode_eth0 Alguns drivers aqui tem que escanear em modo ad-hoc, então se o escaneamento falhar, tentar configurar ad-hoc aqui
iwpriv_scan_pre_eth0 Envia alguns comandos de iwpriv para a interface antes de escanear. Ver a página de manual do iwpriv para mais detalhes
iwpriv_scan_post_eth0 Envia alguns comandos de iwpriv para a interface após escanear. Ver a página de manual do iwpriv para mais detalhes

1.  Definindo configuração de rede por ESSID

Às vezes, você precisa de um IP estático quando você se conecta ao ESSID1 e você precisa de DHCP quando você se conecta ao ESSID2. Na verdade, a maior parte das variáveis de módulos podem ser definidas por ESSID. Aqui está como fazemos isto.

Nota: O seguinte funciona se você estiver usando WPA Supplicant ou Wireless Tools.

Importante: Você irá precisar consultar a documentação de (nomes de variáveis).

Listagem de código 1.1: sobrepor ajustes de rede por ESSID

config_ESSID1=( "192.168.0.3/24 brd 192.168.0.255" )
routes_ESSID1=( "default via 192.168.0.1" )

config_ESSID2=( "dhcp" )
fallback_ESSID2=( "192.168.3.4/24" )
fallback_route_ESSID2=( "default via 192.168.3.1" )

# Nós também podemos definir servidores de nome e outras coisas
# NOTA: O DHCP irá sobrepor o seguinte a menos que seja dito o contrário
dns_servers_ESSID1=( "192.168.0.1" "192.168.0.2" )
dns_domain_ESSID1="algum.domínio"
dns_search_domains_ESSID1="procurar.este.domínio. procurar.aquele.domínio"

# Você sobrepõe por endereço de MAC do ponto de acesso
# É útil se você vai para diferentes lugares que tem o mesmo ESSID
config_001122334455=( "dhcp" )
dhcpcd_001122334455="-t 10"
dns_servers_001122334455=( "192.168.0.1" "192.168.0.2" )

Atualizado 22 de dezembro de 2005

A versão original deste documento foi atualizada em 13 de agosto de 2011

Donate to support our development efforts.

Copyright 2001-2012 Gentoo Foundation, Inc. Questions, Comments? Contact us.