Como posso fazer o hostapd WPA2 funcionar?

0

Estou tentando criar um ponto de acesso Wi-Fi WPA2 simples para que eu possa usar o WiFi de maneira mais confiável quando estiver longe do roteador.

Estou seguindo este guia exceto que estou usando uma versão personalizada do hostapd que tem o driver para meu dongle USB WiFi.

Modifico ligeiramente a configuração do hostapd.conf do guia para criar um ponto de acesso aberto:

interface=wlan0
ssid=WiFi
channel=6
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
driver=rtl871xdrv
ieee80211n=1
hw_mode=g
device_name=RTL8192CU
manufacturer=Realtek

Quando faço isso, tudo funciona como um encanto e posso navegar na Internet quando conectado ao AP pelo meu telefone.

Mas, é claro, um AP aberto não é desejável e desejo criar um AP WPA2 para modificar o arquivo de configuração:

interface=wlan0
ssid=WiFi
channel=6
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
wpa=2
wpa_passphrase=Raspberry5
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
driver=rtl871xdrv
ieee80211n=1
hw_mode=g
device_name=RTL8192CU
manufacturer=Realtek

Isso não funciona como um encanto! Apesar de digitar a senha correta, "Raspberry5" ao conectar-se ao AP, meu telefone (executando o Android Marshmallow) trava "Conectando ..." por um tempo antes de retornar para "Salvo ..." e depois retornar para "Conectando ... "Isso ocorre incessantemente, com" problema de autenticação "ocasionalmente piscando. Outros dispositivos também não conseguem se conectar.

Como posso resolver este problema para poder me conectar ao AP com sucesso?

Aqui está a saída do hostapd -d /etc/hostapd/hostapd.conf:

random: Trying to read entropy from /dev/random
Configuration file: /etc/hostapd/hostapd.conf
drv->ifindex=3
l2_sock_recv==l2_sock_xmit=0x0xb69648
BSS count 1, BSSID mask 00:00:00:00:00:00 (0 bits)
Completing interface initialization
Mode: IEEE 802.11g  Channel: 6  Frequency: 2437 MHz
RATE[0] rate=10 flags=0x1
RATE[1] rate=20 flags=0x1
RATE[2] rate=55 flags=0x1
RATE[3] rate=110 flags=0x1
RATE[4] rate=60 flags=0x0
RATE[5] rate=90 flags=0x0
RATE[6] rate=120 flags=0x0
RATE[7] rate=180 flags=0x0
RATE[8] rate=240 flags=0x0
RATE[9] rate=360 flags=0x0
RATE[10] rate=480 flags=0x0
RATE[11] rate=540 flags=0x0
Flushing old station entries
Deauthenticate all stations
+rtl871x_sta_deauth_ops, ff:ff:ff:ff:ff:ff is deauth, reason=2
rtl871x_set_key_ops
rtl871x_set_key_ops
rtl871x_set_key_ops
rtl871x_set_key_ops
Using interface wlan0 with hwaddr 80:1f:02:d0:f5:94 and ssid 'WiFi'
Deriving WPA PSK based on passphrase
SSID - hexdump_ascii(len=4):
     57 69 46 69                                       WiFi
PSK (ASCII passphrase) - hexdump_ascii(len=10): [REMOVED]
PSK (from passphrase) - hexdump(len=32): [REMOVED]
rtl871x_set_wps_assoc_resp_ie
rtl871x_set_wps_beacon_ie
rtl871x_set_wps_probe_resp_ie
urandom: Got 20/20 bytes from /dev/urandom
GMK - hexdump(len=32): [REMOVED]
Key Counter - hexdump(len=32): [REMOVED]
WPA: group state machine entering state GTK_INIT (VLAN-ID 0)
GTK - hexdump(len=16): [REMOVED]
WPA: group state machine entering state SETKEYSDONE (VLAN-ID 0)
rtl871x_set_key_ops
rtl871x_set_beacon_ops
rtl871x_set_hidden_ssid ignore_broadcast_ssid:0, WiFi,4
rtl871x_set_acl
wlan0: Setup of interface done.

Aqui está / etc / network / interfaces:

# interfaces(5) file used by ifup(8) and ifdown(8)

# Please note that this file is written to be used with dhcpcd
# For static IP, consult /etc/dhcpcd.conf and 'man dhcpcd.conf'

# Include files from /etc/network/interfaces.d:
source-directory /etc/network/interfaces.d

auto lo
iface lo inet loopback

iface eth0 inet dhcp

allow-hotplug wlan0
iface wlan0 inet static
  address 10.0.1.1
  netmask 255.255.255.0

up iptables-restore < /etc/iptables.ipv4.nat

E aqui está o /etc/dhcp/dhcpd.conf sem comentários:

ddns-update-style none;
default-lease-time 600;
max-lease-time 7200;
authoritative;
log-facility local7;
subnet 10.0.1.0 netmask 255.255.255.0 {
        range 10.0.1.2 10.0.1.254;
        option broadcast-address 10.0.1.255;
        option routers 10.0.1.1;
        default-lease-time 600;
        max-lease-time 7200;
        option domain-name "local";
        option domain-name-servers 10.0.0.1, 8.8.8.8;
}

Modifiquei / etc / network / interfaces e /etc/dhcp/dhcp.conf no guia para usar o intervalo de endereços IP que desejo usar.

Agradecemos antecipadamente por qualquer ajuda e, claro, teremos prazer em fornecer mais registros / arquivos úteis.

    
por LJD200 28.07.2016 / 23:16

1 resposta

0

OK, estou trabalhando.

Eu criei um link para este post nos Fóruns do Raspberry Pi e um usuário, epoch1970, me disse que a versão personalizada do hostapd não é mais necessária para dispositivos com o chipset RTL8188CUS, que é o meu. De fato, você não pode usá-lo - você encontra o problema que eu experimentei!

Ele vinculou este tópico no fórum, o que explica as coisas.

Eu limpei o Raspbian e instalei o hostapd do repo, o driver especificado = nl80211 na minha configuração do hostapd e tudo funcionou de forma brilhante.

    
por 31.07.2016 / 19:56