vender servidor saltar pfsense para link internet crear como cautivo casero redirect dns portal

redirect - servidor - portal cautivo windows



Un portal cautivo para manejar mis necesidades (4)

Bueno, hoy en día solo código en .NET, algunos de los OSS pueden tener mejores ideas.

No puedo ver de todos modos hacer esto sin usar un proxy, preferiblemente un servidor proxy transparente en la puerta de enlace. Debe haber personas que hayan escrito tales cosas. Por supuesto, cada punto de acceso wifi comercial tiene uno, pero presumiblemente quiere uno que se ejecute en un servidor y no en un dispositivo.

No tengo una idea real sobre esto, pero es algo que he pensado en el pasado.

Es posible que pueda encontrar un enrutador / caja de firewall que tenga la función. Microsoft IAS tiene un complemento que hace esto (es poco probable que sea barato). Una breve mirada a google no apareció mucho en el camino de otro software que hace esto.

Wingate - Podría hacerlo, no podría resolverlo

De lo contrario, podría codificar una aplicación proxy transparente (lo que significa que, a menos que escriba código incrustado, necesitará usar el servidor de aplicaciones como puerta de enlace predeterminada), o simplemente un proxy ordinario si puede bloquear la configuración del proxy del navegador de los usuarios. Supongo que codificar esto posiblemente no es una opción fácil. Pero es posible. Incluso podría usar IIS y ASP.NET.

iisproxy es un proxy implementado como un filtro ISAPI de IIS con código fuente. Sospecho que esto está en C o C ++.

En Codeplex es una muestra de código de proxy revolver. Puede cambiarlo y extenderlo a un proxy completo.

Es posible que pueda hacer todo el proceso con sockets y salir de la capa de aplicaciones por completo. Esto podría simplificar la vida, ¡así que espero que haya una razón por la cual no se puede hacer así! Haga que el proxy basado en sockets redirija a los usuarios que no cumplen con la aplicación de grabación de tiempo, cuando hayan completado su hoja de tiempo, simplemente pase todos los datos entre los sockets de forma transparente.

Me interesaría saber qué se le ocurre a usted o a alguien, porque siempre quise que apareciera una AUP con un cuadro de continuación una vez al día para los usuarios de nuestra oficina. Mejor aún, podría enumerar cuánto tiempo pasó el usuario ayer en Face Book, etc., si el proxy recopiló esa información. Solo lo suficiente como para alterar el comportamiento de las personas, creo. De hecho, hay muchas cosas útiles que se pueden hacer con un proxy HTTP fácil de modificar o extensible.

Estoy buscando portales cautivos para mi organización. Veo muchos de ellos que permitirán que un usuario pase una vez que ellos.) Ingresen credenciales o b.) Paguen dinero. Lo que estoy buscando es un poco diferente. Permítanme entrar en algunos conceptos básicos sobre mi sistema, estoy ejecutando una red basada en Windows utilizando un directorio activo y un DNS interno. Tengo una intranet en la que nuestros empleados usan a diario y usa las credenciales de Windows de la persona para autenticarlas en el sistema.

Los empleados tienen que ingresar la hora todos los días, y si no lo hacen me gustaría tener un portal cautivo redirigirlos a su página de entrada de tiempo y no dejarlos entrar en el vasto mundo de Internet hasta que se ingrese su tiempo.

Soy desarrollador para poder escribir un script que devuelva True o False al sistema, pero lo que necesito es un sistema que pueda interactuar con los inicios de sesión de AD y que pueda ejecutar este script una vez que un usuario solicite acceso fuera de la red.

EDITAR: Acepté una respuesta como la respuesta a mi pregunta, sin embargo, después de investigar la codificación del método basado en sockets, no tengo tiempo.

Como solución alternativa, descubrí que mi firewall tiene una página de descargo de responsabilidad personalizable que permite javascript. Voy a consultar un servicio web para ver si se ingresa el tiempo y luego activar la función "Permitir" de la página de exención de responsabilidad; de lo contrario, se me redireccionará a la página de entrada de hora. parece una solución bastante simple, el único problema es si la persona mantiene su sesión de navegador abierta durante la noche.


Christopher Edwards tiene más o menos razón. Un portal cautivo es básicamente un firewall que reenvía transparentemente todas las conexiones a un servidor web local que solicita la autenticación del usuario. Después de una autenticación exitosa, las reglas del firewall se reconfiguran para la IP del usuario autenticado para que pueda acceder a Internet u otra red.

Puede configurar su propio portal cautivo mediante scripts y un servidor web o un proxy, pero lo que es obligatorio es que físicamente todo el tráfico de red atraviese la máquina que actúa como firewall.

Tengo experiencia con una distribución OSS llamada m0n0wall que se basa en una distribución BSD y puede incorporarse directamente en hardware dedicado o instalarse en cualquier PC. Esta distribución, a través de OSS, es realmente profesional y ofrece básicamente la misma o más funcionalidad que cualquier otro dispositivo comercial de FW (es decir, productos Watchguard o productos de Cisco ). Ofrece una interfaz de administración web para administrar completamente el firewall.

El único problema si decide ir por este camino es que el portal cautivo m0n0wall tiene solo dos formas de autenticación: lista de base de datos de usuario local o servidor Radius externo. En su caso, lo que necesita es configurar un servidor Radius externo que se integre en los servicios de autenticación AD. Aquí hay un ejemplo de cómo hacerlo.


Esto como funciona Necesitas:

  • un firewall común iptable ,
  • un firmware de enrutador abierto como dd-wrt que tiene más opciones para admitir hotspot
  • servidor como apache
  • dhcp3-server como servidor DHCP
  • bind9 como servidor DNS, por lo que los usuarios no tienen que configurar manualmente la configuración de red de su computadora cuando están conectados al punto de acceso
  • PHP u otro idioma para escribir el script del lado del servidor de su elección.

Debe marcar los paquetes que no tiene la intención de redirigir a Internet sino a una página de destino cuando el usuario se verifica en la página de destino; su IP se eliminará de la lista para que pueda navegar libremente o si lo intenta para navegar por sus paquetes estará marcado y eso será lo que utilizará para identificarlo. Sugiero que uses linux para esto por las cosas de iptables.

Así es como funciona:

  1. Cada usuario que está conectado al punto de acceso inalámbrico está conectado a Internet a través de una puerta de enlace.
  2. La puerta de enlace actúa como un enrutador y un cortafuegos (y probablemente también actúa como un servidor web de portal como en este experimento).
  3. Cada paquete de datos HTTP destinado a Internet de usuarios no autenticados están "marcados" con un código especial por el firewall para que pueda ser interceptado (redirigido) al servidor web del portal.
  4. Portal webserver sirve una página web de autenticación para el usuario de forma transparente e identifica la computadora que utilizan.
  5. El usuario acepta / se autentica con el servidor web para que la identidad de su computadora (en este caso, su dirección MAC de interfaz de red) se ingrese en la lista blanca del firewall.
  6. Siempre que las interfaces de red del usuario estén dentro de la lista blanca del firewall, los paquetes enviados desde ellos no están marcados para la interceptación. Los paquetes son enviados por el enrutador a Internet sin ser interceptados nuevamente en el portal web.

DNS Redirector es un producto de portal cautivo en el que puede desarrollar sus propias páginas de bienvenida / bloqueadas en HTML / ASP / lo que sea. Como su servidor ya está ejecutando Windows, ¿por qué no utilizar IIS y ASP para esto?