Esto esta escrito para la persona que acaba de instalar FreeBSD y necesita configurar rapidamente una conexión inaambrica. Cubre conexion inalambrica sin autenticacion, WEP y configuracion personal WPA/WPA2. Se supone que ya ha obtenido su tarjeta reconocida por el sistema.
La mayor parte de esto se toma de la pagina *Wireless* del Manual de FreeBSD, dejando de lado la mayoría de las explicaciones y opiniones. En el ejemplo, utilizaremos una tarjeta Atheros, que su sistema FreeBSD ve como ath0
, y es una de las tarjetas mas comunes.
Tenga en cuenta que en FreeBSD-11 y en adelante, no vera ath0
.
En FreeBSD-10.XY y versiones posteriores, pruebe el comando ifconfig
. Con suerte, muestra tu tarjeta. Si no, eso esta mas alla del alcance de este articulo, pero puede comenzar tratando de averiguar el modelo y ver si es compatible, o encontrar una conexion inalambrica USB que funcione. Puede ser tan simple como cargar un modulo un arranque. Cada version de FreeBSD admite mas tarjetas. Vea a continuacion FreeBSD-11 y versiones posteriores.
# sysctl net.wlan.devices
Este comando deberia mostrarle su hardware de wireless.
En FreeBSD-11, hacer ifconfig
o ifconfig -l
, ya no mostrara dicho ath0 (o iwm0, o cualquier designacion que use su tarjeta). En su lugar, puede ejecutar sysctl net.wlan.devices
, que deberia mostrarle si el sistema ha detectado tu tarjeta. Si es asi, continue con el siguiente paso.
A veces, incluso si el sistema ve su tarjeta, tendra que editar /boot/loader.conf
. Una vez que conozca su tarjeta, por ejemplo, una iwm
, consulte la pagina del manual. Por ejemplo, cualquier cosa que use el controlador urtwn
, como el peque~no Edimax 7811-UN, requiere dos lineas en /boot/loader.conf
if_urtwn_load="YES" legal.realtek.license_ack=1
La mayoria de las tarjetas Intel, que usan el controlador iwm
, tambien requeriran que se agreguen lineas a /boot/loader.conf
, por lo tanto, una vez que se determina el controlador, ejecute el man, por ejemplo, si esta usando iwm, man iwm
para ver si se necesita algo en /boot/loader.conf
.
Primero, uno crea el dispositivo wlan0. Suponiendo que la tarjeta es ath0, el comando es:
# ifconfig wlan0 create wlandev ath0
Deberia ver que el dispositivo ha sido creado. Para que esto suceda automaticamente al arrancar, agregue lo siguiente a /etc/rc.conf
.
wlans_ath0 = "wlan0"
Entonces si por ejemplo, estas en la Biblioteca Publica de tu cuidad, y tiene una red wireless abierta
(sin password), llamada movistar2,4GHZ\_464CBF
. Ha creado su dispositivo `wlan0` como se describe, asi que conectelo a la red de movistar2,4GHZ\_464CBF
.
Primero conseguimos el nombre de la red.
# ifconfig wlan0 up scan SSID/MESH ID BSSID CHAN RATE S:N INT CAPS movistar2,4GHZ_464CBF 84:aa:9c:46:4c:bf 6 54M -82:-96 100 EP RSN BSSLOAD HTCAP WPS WME Electrolinux 00:1d:7e:45:30:0c 6 54M -90:-96 100 EP RSN WME
Esto busca redes disponibles y devolvera una lista de ellas. En este caso, queremos conectarnos a la red movistar2,4GHZ\_464CBF
, asi que usaremos:
# ifconfig wlan0 ssid movistar2,4GHZ_464CBF
Esperemos que vea que esta conectado, y al ejecutar ifconfig ath0 mostrara que esta conectado. Obtenga una direccion de la red WiFi con:
# dhclient wlan0
Deberias ver que tiene algo similar a esto con una direccion IP de la red:
wlan0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 ether aa:bb:cc:dd:ee:ff inet 192.168.1.110 netmask 0xffffff00 broadcast 192.168.1.255 groups: wlan ssid movistar2,4GHZ_464CBF channel 6 (2437 MHz 11g ht/20) bssid 84:aa:9c:46:4c:bf regdomain 101 indoor ecm authmode WPA2/802.11i privacy ON deftxkey UNDEF AES-CCM 2:128-bit txpower 20 bmiss 7 scanvalid 60 protmode CTS ampdulimit 64k ampdudensity 8 shortgi -stbctx stbcrx -ldpc wme burst roaming MANUAL media: IEEE 802.11 Wireless Ethernet MCS mode 11ng status: associated nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
WEP es bastante inseguro, y probablemente no deberia usarlo, pero si lo esta usando, primero cree el dispositivo wlan0
como se describio anteriormente.
Suponiendo que su ssid WEP es mywep
y tiene una contraseña de 1234
, el comando seria:
# ifconfig wlan0 ssid <mywep> wepmode on wepkey <0x8787887878> webextkey 1
Eso es usar la version hexadecimal de la clave. No estoy seguro que esto funcione, que es especificar la version ASCII en la linea de comando, ya que no he visto una red WEP en mucho tiempo, despues de 2 minutos en google no lo he encontrado, no segui insistiendo. En Linux, creo que uno solia usar -s
(como en una cadena), asi que hacer algo como:
ifconfig wlan0 ssid <mywep> wepmode on wepkey -s <mywepkey> webextkey 1
Puede funcionar, pero no lo puedo comprobar. En general, REALMENTE NO deberias usar WEP.
Este es el valor predeterminado para la mayoria de los enrutadores domesticos. Asumiendo que su red se llama mywpa
y su password es 1234
, una vez mas, primero cree el dispositivo con ifconfig wlan0 create wlandev ath0
. Luego cree un archivo wpa\_supplicant.conf
. Por ahora, el archivo wpa\_supplicant.conf
puede permanecer en su directorio $HOME mientras realiza la prueba.
# vim /etc/wpa_supplicant.conf network={ ssid="mywpa" psk="1234" }
Si su router tiene la red oculta, como lo hacen algunos de los routers Linksys mas antiguos, entonces deberia ser ligeramente diferente.
# vim /etc/wpa_supplicant.conf network={ scan_ssid=1 ssid="mywpa" psk="1234" }
Para ejecutar esto desde la línea de comandos (necesitaa privilegios de root o usar doas o sudo).
# ifconfig wlan0 -i wlan0 -c wpa_supplicant.conf
Esto te mostrara lo que esta sucediendo. Una vez que este seguro de que esta funcionando, puede ejecutarlo en segundo plano, agregando la opcion *-B*.
# ifconfig wlan0 -B -i wlan0 -c wpa_supplicant.conf
Una vez que esta asociado con la red, puede usar *dhclient* para obtener una direccion. (Ejecutar ifconfig wlan0 debería mostrar que eta asociado).
# dhclient wlan0
Para que este sea automatico, mueva su wpa_supplicant.conf
a /etc/
y agregue lo siguiente a /etc/rc.conf
. (Asumimos que ya tiene wlans0_ath0 = “wlan0” en /etc/rc.conf)
ifconfig_wlan0="WPA SYNCDHCP"
Y deberia ejecutar a continuacon:
# service netif restart
Y tambien puede ser necesario ejecutar:
# service routing restart
Su configuracion de `wpa` debe asociar su tarjeta con la red y obtener una direccion a traves de DHCP.
Si bien la siguiente parte va mas alla de ser un inicio rapido, si esta guardando un archivo `wpa_supplicant.conf`, puede usar el comando wpa_passphrase
para crear dicho archivo. (Creo que requiere una contrase~na de 8 caracteres, que es una buena cosa, asi que la usaremos en este ejemplo).
# wpa_passphrase mywpa 12345678 > wpa_supplicant.conf
Esto produce un archivo que contendra:
network={ ssid="mywpa" #psk="12345678" psk=271e5385c39a01edd8c0de9e62b1f3f392271df59365508935f6815234817736 }
Luego puede eliminar la línea comentada #psk=“12345678”
y copiar el archivo a /etc/wpa_supplicant.conf
. (Nuevamente, si se trata de una red oculta, inserte el scan_ssid=1
sobre la linea ssid=“mywpa”
).