Habilitar Linux como Access Point

Tengo un servidor MintBox cuyas antenas wireless no estoy usando… así que decidí incrementar la cobertura de mi red inalámbrica habilitándolo como un Access Point. El servidor está corriendo Linux Mint 16 Petra, pero este procedimiento debe funcionar con cualquier variante de Debian.

Nótese que es un Access Point, no un router. Es decir, el server no ofrece servicios DHCP, DNS o de ruteo, para eso tengo un ruter. Simplemente conecta la red inalámbrica al resto de mi LAN.

Arquitectura

El servidor cuenta con tarjetas Ethernet (eth0 y eth1) y una tarjeta Wi-Fi (wlan0).

Vamos a crear un bridge (br0) entre la tarjeta wlan0 y la eth0. La tarjeta eth1 no está en uso.

Requisitos

Instalar los paquetes bridge-utils y hostapd.

# apt-get install hostpad
# apt-get install bridge-utils

Configuración de hostapd

Editar el archivo /etc/default/hostapd. Descomentar y ajustar el valor de DAEMON_CONF para que apunte al archivo de configuración:

DAEMON_CONF="/etc/hostapd/hostapd.conf"

Crear el arhivo /etc/hostapd/hostapd.conf con los siguientes valores. Esto configura una red WPA2-PSK con autenticación TKIP y cifrado AES/CCMP.

#
# See https://w1.fi/cgit/hostap/plain/hostapd/hostapd.conf for reference
#
interface=wlan0
bridge=br0
driver=nl80211
hw_mode=g
ieee80211n=1
wmm_enabled=1
ht_capab=[HT40][HT20][SHORT-GI-20]
country_code=MX
ieee80211d=1
channel=3
ignore_broadcast_ssid=0
ssid=mi-nombre-de-red
wpa=2
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
wpa_passphrase=mi-contraseña
auth_algs=1
macaddr_acl=0

Configurar las interfaces de red

Editar el archivo /etc/network/interfaces para crear el bridge y eliminar la configuración de la tarjeta eth0:

auto lo br0

iface lo inet loopback

iface wlan0 inet manual

iface eth0 inet manual

iface br0 inet static
        bridge_ports wlan0 eth0
        address 192.168.1.10
        netmask 255.255.255.0
        gateway 192.168.1.254
        dns-nameserver 192.168.1.254

Reiniciar

Tu nueva SSID debe estar visible al reiniciar.