¿Cómo configurar Ubuntu como punto de acceso inalámbrico?

25

¿Cómo puedo configurar mi WiFi para que se use como punto de acceso inalámbrico en Ubuntu Server?

Tengo un servidor Ubuntu local, tiene una tarjeta inalámbrica (802.11a / b / g / n) y realmente quiero configurarlo como un punto de acceso 802.11n ya que mi punto de acceso normal no es compatible con N.

También debe funcionar como un interruptor para que pueda conectarme y obtener DHPC.

Editar: no veo Network Manager como una buena solución, ya que depende de muchos paquetes X11, y no quiero eso en un servidor.

LassePoulsen
fuente

Respuestas:

7

Encontré un buen hilo . Debería funcionar en Ubuntu 10.04 sin problema. También es CLI, por lo que no necesita ninguna biblioteca X en absoluto. :)

Micheal Harker
fuente
1
El hilo vinculado en realidad tiene 41 publicaciones, y no está claro en absoluto cuál es la solución a la pregunta. La respuesta debe resumirse aquí.
Frank Kusters
5

Haga clic en el icono de NetworkManager en el panel y elija "Crear red inalámbrica ..." Debería poder configurar esto como una conexión de "Sistema" (en lugar de "Usuario").

Usted dice que esto está en un servidor, por lo que quizás esté accediendo al servidor solo a través de SSH. En ese caso, puede probar alguna conexión X remota; o intente configurar NetworkManager a través de la línea de comando, que debería ser posible, si no es trivial.

loevborg
fuente
Posible, pero no quiero NetworkManager
LassePoulsen
Dios mío, ¡funciona! Tuve problemas con WPA1 y 2 y WEP, pero sin cifrado, funciona bien.
WitchCraft
-1

Este es un artículo bastante bueno (aunque un poco desactualizado [si 2006 está desactualizado]) que describe cómo hacerlo desde la línea de comandos.

http://www.linux.com/archive/feed/55617

Suponiendo que su dispositivo inalámbrico funciona bien, probablemente pueda sumergirse directamente en la sección de puente a mitad de camino.


El acceso protegido a Wi-Fi versión 2 ( WPA2 ) se está convirtiendo en el estándar de facto para proteger las redes inalámbricas, y una característica obligatoria para todos los nuevos productos de Wi-Fi certificados por la Alianza de Wi-Fi . Todos conocemos las debilidades de seguridad de su predecesor, WEP; esta vez lo hicieron bien. Aquí se explica cómo implementar el protocolo WPA2 en un host Linux y crear un punto de acceso inalámbrico seguro (WAP) para su red.

La mayoría de los WAP comerciales de nivel de consumidor funcionan de la misma manera simple: crean un puente entre una interfaz de red cableada (Ethernet) y una inalámbrica. Eso es exactamente lo que haremos nosotros también. La parte WAP será manejada por el hostapddaemon, por lo que debe elegir una interfaz inalámbrica que admita. Entre los NIC admitidos están aquellos con los conjuntos de chips Prism 2 / 2.5 / 3, Atheros ar521x y Prism GT / Duette / Indigo; hay una lista disponible en la página de inicio de hostapd, junto con enlaces para controladores de Linux para cada conjunto de chips. Tengo una tarjeta PCI basada en Atheros AR5212 instalada en mi WAP, que es compatible con hostapd. Aunque cualquier sistema Pentium (o más reciente) funcionará, algunas tarjetas inalámbricas PCI requieren PCI 2.2 para funcionar, así que asegúrese de verificar las especificaciones de la placa base de su sistema antes de comprar. También necesitará una interfaz Ethernet que sea compatible con Linux para conectar su WAP a la LAN; La mayoría de las interfaces integradas funcionarán bien.

Mi configuración se basa en Debian Testing (Etch), pero cualquier distribución GNU / Linux con un kernel 2.6 reciente funcionará. El núcleo debe ser compatible con 802.1d Ethernet Bridging (CONFIG_BRIDGE) y LAN inalámbrica (CONFIG_NET_RADIO). La mayoría de los núcleos de stock predeterminados tienen estas características habilitadas, pero si prefiere crear su propio núcleo, asegúrese de incluir estas opciones. Los únicos otros paquetes que necesita instalar, además de hostapd, son bridge-utils y wireless-tools . Las principales distribuciones de GNU / Linux ofrecen paquetes binarios para todos estos programas, pero si prefiere construirlos desde la fuente, puede encontrar más información en sus páginas de inicio.

Antes de unir las dos interfaces, debemos colocar la interfaz inalámbrica (en mi caso ath0; ajustarla para que coincida con su configuración) en modo hostap o Master. Por lo general, esto es tan simple como ejecutar iwconfig ath0 mode Master, pero dado que el soporte de wlan en Linux aún no está estandarizado, algunos controladores pueden necesitar una configuración adicional. Si tiene una interfaz basada en Atheros, también debe ejecutar lo siguiente: wlanconfig ath0 destroy; wlanconfig ath0 create wlandev wifi0 wlanmode apantes del iwconfigcomando. Después de eso, iwconfig ath0volverá a correr mode:Master, entre otros.

Ahora creemos el puente. Asumiremos que la interfaz Ethernet es eth0:

ifconfig eth0 0.0.0.0 up
ifconfig ath0 0.0.0.0 up
brctl addbr br0
brctl addif br0 eth0
brctl addif br0 ath0

Y para detener el puente, debes ejecutar:

ifconfig br0 down
ifconfig eth0 0.0.0.0 down
ifconfig ath0 0.0.0.0 down
brctl delif br0 eth0
brctl delif br0 ath0
brctl delbr br0

Opcionalmente, puede dar una dirección IP a la interfaz br0 si desea acceder al host WAP desde la red, utilizando, por ejemplo, SSH. Cada distribución ofrece su propia forma de configurar la red; Si usa Debian (o cualquier distribución basada en Debian, como Ubuntu) puede concluir todos los comandos anteriores simplemente agregando lo siguiente a su /etc/network/interfacesarchivo:

auto ath0 br0

iface ath0 inet manual
        pre-up wlanconfig ath0 destroy
        pre-up wlanconfig ath0 create wlandev wifi0 wlanmode ap
        post-down wlanconfig ath0 destroy
        wireless-mode master

iface br0 inet manual
        bridge_ports eth0 ath0

Tenga en cuenta que ifupdownmaneja eth0 automáticamente, por lo que no necesita una estrofa separada para ello /etc/network/interfaces. Para verificar que el puente esté configurado correctamente, ejecute brctl show. Deberías obtener algo como esto a cambio:

bridge name     bridge id               STP enabled     interfaces
br0             8000.00032f2481f0       no              ath0
                                                        eth0

Antes de comenzar a meterse con hostapd, necesitamos una frase de paso para WPA2. Como con todas las contraseñas, debe ser aleatorio y, por lo tanto, difícil de adivinar. Una buena manera de obtener una frase de contraseña aleatoria es visitar el Generador de contraseñas de seguridad ultra alta de Gibson Research Corp. y usar la tercera contraseña que crea, la que se titula 63 caracteres alfanuméricos aleatorios (az, AZ, 0-9). Tener una frase de contraseña que incluya caracteres ASCII no alfanuméricos (por ejemplo,!, @, Etc.) puede ser tentador, pero a algunos clientes, a saber, Windows XP, no parece gustarles.

Ahora crea un nuevo archivo de texto llamado /etc/hostapd/wpa_psky pega tu frase de contraseña como:

00:00:00:00:00:00 PASSPHRASE

La primera parte con los ceros significa 'hacer coincidir todas las direcciones MAC' y hace exactamente eso. También puede usar diferentes frases de contraseña para cada cliente agregando una nueva línea al archivo con la dirección MAC de cada cliente y su frase de contraseña. Asegúrese de que solo la raíz tenga acceso a ese archivo ejecutando chmod 600 /etc/hostapd/wpa_psk.

Ahora cree una copia de seguridad del archivo de configuración principal de hostapd /etc/hostapd/hostapd.confy manténgalo como referencia al ejecutarlo mv /etc/hostapd/hostapd.conf /etc/hostapd/hostapd.conf.orig. Cree un nuevo archivo hostapd.conf y pegue las siguientes líneas en él:

interface=ath0
bridge=br0
driver=madwifi
logger_syslog=-1
logger_syslog_level=2
logger_stdout=-1
logger_stdout_level=2
debug=0
dump_file=/tmp/hostapd.dump
ctrl_interface=/var/run/hostapd
ctrl_interface_group=0
ssid=My_Secure_WLAN
#macaddr_acl=1
#accept_mac_file=/etc/hostapd/accept
auth_algs=3
eapol_key_index_workaround=0
eap_server=0
wpa=3
wpa_psk_file=/etc/hostapd/wpa_psk
wpa_key_mgmt=WPA-PSK
wpa_pairwise=CCMP
stakey=0

Reemplace las partes en cursiva con información que coincida con su configuración. Si desea permitir que solo clientes específicos se conecten, elimine el carácter # de las dos líneas anteriores y copie las direcciones MAC de esos clientes /etc/hostapd/accept, y haga que este archivo sea accesible solo por root (chmod 600). Para obtener más información sobre las opciones utilizadas, lea los comentarios en el archivo de copia de seguridad que creó anteriormente (hostapd.conf.orig).

Inicie el demonio hostapd ( /etc/init.d/hostapd start) y /var/log/daemon.logverifique que funcione. Si el demonio no aparece, aumente el nivel de depuración ( option debug=en hostapd.conf) a 4 e intente nuevamente.

Ahora, si busca redes inalámbricas disponibles desde un cliente, debería ver su ESSID. Para conectarse al WAP desde un cliente Linux, debe instalar wpa_supplicant y crear un archivo de configuración, wpa_supplicant.conf (en Debian, instalado en /etc/wpa_supplicant/) de la siguiente manera:

update_config=1
ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=0
eapol_version=1
ap_scan=1
fast_reauth=1

network={
        ssid="My_Secure_WLAN"
        proto=RSN
        key_mgmt=WPA-PSK
        pairwise=CCMP
        group=CCMP
        psk="PASSPHRASE"
        priority=5
}

Nuevamente, reemplace las partes en cursiva para que coincidan con su configuración y ejecución wpa_supplicant -i eth1 -D wext -c /etc/wpa_supplicant/wpa_supplicant.conf(reemplace eth1con el nombre de su interfaz wlan y escriba con el controlador apropiado para su tarjeta; ejecute wpa_supplicant sin ninguna opción para obtener más información). Este comando inicia wpa_supplicant en primer plano e intenta conectarse al WAP. Si el resultado es el siguiente, ya está todo listo:

Trying to associate with 00:11:22:33:44:55 (SSID='My_Secure_WLAN' freq=0 MHz)
Associated with 00:11:22:33:44:55
WPA: Key negotiation completed with 00:11:22:33:44:55 [PTK=CCMP GTK=CCMP]
CTRL-EVENT-CONNECTED - Connection to 00:11:22:33:44:55 completed (auth) [id=0 id_str=]

Dé una dirección IP estática a su interfaz inalámbrica (o ejecute un cliente DHCP) e intente hacer ping a un host dentro de su LAN para verificar que la conexión funciona.

Felicitaciones, acaba de crear un punto de acceso inalámbrico altamente personalizable. Aunque esta configuración es ideal para el uso en el hogar o la pequeña oficina, necesita algo más robusto en la empresa, con autenticación con un servidor RADIUS, o incluso mejor, una VPN.

papa
fuente
1
Está muy desactualizado ... ¡La pila de controladores inalámbricos del núcleo ha cambiado desde entonces aparentemente!
LassePoulsen
Es cierto, pero el puente y el material wpa_supplicant, que es el material en bruto necesario para obtenerlo, es útil.
papa
1
La página es un 404. -1 de mí. Si hubiera resumido la información contenida en el linke, su respuesta seguiría siendo válida.
Marco
Enlace muerto ......
obayhan