¿Cómo puedo configurar mi servidor sin cabeza para conectarse automáticamente a una red inalámbrica?

18

Estoy configurando un servidor sin cabeza, pero no tengo acceso a Ethernet donde quiero ponerlo, así que necesito que se conecte automáticamente a mi red WiFi cuando se inicia (tiene una tarjeta inalámbrica). Puedo conectarme a una conexión Ethernet para configurarlo, pero necesito que se conecte automáticamente a mi punto de acceso a partir de ese momento.

¿Cómo puedo configurar esto?

Seth
fuente

Respuestas:

19

Después de investigar mucho, lo he puesto a funcionar. Como tengo una tarjeta inalámbrica Intel, no tuve que instalar ningún controlador adicional, pero es posible que tenga que hacerlo, dependiendo de la tarjeta que tenga.

Primero debe averiguar qué interfaz está utilizando su tarjeta inalámbrica. Usamos el iwconfigcomando para esto:

iwconfig  

En mi caso, mi tarjeta inalámbrica es la wlan0interfaz, así que la usaré. Ahora necesitamos buscar redes inalámbricas:

iwlist wlan0 s  

Esto debería dar mucha salida, mostrando los detalles de las diversas redes inalámbricas en su área. Por lo general, es más fácil filtrar por ESSID. grepnos ayuda aquí:

iwlist wlan0 s | grep ESSID  

Esto enumerará los nombres de todas las redes inalámbricas en su área. Ahora es el momento de conectarse a su red.

Redes no seguras y WEP

Si su red no está segura o está asegurada por el WEP anterior (¡es hora de actualizar su seguridad o enrutador!) La conexión es relativamente simple. Si su red no es segura, debería poder conectarse con esto:

iwconfig wlan0 essid NAME_OF_NETWORK  

Si su red está protegida con WEP, simplemente agregue el keyargumento seguido de su contraseña, así:

iwconfig wlan0 essid NAME_OF_NETWORK key PASSWORD  

Puede que tengas que correr

dhclient  

Para que su enrutador le asigne una dirección IP.

WPA / WPA2

WPA / WPA2 es un poco más complicado. Necesitarás usar wpa_supplicant. Primero cree el archivo de configuración en /etc:

sudo wpa_passphrase NETWORK_NAME NETWORK_PASSWORD > /etc/wpa_supplicant.conf  

Ahora necesitamos conectarnos:

sudo wpa_supplicant -B -iINTERFACE_NAME -cPATH_TO_CONFIG -DDRIVER  

Por ejemplo:

sudo wpa_supplicant -B -iwlan0 -c/etc/wpa_supplicant.conf -Dwext  

-Bse ejecuta wpa_supplicanten segundo plano. El wextconductor debería funcionar en la mayoría de los casos. Para ver otros controladores ejecutados:

wpa_supplicant  

Para obtener más información sobre cómo conectarse, consulte ¿Cómo conectarse y desconectarse a una red manualmente en la terminal?

Conéctate al inicio

Ahora necesitamos editar /etc/network/interfaces. Abrirlo en su editor favorito ( vim, nano, etc.); Necesitarás usar sudo.

Eliminar todo excepto:

auto lo
iface lo inet loopback

(el dispositivo de bucle invertido). Ahora agregue:

auto wlan0  
iface wlan0 inet dhcp  

pre-up <COMMAND> 

¿Dónde wlan0está su interfaz inalámbrica y <COMMAND>es el comando que utiliza para conectarse a su red (ver arriba). Por ejemplo, si su red no es segura, agregaría:

pre-up iwconfig wlan0 essid some_network_name  

Si su red está protegida con WPA / 2, agregaría algo como esto:

pre-up sudo wpa_supplicant -B -iwlan0 -c/etc/wpa_supplicant.conf -Dwext  

Si está utilizando wpa_supplicant, también debe agregar:

post-down sudo killall -q wpa_supplicant  

Guarde el archivo, reinicie, desconecte su ethernet e intente ejecutar:

sudo apt-get update

Si el comando se completa con éxito, ¡felicidades! Estas en linea! Si el comando no se completa correctamente, agregue un comentario a continuación.

Ejemplos y explicaciones

Si su red no está segura o protegida con WEP, /etc/network/interfacesdebería verse similar a esto ahora:

auto lo
iface lo inet loopback  

auto wlan0  
iface wlan0 inet dhcp  

pre-up iwconfig wlan0 essid some_network_name 
# note: if WEP secured you would also have a 'key' argument with your password

Si su red está protegida con WPA / 2, /etc/network/interfacesdebería ser similar a esto:

auto lo
iface lo inet loopback  

auto wlan0  
iface wlan0 inet dhcp  

pre-up sudo wpa_supplicant -B -iwlan0 -c/etc/network/wpa_supplicant.conf -Dwext  

post-down sudo killall -q wpa_supplicant  

Ahora una explicación.

  • auto wlan0: Inicia la wlan0interfaz automáticamente.

  • iface wlan0 inet dhcp: Nos obtiene una dirección IP a través de DHCP

  • pre-up: Especifica los comandos para iniciar la conexión.

  • post-down: Especifica los comandos que se utilizarán para limpiar después de nosotros mismos (si es necesario).

Fuentes:

Seth
fuente
9

Sugiero una dirección IP estática para que pueda ssh y ftp fácilmente en el servidor. Además, puede simplificar significativamente su archivo:

auto lo
iface lo inet loopback  

auto wlan0  
iface wlan0 inet static
address 192.168.1.125  
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 8.8.8.8 192.168.1.1
wpa-ssid <your_network>
wpa-psk <your_key>

Asegúrese de que la dirección esté fuera del rango utilizado por el enrutador para DHCP y, por supuesto, sustituya sus detalles apropiados aquí.

chili555
fuente
1
Sería genial si pudieras agregar un poco más de explicación para una nueva persona, para que no tengan que leer mi respuesta antes de entender la tuya.
Seth
¿Su respuesta funcionará SOLO con los cambios dados al archivo de interfaces? Quiero decir, ¿no necesita eso que wpa_supplicant se ejecute en segundo plano, etc., etc. y todas las demás cosas como se sugiere en la respuesta aceptada de Seth?
OverTheEdge
@OverTheEdge lo hace. Por favor, inténtelo y, si no, comience una nueva pregunta y lo ayudaremos.
chili555