Tienda Wifi

Tienda Wifi
CiudadWireless es la tienda Wifi recomendada por elhacker.NET

Entradas Mensuales

Síguenos en:

Canal Oficial Telegram de elhacker.NET Grupo Facebook elhacker.NET Twitter elhacker.NET Canal Youtube elhacker.NET Comunidad Steam: Grupo elhacker.NET

Suscripción

¿Quieres recibir las últimas novedades del blog en tu correo?

¡Suscríbete al feed!

Entradas populares

PostHeaderIcon Instalar un portal cautivo en una Raspberry Pi




 A veces sucede que necesitamos configurar el acceso a Internet a través de un punto de acceso WiFi , lo que requiere que el usuario se autentique para poder conectarse (hoteles, campings, etc.). Es un portal cautivo que cumple con esta función. Nodogsplash es un portal cautivo ligero, adecuado para Raspberry PI. Para saber cómo funciona, te sugiero que instales un portal cautivo básico, suficiente para descubrir cómo funciona. Nodogsplash es un portal cautivo que ofrece una forma sencilla de proporcionar acceso restringido a Internet mostrando una página de inicio al usuario antes de que se le conceda acceso a Internet. Originalmente se deriva del código base del proyecto Wifi Guard Dog . Nodogsplash (NDS) se publica bajo la licencia GNU .





Un portal cautivo nodogsplash en Raspberry Pi

Man in the Middle: cuidado con el WiFi

¿Por qué estoy hablando del ataque Man in the Middle ( MITM = man in the middle )? Porque casualmente, un portal cautivo huele a MITM 

Tomemos a un tipo que quiera conectarse al SERVIDOR de su banco. Llamemos al CLIENTE . Normalmente se conecta a WiFi y todo está bien. Pero ahora un intruso se ha colado en el circuito. Es "El hombre del medio" o MITM . Por cualquier medio impide que el CLIENTE se conecte a su terminal WiFi y ocupe el lugar de este terminal WiFi.

De repente, el CLIENTE se conecta a la computadora de MITM, que luego transmite la solicitud al SERVIDOR del banco. El cliente recibe la página web de su banco (que simplemente pasa por MITM), escribe sus credenciales, consulta su cuenta, etc. Para el CLIENTE y para el banco, todo parece normal. Parece ... porque MITM intercepta y registra todo lo que pasa y recupera el acceso al banco del CLIENTE. De ahí la introducción de nuevas reglas de doble autenticación, con el envío de un código por SMS por ejemplo. Cuando MITM quiera conectarse más tarde al SERVIDOR no recibirá el código por SMS y por lo tanto será bloqueado.

En realidad, estamos más cerca de la configuración anterior. MITM evita que la víctima se conecte al ACCESS POINT WiFi para que pueda conectarse a su propio AP. Así que tenga cuidado con estos puntos de acceso WiFi gratuitos que están floreciendo (estaciones, bibliotecas, espacios públicos, etc.). A menos que pase por una VPN (que, sin embargo, solo ofrece una seguridad relativa ). Si está interesado en el tema, haga clic en los enlaces de ese párrafo y / o mire los artículos a los que se hace referencia en la parte inferior del artículo, en las fuentes.

Para crear un punto de acceso falso podemos usar:

¿Qué es un portal cautivo?

  • Muy usado en hoteles

Esta técnica se implementa generalmente para el acceso Wi-Fi y también se puede utilizar para acceder a redes cableadas. este es el sistema que encuentras en hoteles, campings ... Cuando quieres consultar una página web como raspberry314 (¡sí!) acabas de hecho en una página web a menudo con los colores del hotel, que te pregunta por ti mismo. autenticarse para conectarse.

Por lo tanto, el portal cautivo obliga a los clientes HTTP en una red a mostrar una página web especial (la mayoría de las veces con fines de autenticación) antes de que puedan acceder a Internet normalmente. Después de la autenticación, los portales cautivos permiten ofrecer diferentes clases de servicios y tarifas asociadas para el acceso a Internet. Por ejemplo, WiFi gratis, de pago, una hora gratis 

El ejemplo típico cuando llegas a un hotel, intentas conectarte a un sitio que te gusta. Al azar tomaremos www.framboise314.fr . Haces clic en el icono del sitio y ... recibes una página web con el nombre del hotel y un campo para completar con el nombre de la persona que reservó la habitación, una dirección de correo electrónico, a veces el número de la habitación, etc.


Interceptación de paquetes

Como habrás comprendido, la función del portal cautivo será interceptar todos los paquetes vinculados a los protocolos HTTP o HTTPS sean cuales sean sus destinos hasta que el usuario abra su navegador web. Mediante el uso de un DNS mentiroso , el usuario es redirigido a una página web que le permite autenticarse, realizar un posible pago, rellenar información y recabar el consentimiento del usuario sobre las condiciones de uso o recogida de datos personales.

Aquí es donde esta técnica es similar a un ataque MITM ., ya que un dispositivo intermedio se hace pasar por el sitio visitado para transformarlo en una redirección al portal cautivo. También sucede que el portal cautivo utiliza certificados de seguridad falsos para redirigir el protocolo HTTPS , lo que provoca un error de seguridad con una sola página HTTPS y no se puede redirigir con el protocolo HSTS estricto.

El portal cautivo que vamos a instalar en la Raspberry Pi es nodogsplash .

Nodogsplash es un portal cautivo que ofrece una forma sencilla de proporcionar acceso restringido a Internet mostrando una página de inicio al usuario antes de que se le conceda acceso a Internet. Originalmente se deriva del código base del proyecto Wifi Guard Dog . Nodogsplash (NDS) se publica bajo la licencia GNU .

NDS es un portal cautivo de alto rendimiento y bajos recursos (CPU, memoria). Ofrece una conexión a Internet restringida a través de una sencilla página de inicio. Está optimizado para dispositivos con recursos limitados y, por lo tanto, es adecuado para Raspberry Pi. Si desea un sistema de autenticación más sofisticado que ofrezca una interfaz web dinámica, elige openNDS en lugar de NoDogSplash.

Todos los dispositivos móviles modernos, los sistemas operativos más recientes y la mayoría de los navegadores ahora tienen un sistema de detección de portal cautivo (CPD) que emite automáticamente una solicitud en el puerto 80 cuando se conecta a una red. NDS detecta esta solicitud y devuelve su página web " splash ".

La página de inicio, en su forma más simple, contiene un botón " Continuar ". Cuando el usuario hace clic en este botón, se le otorga acceso a Internet, después de un intervalo de tiempo predefinido. Actualmente, NDS no admite el control de tráfico, pero es totalmente compatible con otros sistemas independientes, como Smart Queue Management (SQM).

La documentación completa está disponible aquí: 


  1. https://nodogsplashdocs.readthedocs.io/en/stable/


Instalar nodogsplash

En este tutorial te invito a descubrir cómo configurar un portal cautivo en una Raspberry Pi usando el software nodogsplash . El tutorial está inspirado en tutoriales publicados en PiMyLifeUp .

Portal cautivo de Raspberry Pi

Este portal cautivo muestra una pantalla de inicio que se presentará a cualquier persona que se conecte a su punto de acceso (AP) WiFi. Antes de que la persona comience a utilizar la conexión Wifi, deberá realizar una acción, de lo contrario permanecerá en la página de inicio.

Podrás mostrar lo que quieras en la página de inicio del portal cautivo. Esto puede permitirle informar al usuario de las reglas básicas para usar su AP antes de que acceda a Internet.

Este tutorial consta de dos partes:

  • Instalación del punto de acceso WiFi hostapd dnsmasq 
  • Instalación del portal cautivo nodogsplash

Comenzaremos configurando un punto de acceso WiFi que permitirá que los dispositivos móviles se conecten a la Raspberry Pi por WiFI y accedan a Internet a través de la red cableada conectada a la toma Ethernet de la Raspberry Pi.

Para configurar el punto de acceso inalámbrico Raspberry Pi, usaremos dos paquetes. Estos dos programas son hostapd y dnsmasq .

  • hostapd es el software que nos permite utilizar el WiFi de la Raspberry Pi.
  • dnsmasq es un servidor DHCP y DNS. Le permite asignar direcciones IP y procesar solicitudes de DNS con la Raspberry Pi.

dnsmasq es bastante fácil de instalar y configurar. Tiene la ventaja de ser más ligero que los paquetes isc-dhcp-server y bind9 .

Para que el montaje funcione, también necesitará una conexión de red ethernet a la que se podrá acceder desde el WiFi. La conexión a Internet es esencial para instalar paquetes.

Como de costumbre, inicie la instalación actualizando su sistema operativo Raspberry Pi.


sudo apt-get update
sudo apt-get upgrade

Instale los paquetes hostapd y dnsmasq.

sudo apt-get install hostapd dnsmasq

Después de la instalación, debe configurar estos paquetes. Para eso comenzaremos por detener su ejecución.


sudo systemctl stop hostapd
sudo systemctl stop dnsmasq

Ahora podemos modificar la configuración de dhcpd para tomar el control de la interfaz wlan0 (WiFi). Aquí es donde estableceremos una dirección IP estática para el AP y le diremos que no use el archivo wpa_supplicant para que la Raspberry Pi sea solo un punto de acceso y no un cliente WiFi.

Ejecute el siguiente comando para modificar el archivo dhcpcd.conf

sudo nano /etc/dhcpcd.conf

El archivo se abre en nano . Desplácese hasta la parte inferior del archivo y agregue las siguientes líneas para configurar la interfaz wlan0 como desee. Elegí un rango de direcciones de red de 192.168.220.0


interface wlan0
static ip_address=192.168.220.1/24
nohook wpa_supplicant

Guarda el archivo y salga de nano presionando Ctrl + X, luego O y finalmente [Enter] .

Ahora reiniciaremos el servicio dhcpd para que se haga cargo de los cambios de configuración. Para hacer esto, ejecute el siguiente comando

Configuraremos hostapd , para ello abrimos el archivo de configuración con el comando


sudo nano /etc/hostapd/hostapd.conf

nano abre un archivo vacío. Agrega las siguientes líneas. Básicamente, definen cómo interactuar con la interfaz WLAN WiFi  . Las únicas líneas que deben preocuparse son la línea ssid = y la línea wpa_passphrase = . Intente elegir una contraseña WPA que tenga más de 6 caracteres para que su conexión sea (algo) segura.


country_code=ES
interface=wlan0
hw_mode=g
channel=6
macaddr_acl=0
ignore_broadcast_ssid=0
auth_algs=1
wpa=2
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
# SSID
ssid=AP-framboise314
# PASS
wpa_passphrase=raspberrypi

hd_mode=valores 

  • a = IEEE 802.11a (5 GHz) (Raspberry Pi 3B+ onwards)
  • b = IEEE 802.11b (2.4 GHz)
  • g = IEEE 802.11g (2.4 GHz)

Por supuesto, pondrás tus propias credenciales en el archivo, asegúrate de elegir algo seguro para que las personas "curiosas" no puedan conectarse a tu punto de acceso WiFi.

Ahora puede guardar y salir del archivo presionando Ctrl + X, luego O y finalmente [Enter] .

Podremos cambiar a la configuración de hostapd , para ello debemos modificar dos archivos, los que leerá hostapd para encontrar nuestro nuevo archivo de configuración.

Abra el primero de estos dos archivos con el siguiente comando

sudo nano /etc/default/hostapd

En esa carpeta, busque la siguiente línea. ( CTRL + W en nano inicia la búsqueda

Reemplácelo con:

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

Luego guarde el archivo y salga de nano.

Abra el segundo archivo de configuración. Este archivo se encuentra en el init.d carpeta .

sudo nano /etc/init.d/hostapd

Encuentra la siguiente línea

DAEMON_CONF=

Reemplácelo (si es necesario) por:

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


 Guarda el archivo y salga de nano .

Con hostapd configurado, pasemos a la configuración de dnsmasq . Antes de comenzar a modificar el archivo de configuración, cambie el nombre del archivo existente porque la configuración actual que contiene es innecesaria en nuestro caso.

Luego podemos crear nuestro propio archivo de configuración:

sudo nano /etc/dnsmasq.conf

Agrega las siguientes líneas para decirle al servicio dnsmasq cómo manejar todas las conexiones que administra y en qué interfaz debe manejarlas.


interface=wlan0 # Utiliser l'interface wlan0
server=1.1.1.1 # Utiliser le DNS Cloudflare
dhcp-range=192.168.220.50,192.168.220.150,12h # Plage IP et durée du bail

Guarda el archivo y salga de nano .

A continuación, debe configurar la Raspberry Pi para que transfiera todo el tráfico desde la interfaz wlan0 a la conexión ethernet .

Primero, habilitaremos el enrutamiento IP en el archivo de configuración sysctl.conf

sudo nano /etc/sysctl.conf

En este archivo, busque la siguiente línea y elimine el # al principio (descomentar)

Como estamos impacientes y no queremos esperar a que se active el enrutamiento en el próximo arranque, lo activaremos inmediatamente.

sudo sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"

Ahora que el reenvío de IPv4 está habilitado, podemos configurar NAT entre nuestra interfaz wlan0 y nuestra interfaz eth0. Básicamente, esto redirigirá todo el tráfico desde nuestro punto de acceso a nuestra conexión ethernet, traduciendo la dirección entre las dos interfaces.

Ejecute el siguiente comando para agregar las nuevas reglas a iptables

sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

iptables se reinicia en cada arranque de la Raspberry Pi. Por lo tanto, debemos registrar nuestras nuevas reglas en un archivo para reiniciar en cada arranque.


Para guardar las nuevas reglas, ejecute el siguiente comando.

sudo sh -c "iptables-save > /etc/iptables.ipv4.nat"

Recargaremos este archivo en cada reinicio. La forma más sencilla de hacerlo es editar el archivo rc.local .

Ejecute el siguiente comando para comenzar a editar el archivo.

sudo nano /etc/rc.local

Mueva el cursor a la parte superior de la salida 0

Agregue por encima de "salida 0":

iptables-restore < /etc/iptables.ipv4.nat

Guarda el archivo y salga de nano .

Está casi terminado para el Punto de Acceso WiFi, queda por iniciar los dos servicios y activarlos en systemctl. Ejecute los siguientes comandos.


sudo systemctl unmask hostapd
sudo systemctl enable hostapd
sudo systemctl start hostapd
sudo service dnsmasq start

Ahora tienes un punto de acceso inalámbrico Raspberry Pi en pleno funcionamiento. Se asegurará de que funcione correctamente utilizando uno de sus dispositivos (teléfono, tableta, computadora portátil) y conectándose a este nuevo punto de acceso utilizando el SSID y la contraseña WPA definida anteriormente ( AP-raspberry314 y raspberrypi ).


Instalación del portal cautivo

Este segundo tutorial se basa en el punto de acceso WiFi instalado anteriormente. No inicie esta instalación sin estar seguro de que la primera parte es funcional.

La instalación de nodogsplash requiere algunas dependencias que deben instalarse.


sudo apt install git libmicrohttpd-dev

Responde S para autorizar la instalación.

Ahora podemos obtener nodogsplash de la carpeta github


git clone https://github.com/nodogsplash/nodogsplash.git

luego compila nodogsplash (solo toma unos minutos).


cd ~/nodogsplash
make
sudo make install

nodogsplash está instalado en el sistema operativo Raspberry Pi, queda por configurarlo.

sudo nano /etc/nodogsplash/nodogsplash.conf

Le diremos qué interfaz usar y en qué dirección debe escuchar. Si ha elegido valores diferentes, deberá adaptar los valores siguientes. Reemplazar la línea

Interfaz de puerta de enlace br-lan

con las siguientes líneas:

GatewayInterface wlan0
GatewayAddress 192.168.220.1
MaxClients 250
AuthIdleTimeout 480

Guarda el archivo y salga de nano .

Entonces podemos iniciar nodogsplash

sudo nodogsplash

En un dispositivo móvil, vaya al punto de acceso Desde una tableta, me conecté al AP-ramboise314. El navegador (como la mayoría de los navegadores modernos) detectó la existencia de un portal cautivo ( CPD = Detección de portal cautivo ) y generó una solicitud HTTP inicial en el puerto 80. Se mostró un banner en la parte superior de la imagen (en un círculo rojo). Al presionarlo, accede a la página de inicio del portal cautivo.

Si alguna vez se ha conectado a la red WiFi de un hotel, eso también suele ocurrir. Si eso no funciona, realice una solicitud manualmente a un sitio HTTP, incluso si no existe (http://toto.com). Esto debería activar la pantalla de bienvenida que enviará nodogsplash.

Al hacer clic en el botón Continuar , podrá acceder a Internet Internet. Si no hace clic, el portal cautivo seguirá mostrando esta página de inicio en su dispositivo de forma indefinida.

Ahora sabemos que el portal cautivo está funcionando y que se muestra la página de inicio. Pero iniciamos nodogsplash manualmente. Si has mirado la pantalla seguro que has visto que muestra alguna información interesante ...

Para que se inicie automáticamente cuando se inicie el sistema operativo Raspberry Pi, todavía queda un paso.

Puede automatizar el lanzamiento de nodogsplash en  rc.local .

sudo nano /etc/rc.local

Ya está en este archivo que agregamos la recarga de iptables al iniciar hostapd . Una vez más, coloque el cursor sobre la línea de salida 0 y agregue

nodogsplash

Debería leer esto al final de su archivo:

iptables-restore < /etc/iptables.ipv4.nat
nodogsplash
exit 0

Guarda el archivo y salga de nano .

Reinicia la Raspberry Pi. Después del lanzamiento, y si todo salió bien, tiene un portal cautivo en funcionamiento.

Cambiar el aspecto de la página de inicio

Si desea cambiar el aspecto del portal cautivo predeterminado, puede hacerlo editando el archivo de la página de inicio: /etc/nodogsplash/htdocs/splash.html

Modificaremos la página de inicio para hacer los textos y mostrar un logotipo.

sudo nano /etc/nodogsplash/htdocs/splash.html

Modifique el archivo para tener esto en la parte HTML (entre las etiquetas del cuerpo )


Fuente:

https://www.framboise314.fr/un-portail-captif-avec-un-raspberry-pi/


0 comentarios :

Publicar un comentario

Los comentarios pueden ser revisados en cualquier momento por los moderadores.

Serán publicados aquellos que cumplan las siguientes condiciones:
- Comentario acorde al contenido del post.
- Prohibido mensajes de tipo SPAM.
- Evite incluir links innecesarios en su comentario.
- Contenidos ofensivos, amenazas e insultos no serán permitidos.

Debe saber que los comentarios de los lectores no reflejan necesariamente la opinión del STAFF.