Página 1 de 1

Registro de usuarios via Web

MensagemEnviado: Dom Set 26, 2010 3:30 pm
por xisco
Buenas tardes a todos.
Les comento sobre el proyecto que hice: El mismo surge tras la necesidad de ahorrar tiempo en registrar mis clientes en EasyCaptive, por tal motivo decidi instalar Apache en BrazilFW y programar en PHP una automatización. Tras lucha contra EasyCaptive y la ayuda de varios usuarios (en especial a pablino26), logré hacer que EasyCaptive me acepte el puerto 81.

Como usaba Mikrotik y el sistema PPPOE, cada cliente tenia su usuario y contraseña, por lo que en un paso le pide la autentificación con esos datos.
La página está hecha a mis necesidades (Un tipo de QOS, una subred, etc), por eso lo posteo en esta sección, para armar un addon para todas las necesidades (Diferentes formas de QOS, varias subredes, etc).

Sin dar más vueltas, pongo unas imágenes y paso a exponer un link de descarga:
1- El sistema detecta si tu IP no está en la lista de reservas y te muestra la siguiente página:
Imagem

2- Como anteriormente usaba Mikrotik con PPPOE, cada cliente sabe su usuario y contraseña. En este paso hace una lectura de una db con los usuarios y contraseña y comprueba su autenticidad.
Imagem

3- En caso de que el cliente introdujo correctamente los datos, se procederá a configurar BrazilFW para que pueda navegar (Se añade su MAC Address a las reservas de IP, se agrega una regla QOS a su IP, se agrega su usuario a EasyCaptive):
Imagem

3.1- Si el usuario ya se registro anteriormente, y por alguna razón llegó a esta página (Puede ser por tener IP fija distinto a la reserva), le aparecerá el siguiente mensaje si intenta logearse el usaurio ya registrado:
Imagem

4- Tras el paso 3, se redirecciona a esta página para avisar al cliente que debe reiniciar su PC (Para obtener la nueva IP):
Imagem

5- Inicia el navegador y accede correctamente a internet.

---------------------------------------------------------------------------------------

Directamente pongo el link de descarga. ¿Por qué? Porque así ven como funciona el script y lo configuran a su manera.
Los únicos archivos que deberían editar es el configuracion.php y el archivo datos (Contiene nombre de usuario y contraseña - NO ENCRIPTADO (Se puede usar base64 para encriptar)).
Lo subo a RapidShare, no tengo un host descente para ponerlo jeje:
Descargar


Bueno, creo que eso sería todo.
Igual estaré por acá mirando por si alguien pregunta o sugiere algo.
Saludos y éxitos.

Re: Registro de usuarios via Web

MensagemEnviado: Dom Set 26, 2010 7:34 pm
por pablino76
xisco te pido un favor
hacenos para los que estamos interesados un paso a paso cuando tengas un tiempo, de como se instala y puntualmente nose algunos a modo ejemplos de que cambiamos
yo justamente tengo easycaptive 2.0.8 y el apache de juanillo instalado todo en brazilfw ¿sirve?.
¿entonces que hago donde pongo los script esos php y demás? tengo que cambiar algo aparte de instalarlos en algún lado de mi brazilfw?
los script php que hiciste están interesantes los mire todo basicamente estan buenos.

Re: Registro de usuarios via Web

MensagemEnviado: Seg Set 27, 2010 6:27 pm
por xisco
Bueno pablino76, te comento:
El script está hecho para funcionar de la siguiente manera:

- Una subred de rango: 10.10.1.X (empezando desde el 10 hasta 254).
- QOS de Down: 16/64 y Up: 16/32 (lo puse de prueba, imposible dar eso a los clientes)...
- Un archivo llamado "datos" que contiene los datos separados por doble punto... (usuario:contraseña:ip_access_point:activado?)
- Crear usuario para EasyCaptive (la última versión) sin contraseña.

El paso de la instalación sería:
1- Descargar Apache y crear un VirtualHost al puerto 81.
2- Modificar el archivo "datos", "ip" y "configuracion.php" a gusto. El archivo "qosID" no, porque leí que tiene que ir desde 1:4 en adelante. ¿?
3- Subir los archivos al VirtualHost previamente creado.
4- Entrar por SSH (WinSCP) al BrazilFW y editar el archivo /etc/rc.d/pkgs/rc.zeasycaptive BrazilFW agregando la siguiente línea:
Código: Selecionar todos
        $IPT -t nat -I easycaptive -i $IF_LOCAL -p tcp -d $LOCAL_IPADDR/$LOCAL_NETMASK --dport 81 -j ACCEPT

No recuerdo en que lugar debe ir, pero hay como 4 reglas iguales. Lo agregas después de esas, y antes de una que redirecciona todo al puerto 80.
5- Editar el archivo blacklist.hml del EasyCaptive y poner lo siguiente:
Código: Selecionar todos
<html><head><title>Tu titulo</title>
<style type="text/css">
    html, body, iframe { margin:0; padding:0; height:100%; }
    iframe { display:block; width:100%; border:none; }
</style></head>
<body><iframe src="http://LA_IP_DE_TU_APACHE:81"></iframe></body></html>

El código es provisorio, no estoy en casa, por eso puede que tenga errores. Pero se entiende lo que digo, es para un iframe al 100%.
6- Y listo, a hacer pruebas y modificarlo a gusto.

Saludos.

Re: Registro de usuarios via Web

MensagemEnviado: Seg Set 27, 2010 8:59 pm
por pablino76
hola gracias

xisco toy probando por ahora no me funca todo porque hay cosas que no entiendo bien
estoy usando en el mismo brazilfw donde tengo el easycaptive, el apache de juanillo
en este apache
edite la conf de apache por esto
Listen 192.168.0.1:81
y
DocumentRoot "/partition/apache/htdocs"
que fue donde puse tus archivos
lo subi aca en tar.gz para poder descargarlo mas facil
alta-clientes.tar.gz
CORROBORA SI LOS ARCHIVOS ESTAN TODOS BIEN LUEGO y pedi a gamba te abra un FTP en el server del foro mejor


bien configure el archivo ese de easycaptive rc.zeasycaptive
como dijistes
arranque el apache y el easycaptive
¿cree un user en easycaptive? hice bien o como es ahi? no entendi...
¿tengo que poner el brazilfw en DHCP? te pregunto porque yo no uso DHCP pero igual avisame si hace falta lo cambio un toki?

y arranca todo bien pero nose que onda que no viaja
yo presiento que el index.html pasa a paso2.php a lo sumo creo que hasta paso2.5.php y de ahi nose
pongo el user y el pass del user que cree en easycaptive, en fin me dice Usuario o contraseña incorrecta.
uso un user de los que esta en datos.php y me dice suponte juan juan
Su computadora ya ha sido configurada anteriormente. Si no puede acceder a internet, por favor contáctese con nosotros. Muchas gracias.


en fin entonces estoy ahi y no entiendo una goma
¿que hago? me tiene descompuesto, explicame mas, haceme el video tuto si da nose < O.O >

Re: Registro de usuarios via Web

MensagemEnviado: Seg Set 27, 2010 9:41 pm
por juancho
que pasa si el usuario no esta registrado? umm podrias hacer algo con ese script que daria un vuelco a brazil... fijate

Hace unos meses se posteo creo que gosth, buscaba como hacia telefonica para regitrar los usuarios...si mal no recuerdo. El caso es que con esto puedes apuntar a que por ejemplo...yo le doy un cliente CPE (ubiquiti,etc) a un usuario que me contrata el servicio..en vez de instalarlo el mismo usuario lo instala.. va contra el server y registar su maquina, aca podemos aplicar las subredes de forma tal que si es un /30 el usuario solo registre 2 y nada mas..

aqui el post
viewtopic.php?f=23&t=74079&p=216866&hilit=como+lo+hacen#p216866

Re: Registro de usuarios via Web

MensagemEnviado: Ter Set 28, 2010 12:21 am
por xisco
juancho escreveu:que pasa si el usuario no esta registrado? umm podrias hacer algo con ese script que daria un vuelco a brazil... fijate

Hace unos meses se posteo creo que gosth, buscaba como hacia telefonica para regitrar los usuarios...si mal no recuerdo. El caso es que con esto puedes apuntar a que por ejemplo...yo le doy un cliente CPE (ubiquiti,etc) a un usuario que me contrata el servicio..en vez de instalarlo el mismo usuario lo instala.. va contra el server y registar su maquina, aca podemos aplicar las subredes de forma tal que si es un /30 el usuario solo registre 2 y nada mas..

aqui el post
viewtopic.php?f=23&t=74079&p=216866&hilit=como+lo+hacen#p216866


No sabes lo acertado que estas juancho. Básicamente saqué la idea de ahí, la de configurar desde la web.
Lo que deberías hacer es armar tu AP en modo bridge y con su correspondiente IP, y ahí se la vendes al cliente; entonces el la instala y al abrir una web automáticamente le aparece la página; al menos está pensado y funciona para eso. La web aparece a los NO REGISTRADOS (por estar en blacklist.html).

Tengo pensado hacer una web para los clientes registrados, en la cual puedan ver su velocidad con respecto al servidor (LAN/WLAN), también tengo de proyecto hacer un servicio de "...en la nube": subir archivos y tales. En fin, eso sería tema aparte.

Hay que pulir esto :) a juntar ideas.

Re: Registro de usuarios via Web

MensagemEnviado: Ter Set 28, 2010 9:53 pm
por ghost
muy buena idea :o! :o! :o! y como comento juancho mas arriba estuve investigando sobre este tema pero no llegue a nada :-( >| >| >| ...

Hay que darle forma de addon :mrgreen:

:idea: Dejo una idea, si no tiene reserva la mac que le aparezca el portal y deje datos de contacto para ofrecerle el servicio.

Saludos :o!

Re: Registro de usuarios via Web

MensagemEnviado: Ter Set 28, 2010 11:04 pm
por xisco
pablino76 escreveu:hola gracias

xisco toy probando por ahora no me funca todo porque hay cosas que no entiendo bien
estoy usando en el mismo brazilfw donde tengo el easycaptive, el apache de juanillo
en este apache
edite la conf de apache por esto
Listen 192.168.0.1:81
y
DocumentRoot "/partition/apache/htdocs"
que fue donde puse tus archivos
lo subi aca en tar.gz para poder descargarlo mas facil
alta-clientes.tar.gz
CORROBORA SI LOS ARCHIVOS ESTAN TODOS BIEN LUEGO y pedi a gamba te abra un FTP en el server del foro mejor

bien configure el archivo ese de easycaptive rc.zeasycaptive
como dijistes
arranque el apache y el easycaptive
¿cree un user en easycaptive? hice bien o como es ahi? no entendi...
¿tengo que poner el brazilfw en DHCP? te pregunto porque yo no uso DHCP pero igual avisame si hace falta lo cambio un toki?

y arranca todo bien pero nose que onda que no viaja
yo presiento que el index.html pasa a paso2.php a lo sumo creo que hasta paso2.5.php y de ahi nose
pongo el user y el pass del user que cree en easycaptive, en fin me dice Usuario o contraseña incorrecta.
uso un user de los que esta en datos.php y me dice suponte juan juan
Su computadora ya ha sido configurada anteriormente. Si no puede acceder a internet, por favor contáctese con nosotros. Muchas gracias.


en fin entonces estoy ahi y no entiendo una goma
¿que hago? me tiene descompuesto, explicame mas, haceme el video tuto si da nose < O.O >


pablino mil disculpas, pase por alto tu comentario.
Mira, me olvide decir que, hace falta poner permisos 777 a los archivos porque tienen función de escritura.
El script esta programado para funcionar con DHCP para dar IP a los no registrados (192.168.0.X) y amarre de MAC e IP para los registrados (10.10.1.X).
En el archivo datos, vas a encontrar como esta estructurado el mismo. Cada texto se separa por doble puntos (:), el primero seria el usuario, el segundo la contraseña, el tercero es la IP del AccessPoint que le instalé, y el cuarto representa si el usuario ya fue utilizado antes o no (S/N); el decir, si Juan ya se registró antes, el archivo cambia de juan:juan:10.10.11.3142:N a juan:juan:10.10.11.3142:S. ¿Me entendes?
No tenes que poner el usuario de EasyCaptive, tenes que llenar el archivo datos con los "datos" que van a utilizar los clientes. Lo hice de esa forma porque solo se usaría una vez. El script solo se encarga de agregarlo a EasyCaptive, a QOS, a DHCP y todo lo demás.

ghost, si sería bueno, y se puede. Se pone un formulario de contacto y listo, no es gran cosa. Pero se puede.

Saludos y perdona la demora, no me había dado cuenta :S
Éxitos!

Re: Registro de usuarios via Web

MensagemEnviado: Qua Set 29, 2010 10:38 am
por pablino76
xisco todo bien claro DHCP activado y QOS también creería, aparte lo de los permisos se me paso por alto.

quisiera poder ayudarte a comprimirlo en un addon este código PHP hacerle un instalador para que modifique el archivo configuracion.php y otros y que cada uno lo ajuste a su rango de IP y demás.
tengo un conocimiento básico bien de con respecto al tema de compilar un addon para brazilfw, pero falta que se comprenda bien claramente al final como es que va todo esto dispuesto dentro del FIREWALL y que servicios debemos tener activados etc pero bien claro de entrada
sino xisco pasa, que no se te va entender mucho de que se trata, y viendo el código te veo fértil y justamente a full para crear un addon que puede ser otro clásico mas y muy útil para los brazilfw.

luego con tiempo voy a probar
justo ayer reinicie y se borraron algunos archivos
estuve mirando el código PHP podemos mas adelante de apoco transportar el algoritmo a CGI bashscript
me intereso lo de lo que te sugiere juancho concluirlo mas asi aquella idea de ese ISP
y por otro lado interesante ver como es que encaras el algoritmo para el cliente de visualizar la velocidad entre cliente server.
y se le agrega tambien la idea de ghost.

Re: Registro de usuarios via Web

MensagemEnviado: Qua Set 29, 2010 11:22 am
por xisco
Si pablino, podemos hacer maravillas... Lo de configurar un AP desde PHP lo veo complicado, pero posible; habría que hay una automatización para que haga varios POST a diferentes URL del AP, entonces así va situando los datos en el mismo. Pero esto se complica aún mas al querer programar para diferentes AccessPoint, ya que no todos son lo mismo y las cantidades de diferencias son importantes (me imagino lo que sera programar para cada tipo, al menos que hagamos para lo mas usados. Hay que ver si soportan SSH :) )
Lo de velocidad entre el servidor y el cliente funciona de la siguiente manera: El cliente ejecuta un script que abre un archivo de 10MB y calcula la velocidad de lectura y el tiempo del mismo. Cuando el cliente tiene poca señal (Wireless), el mismo tiende a abrir de manera más lenta el archivo. Y si tiene muy poca señal, con microcortes, es posible que directamente no lo abra.

No me contaste si lograste hacerlo funcionar :)

Re: Registro de usuarios via Web

MensagemEnviado: Qua Set 29, 2010 11:33 am
por pablino76
funcionar de seguro que funciona seguro que si
si a vos te funciono entonces funciona luego se comprendera porque a vos si de entrada y porque a los que no, no.
y lo pulimos pero hay que lograr compilar todo esto en un tgz y que funcione a todos de entrada.
tengo que reveer luego algunas cosas que no tuve en cuenta de entrada y volver a probar
luego posteo que resultados consegui.

Re: Registro de usuarios via Web

MensagemEnviado: Seg Out 04, 2010 12:18 pm
por xisco
Estuve haciendo pruebas y el EasyCaptive es lento, mejor dicho pésimo, para manejar clientes. Ya que hace una redirección a su página en cada petición y me saca tiempo.
Estoy pensando seriamente en armar mi addon, usanto este script como inicio, unos iptables para los no registrados y para los avisos, sin QOS talvez y con amarre entre MAC e IP. Va a ser una linda experiencia :)
Pero tengo una duda en la lógica para mandar avisos a tales clientes en su X día. Creo que el tema sería armar una db con los respectivos días de pago, y hacer un cron que cada día a las 00hs chequée si alguien de la db tiene el mismo día que el BrazilFW en su momento. ¿Y los que si tienen? ¿iptables o editamos una db para ver el estado (pre,bloqueado,pago)?... Porque yo quiero dejar libre de iptables a los que tienen un X rango de IP (10.10.1.X) para que no consumir recursos y volver lento al BrazilFW en vano.
Squid ayudará a restringir velocidad :) Delay Pools. Hay que recordar que a la gente le gusta navegar rápido, conectarse al Messenger instantáneamente; pero si limitamos las descargas, de seguro no volverán a intentar descargar algo de nuevo :)

¿Qué opinan?... ¿EasyCaptive o un nuevo portal funcionando en Apache con mayor control de clientes y mejor interfaz?...

Re: Registro de usuarios via Web

MensagemEnviado: Seg Out 04, 2010 12:26 pm
por ghost
xisco escreveu: nuevo portal funcionando en Apache con mayor control de clientes y mejor interfaz?...

+1


Saludos :o!

Re: Registro de usuarios via Web

MensagemEnviado: Seg Out 04, 2010 12:30 pm
por pablino76
arranca
yo voy a ver si te puedo ayudar a pulirlo
si para vos esta bien entonces esta bien

seria interesante poder realizarlo en bashscript o hacerlo en php si es que te es mas facil y luego traducirlo a bashscript que es bastante mas sensillo e intuitivo.
y ayudaria a ser mas digerible para brazilfw ya que es su lenguaje nativo predilecto.

Re: Registro de usuarios via Web

MensagemEnviado: Seg Out 04, 2010 1:51 pm
por xisco
Y bueno... Pero primero en PHP que es mi fuerte :) después lo pasamos a Bashscript para las funciones básicas.

Entonces, estructurando sería así:
-No registrados = IP por DHCP = Redirección a página de registro con iptables.
-Registrados = IP + MAC = No hay control de QOS (porque limita también el cache), pero sí de Squid para descargas con Delay Pools.
-Avisos de pago = IP en iptables = Redirección a mensaje de aviso ¿Cómo hacer para seguir navegando?
-No pagó = IP en iptables = Redirección a mensaje de aviso de no pago, bloqueo de todos los puertos.

¿Sugerís algo más? :)

Saludos y gracias por su apoyo :)

Re: Registro de usuarios via Web

MensagemEnviado: Seg Out 04, 2010 2:27 pm
por pablino76
xisco yo digo desde mi punto de vista algo por experiencia
hacelo como decis asi, luego se ve
pero lo mejor es trabajar en un buen esqueleto que el script contenga variables la cual sean levantadas desde un archivo local texto simple tanto IP's como descripciones que luego puedan llevarse a traduccion del script php y configuracion de forma sensilla sensillo facil de crear que y cada uno lo pueda poner a su entorno.
otra cosa esto de hacer un buen esqueleto va dar la posibilidad de actualizarlo de incrustarle nuevas funciones
de que vos nos des un script nuevo lo posicionamos en el respectivo directorio y este se agrega de forma automatica tipo update al esqueleto base haciendo una nueva opcion mas agregada en el script principal

digamos que lo que te sugiero es un poco lo que pasa cuando agregamos un addon como squid, apache o easycaptive que al reiniciar este aparece en el lateral izquierdo del menu de brazilfw.

te lo remarco mas, vos hace ahora algo bien basico
eso que pusistes arriba luego en un tiempo nos pasas otro suponte archivo php y que este se autoincruste como un addon dentro de tu addon.

y bueno eso espero que se halla entendido :lol: soy medio queso explicando lo que quiero explicar pero es eso.

Re: Registro de usuarios via Web

MensagemEnviado: Seg Out 04, 2010 5:53 pm
por niraseco
ghost escreveu:
xisco escreveu: nuevo portal funcionando en Apache con mayor control de clientes y mejor interfaz?...

+1


Saludos :o!



También apoyo la moción :o!

Saludos

Re: Registro de usuarios via Web

MensagemEnviado: Qua Out 06, 2010 6:28 pm
por xisco
niraseco escreveu:
ghost escreveu:
xisco escreveu: nuevo portal funcionando en Apache con mayor control de clientes y mejor interfaz?...

+1


Saludos :o!



También apoyo la moción :o!

Saludos

Para dejarlos con intriga y saber un poco de lo que se viene. Les adelanto algo, muy poquito:
Imagem

Re: Registro de usuarios via Web

MensagemEnviado: Qua Out 06, 2010 11:27 pm
por niraseco
:shock:
Se mira lindo !!!! :o!

Re: Registro de usuarios via Web

MensagemEnviado: Qui Out 07, 2010 12:09 pm
por ghost
ya estoy con ganas de testearlo 8-)



Saludos :o!

Re: Registro de usuarios via Web

MensagemEnviado: Sex Out 15, 2010 4:42 pm
por pablino76
entonces xisco, en que quedo esto?

Re: Registro de usuarios via Web

MensagemEnviado: Dom Out 17, 2010 11:29 pm
por xisco
Estoy haciendolo a su tiempo :)