PBC.sh: Botón WPS virtual para conexión WPS PBC en Linux (Pagina 1) / Wireless y redes en linux. / Foro Wifi-libre.com

El libre pensamiento para un internet libre

No estas registrado.     

Anuncio

Wifi-libre.com: El libre pensamiento para un internet libre / Regístrese ahora

#1 10-06-2017 01:26:22

kcdtv
Administrator

Registrado: 14-11-2014
Mensajes: 3,521

PBC.sh: Botón WPS virtual para conexión WPS PBC en Linux

PBC.sh: Emulador de botón WPS para conexiones WPS PBC desde distribuciones GNU_linux

giphy.gif

¡Yepa!  smile
  Comparto con [email protected] un script chiquito y sencillo para hacer conexiones WPS PBC desde nuestro sistema GNU-Linux.
  El script actúa como un botón PBC virtual.
Cuando lo ejecutamos se abre un intervalo WPS PBC de 120 segundos que permite conectar con un PA en cuanto prensamos su botón WPS (o su botón virtual desde su interfaz de gestión web)
   Fundamentalmente no es otra cosa que una automatización de los pasos descritos en:

  Network manager (el gestor de redes para linux) no es compatible con el WPS.
Tienen un ticket abierto desde 2010 sobre WPS y no se ven ningunos avances (Bug 613071 - Wi-Fi Protected Setup (WPS) )
  Estaba haciendo pruebas con el WPS PBC y me harté de repetir los pasos
De ahí este pequeño aporte sin pretensiones (y para desoxidar un poco al bash que lo necesitaba... big_smile )
  La conexión por WPS PBC es inmediata y muy cómoda, sin embargo :

  • Pequeña advertencia:
    Sabéis que el WPS en modo PIN es vulnerable y se suele decir que el WPS en modo PBC es seguro.
    No es cierto y se puede explotar el intervalo WPS PBC para fomentar ataques Rogue AP (ver Un historia de Rogue AP by koala )
      Si estamos desconectados de nuestra red y que vemos de repente en el gestor de redes varias redes con un nombre igual o parecido al nombre de nuestra; no deberíamos usar el protocolo PBC para volver a conectarnos.
    Podríamos estar sufriendo un ataque DoS con PA trampas que tienen el WPS habilitado y abierto y nos conectaríamos a ellos
      Del mismo que no debemos conectarnos con el gestor de redes a una red trampa, no es ninguna novedad.   wink

Conexión WPS PBC con PBC.sh

PBCsh_1.jpg

Es un script en bash que no requiere ninguna dependencias extras ya que trabaja con comandos y herramientas fundamentales
  Hace falta un sistema un mínimo al día porque se emplean ordenes para system.d y se usa nmcli.
No funcionará por ejemplo en versiones de Ubuntu anteriores al  2015 (lo mismo con debian) .

Podéis descargar lo desde github en fomrato *.zip: master.zip
O mejor descargar lo ya listo para uso en consola con git

git clone https://github.com/kcdtv/PBC.git 

Os situéis en la carpeta que contiene el script

cd PBC

( Si lo has hecho con el paquete *.zip en lugar de usar git tendrás muy probablemente que situarte en "Descargas" para llegar al script wink )
Y lo ejecutéis con privilegios de administrador

sudo bash PBC.sh

- Si tenéis una sola interfaz wifi todo se hace al instante automáticamente  y podéis ya prensar el botón WPS de vuestro router.

PBCsh_2.jpg

- Si tenéis varias interfaces tendréis que seleccionar una entrando su numero

PBCsh_3.jpg

Está en "inglès aproximativo" pero creo "select interface" y "push button" se entienden y son las únicas cosas que hay que entender.
Tenéis entonces 120 segundos para prensar el botón WPS de vuestro router para efectuar la conexión.
En este punto el script ha:

  1. Redactado un fichero de configuración para wpa_supplicant ( /tmp/PBC.conf )

  2. Detenido Network manager. Es necesario para ejecutar wpa_supplicant y wopa_cli. Si estamos conectado se pierde la conexión WiFi, no se pierde la conexión por cable

  3. Inciado wpa_supplicant en tarea fondo

  4. Lanzado una petición de conexión WPS PBC mediante wpa_cli

En cuanto prenséis el botón WPS del Punto de Acceso  se efectúa la conexión y el script devuelve la llave WPA en consola

PBCsh_4.jpg

Notar que el proceso se hace en dos tiempos.
Se podría hacer en uno pero conviene hacerlo así.

  1. Se obtiene la contraseña WPA con wpa_cli.
    Cuando tenemos la contraseña es que estamos conectados y solo nos haría falta negociar una IP para nevegar. Pero si lo hacemos ahora hay unas pegas:
      - La conexión se pierde si cerramos la consola
      - Network manager no se está ejecutando, no podemos gestionar ninguna interfaz normalmente y debe estar detenido para que se mantenga la conexión
      - El perfil creado (el fichero PBC.conf) solo vale para wpa_supplicant y no nos sirve para conectar desde Network Manager.

  2. Importar los datos en Network Manager que reiniciamos
      - Así volvemos al estado inicial. Es lo que debe hacer un script: No dejar al usuario sin un servicio básico que se estaba ejecutando antes de ejecutar el script.
      - El perfil está creado con el password: Nunca tendréis que entrar la llave una sola vez.

  3. Conexión con mcli
      nmcli (network manager command line) es un interprete de ordenes para Network Manager. Permite realizar la conexión final con Network Manager sin intervención del usuario

La descripción del proceso  puede dar a pensar que se pierde tiempo.   
Tiempo para conectarse del todo con una sola interfaz (así no hay que seleccionar nada y la conexión se hace del tirón) y prensando el botón WPS del router un poco antes de ejecutar PBC.sh: menos diez segundos

PBCsh_5.jpg

Se pierden un puñal de segundos por el hecho de hacer la conexión completa en dos tiempos. Nada más. cool
   
  ¡Buenas noches! smile

Desconectado

Anuncio

Wifi-highpower.es es distribuidor oficial de Alfa Network

#2 12-06-2017 19:56:52

kcdtv
Administrator

Registrado: 14-11-2014
Mensajes: 3,521

Re: PBC.sh: Botón WPS virtual para conexión WPS PBC en Linux

versión 0.2

  • Sintaxis optimizada gracias a shellcheck

  • No se invoca más a la función para limpiar cuando el script se parra por falta de privilegios de administrador. Ningún fichero se ha creado en este punto: No hace falta limpiar nada.

Y para ser justo con todos los usuarios de wifi-libre pongo una chincheta a este tema ya que lo hago sistemáticamente cuando se trata de una creación de un miembro de nuestro comunidad.
vale para mi también, big_smile

Desconectado

#3 15-06-2017 22:41:23

kcdtv
Administrator

Registrado: 14-11-2014
Mensajes: 3,521

Re: PBC.sh: Botón WPS virtual para conexión WPS PBC en Linux

versión 0.3

  • El perfil de red es ahora disponible para cualquier interfaz

  • Añadido un modo de salida

Desconectado

Anuncio

Wifi-highpower.es es distribuidor oficial de Alfa Network

Temas similares

Pie de página

Información del usuario

Ultimo usuario registrado: JoelSouset
Usuarios registrados conectados: 0
Invitados conectados: 15

Estadisticas de los foros

Número total de usuarios registrados: 802
Número total de temas: 943
Número total de mensajes: 8,303

Máx. usuarios conectados: 69 el 15-10-2017 09:23:21