MD5(tuclave) On Tue, 07 Jan 2014 12:00:13 -0500 Admin de la Red DMS <infdmcaco...@infomed.sld.cu> wrote:
> como logro generar claves en MD5 > > > > *SaLvAdOr SaNcHeZ SaNcHeZ > *Administrador de Redes > *Sectorial Municipal de Salud > *Grupo de Usuarios de Tecnologías Libres en Cuba -»http://gutl.jovenclub.cu/ > *Proud GNU/Linux User # 525811 > *http://counter.li.org/ > *Cacocum - Holguín > > El 07/01/14 11:17, MARTÍNEZ CONSUEGRA, Wilfredo (BI-Caribe) escribió: > > > > Kuota para Squid > > > > Cuando tenemos Internet en nuestra Empresa y se necesita hacer un uso > > racional del servicio,una buena herramienta a usar seria el Kuota,diseñada > > por los colegas de la Universidad de Pinar del Rio.La misma te permite la > > creación de usuarios via web que se almazenan en una base de datos en > > mysql.El sistema posibilita: > > > > * Cambio de clave de Internet > > * Gráfico Mensual del consumo diario y por horas > > * Envio del estado de cuenta por correo > > > > Kuota cuenta con dos nieveles de acceso,un usuario que será el dueño de la > > base de datos donde alojaremos la tablas que importaremos y otro usuario > > que se creará dentro de una tabla de la base de datos anterior y será el > > encargado de entrar via web al kuota y va a crear ,borrar usuarios y ver > > todas las opciones del mismo. > > > > Partiendo de una buena guia escribo este pequeño Howto. > > > > Lo primero que haremos para implementar esta herramienta es hacer la > > descarga de: > > > > Requisitos: > > Debemos tener instalado mysql-server-5.0+php5+phpmyadmin y la libreria > > libfile-tail-perl. > > > > 1- Copiamos el directorio llamado web que viene dentro del kuota a /var/www > > y lo llaman como deseen.Más adelante trabajaremos con este directorio... > > > > 2- Vamos a crear un directorio dentro de /etc/squid llamado bin > > > > mkdir /etc/squid/bin > > > > 3- Para ese directorio copiamos los 2 ficheros siguientes: > > > > kuota.pl > > runKuota.sh > > > > El runKuota.sh es un script que se va a encargar de ejecutar el .pl por lo > > cual es necesario que el script llamado: runKuota.sh se auto-ejecute cada > > vez que el sistema se reinicie para que todo funcione, ya que debe estar > > corriendo siempre en el servidor, para eso, creamos este enlace simbólico > > que será el paso 4. > > > > 4- ln -s /etc/squid/bin/runKuota.sh /etc/rcS.d/S91kuota > > > > 5- Entramos a mysql (puedes usar para hacerlo más fácil phpmyadmin) y > > creamos una base de datos llamada squid y un usuario como usted lo quiera > > llamar ej: kuota con su password ej:aaaaa,y le damos a ese usuario los > > permisos ,de insertar,borrar,editar a la base de datos que ya creamos > > llamada squid. > > > > Llamaremos a este usuario kuota para que se haga mas entendible a la hora > > de configurar los archivos. > > > > 5-Ahora importamos de el directorio llamado BD que viene dentro del Kuota > > el .sql que se encuentra.Recuerde borrar las lineas de la base de datos y > > solo dejar las tablas que importaremos .Antes de importar las tablas puedes > > editarla para adecuarla a tu institución ya que como dije anteriormente > > kuota fue creado por los colegas de la Universidad de Pinar del Rio! > > > > 6- Después que hayas hecho esto, agrega el usuario tuyo,(Yuneikys) es decir > > el user con el que tu vas a navegar desde tu proxy, que va a ser también el > > administrador para manejar la WEB, (todo esto es desde phpmyadmin) El > > usuario, lo debes agregar en la tabla password, usando MD5 para la clave, > > agregalo también en las tablas: userinfo y useradmin.Para eso vas a la base > > de datos que creastes llamada squid y en la tabla password le damos > > insertar y ponemos el user ej:yuneikys y el password ej:12345 pero esta en > > md5.Haga lo mismo en useradmin que será el código una vez que estemos > > dentro del kuota que tenemos que insertar para administrarlo.Ponga solo el > > nombre si desea en la tabla userinfo también dandole insertar! > > > > A este usuario lo llamaremos Yuneikys para entender los niveles de acceso > > más adelante. > > > > 7- Una vez que hayas terminado con esto, solo debes crear un virtualhost en > > tu servidor web que apunte a donde pusistes el directorio web del kuota y > > poner ese nombre en tu DNS, para que todo funcione bien. Antes de intentar > > logearte en la página del kuota, verifica que en el config.php que viene > > dentro del directorio Conecctions donde establece la conexión a la base de > > datos, están correctamente puestos, los siguientes datos: > > > > - Servidor Mysql localhost > > - Nombre de la base de datos squid > > - Usuario Mysql kuota > > - Clave del usuario mysql aaaaa > > > > 8-Si todo eso esta bien, debes poder entrar con el usuario y la contraseña > > (yuneikys y 12345) > > que pusiste en la tabla password de la base de datos. Otra cosa, verifica > > que el script en perl, es decir el .pl esta corriendo en el servidor, para > > eso, usa este comando: > > > > ps aux | grep kuota > > > > Debes obterner una salida como esta: > > > > ns:/etc# ps aux | grep kuota > > root 2876 0.0 8.4 162480 87456 ? S Oct11 2:41 > > /usr/bin/perl /etc/squid/bin/kuota.pl > > root 21558 0.0 0.0 2884 768 pts/0 S+ 12:28 0:00 grep kuota > > > > Si no te sale así, es que no está corriendo y solo se ocurren 2 causas, o > > no instalaste la librería de perl que se necesita, la que te mencione al > > inicio, oh! en el script en perl, el .pl no están bien puestos los datos > > para que el script pueda conectarse a mysql y escribir en la base de datos > > todo lo que toma del access.log del squid .Verifica los datos de conexión a > > la base de datos en el fichero kuota.pl ubicado en el directorio bin que > > creastes dentro /etc/squid y que tenga también bien puesto: > > > > -Servidor Mysql localhost > > - Nombre de la base de datos squid > > - Usuario Mysql kuota > > - Clave del usuario mysql aaaaa > > > > 9- Y por último, lo que integras al squid es el mysql_auth que es lo que > > usarías para que squid autentique contra mysql, para eso debes tomar los 2 > > ficheros que estan en el compactado que se llaman: > > > > mysql_auth.conf y mysql_auth > > > > el fichero de configuracion .conf lo pones en /etc/squid y verifica los > > permisos, que tenga los mismos que los archivos del squid creo que es 644 > > con dueño y grupo root , NO! Le pongas 600 como permiso al igual que el > > punto .conf del squid porque suele dar problemas! > > > > Al leer este archivo verifica los datos de conexión al servidor mysql en > > este fichero también: > > > > -Servidor Mysql localhost > > - Nombre de la base de datos squid > > - Usuario Mysql kuota > > - Clave del usuario mysql aaaaa > > > > 10- en: /usr/bin copias el mysql_auth: > > /usr/bin/mysql_auth en ese directorio hay una pila de fichero ejecutables, > > cuando copies este para ahi, asegúrate que tenga los mismos permisos que > > tienen los demás que están en ese lugar. > > > > Para saber si el mysql_auth autentica bien contra la base de datos donde > > están los usuarios, puedes hacer una prueba desde la consola, ejecutas > > este comando: > > > > /usr/bin/mysql_auth > > > > Esto te dejará la consola bloqueada, sin devolverte el promt, ahí mismo > > tecleas tu usuario seguido de la contraseña (Yuneikys 12345), dejando un > > espacio entre el user y el password y das ENTER, si todo esta bien, eso > > debe devolverte un OK, si te da un error, algo está mal y tendrás que > > revisar hacía atrás el resto de los usuarios los creas luego desde la WEB, > > accediendo con tu usuario (yuneikys), que inicialmente entra al sistema de > > la web sin acceso full, para poder acceder a las opciones que te permiten > > agregar usuarios nuevos, borrarlos, etc... debes teclear un código de > > seguridad dando click en un > > candado que estará en la posición de cerrado en la esquina superior > > izquierda debajo de donde aparece el user con el que accediste a la web, > > cual es ese código que pones ahí?? Bueno, la clave que le pusiste a tu > > usuario en la tabla: useradmin en la base de datos, usando phpmyadmin (que > > puede ser igual o no, a la clave que pusiste en tabla password) > > > > Fin. > > > > Suerte Hermanos! > > > > http://mycyberacademy.com/articulo/Solucion-para-squish > > > > Muchas empresas implementan proxy squid para proveer el servicio de > > navegación por internet a los usuarios internos. El squid es un proxy caché > > de los más populares hace ya varios años, nativo de Unix/Linux aunque > > existen implementaciones para los sistemas operativos de Microsoft. Mejora > > el rendimiento de las conexiones a través del cacheo de peticiones > > recurrentes y soporta tanto protocolos convencionales como HTTP o HTTPS y > > además otros como FTP y Gopher. > > > > Pero el proxy no es el tema principal de este artículo sino su > > integración con un sistema de cuotas libre escrito en PERL llamado squish. > > Que es un sistema de cuota? pues simple. Una aplicación que calcula el > > consumo ya sea semanal, mensual o anual y valida al proxy (en este caso > > squid) si está apto o no para consumir. Ejemplo el usuario rolando está > > autorizado a consumir solo 1GB en descarga de internet y diariamente > > nuestro sistema de cuotas chequea su consumo hasta que llegue al limite y > > avisa al proxy para que deniegue las peticiones. > > > > El squish y el squid hacen un buen trabajo en equipo en este sentido, > > pero digamos, ¿como liberas un usuario del sistema de cuotas y mantenerlo > > controlado a través del proxy? El squish no hace un buen trabajo en este > > sentido y como funciona independiente al proxy no puede ser configurado > > mediante las listas de control de acceso del mismo. La solución a este > > problema es desarrollar esa funcionalidad directamente en el squish.pl que > > se encarga del manejo de la base de datos donde se guardan las estadísticas > > de los usuarios y su consumo. > > > > Existen dos soluciones, la primera un expresión regular que obvie a un > > usuario determinado en cada línea que parsee del fichero access.log > > generado por el proxy squid. La segunda de más complejidad y la que voy a > > mostrarles su función es borrar el objeto del usuario requerido de la base > > de datos por lo que no lo contabilizará. Debo confesarles que la selección > > no fue mía sino de la empresa que me contrató para hacer el trabajo, en > > otro artículo puedo mostrarles la implementación de la primera variante. > > > > El fichero squid.pl es el encargado de controlar todo lo referente al > > trabajo con la base de datos, incrementar el consumo de los usuarios y > > avisar al proxy cuando un usuario excede el límite de su cuota. Si > > revisamos detalladamente su contenido veremos que la base de datos se > > encuentra instanciada en una variable llamada $userdb, y que usando > > precisamente los métodos ya implementados podemos jugar con su contenido. > > Entonces casi al final del fichero justo antes de la línea que ejecuta la > > función writekillfile() y después salva la base de datos a través del > > método putcurrentstate() insertamos lo siguiente. > > # Función que al ser ejecutada borra los usuarios especificados en el > > arreglo @users > > sub emptyusers() > > { > > my @users = ('rolando', 'leroy', '192.168.1.5'); // Creo los valores > > iniciales del arreglo, especifico los usuarios o las direcciones IP de los > > clientes > > > > foreach (@users) { // Itero uno por uno los usuarios > > if (defined $$userdb{$_}) { // Si esta definido en la base de > > datos, es decir existe el usuario actual en la iteración > > delete $$userdb{$_}; // Lo borramos de la base de > > datos > > print STDOUT "Cuota borrada para el usuario $_ \n"; > > } > > } > > } > > > > emptyusers(); // Ejecuto la función declarada antes > > > > Fíjense que la variable $_ contiene en cada iteración el nombre de > > usuario, y la si está definido defined $$userdb{$_} procede a borrarlo > > inmediatamente delete $$userdb{$_}. Este método resolvió la inquietud de > > mis jefes en aquel momento. Luego decidieron que el sistema de cuotas solo > > debería estar en funcionamiento en horario laboral. Como programador al fin > > empiezo a pensar en un método que convirtiera el formato de hora del squid > > y chequeara los rangos de tiempo así como los días de la semana pero; se me > > pasó una cosa, estoy en Linux. Linux mis amigos y su maravilloso CRON son > > la respuesta a mi problema y me ahorra un par de horas de intensa labor > > trabajando con PERL que debo decirles no es mi punto fuerte, por lo que me > > fui por la alternativa. > > > > La línea es sencilla y podemos ponerla en cualquiera de los ficheros de > > configuración del CRON preferiblemente usando el comando crontab -e. > > */10 08-17 * * mon,tue,wed,thu,fri root /usr/local/squish/squish.cron.sh > > > > En qué se traduce esto. Pues todos los días laborables de la semana de > > lunes a viernes en el horario de 8 de la mañana a 5 de la tarde cada 10 > > minutos el sistema de cuotas actualiza los contadores de consumo de su base > > de datos obviando las trazas generadas en los otros horarios que pueden ser > > depuradas con logrotate o alguna otra solución para el rotado de logs. > > > > Son un par de soluciones simples, pero muy prácticas a una situación que > > muchos en la web tienen y que el squish no da soporte. Del squish lo que > > más me gusta es que es simple y con conocimientos de programación lo > > podemos flexibilizarlo al límite. Hay más y en próximos artículos publicaré > > un par de modificaciones que enriquecerán su sistema de cuotas pero esto es > > todo por ahora, diviértanse con PERL. > > > > http://www.ledge.co.za/software/squint/squish/ > > > > Squish > > squish stops you from spending too much of your valuable time and your > > company's bandwidth browsing the internet. Your friendly administrator can > > specify how much you are permitted, in terms of the amount of time you > > spend browsing, or the amount of data you download. This is specified per > > day, per week or per month. > > > > With squish you can ... > > Ration bandwidth > > Keep people from lazing around on the internet all day > > Make a per-user MRTG-like bandwidth graph (see example) > > Semi-automatically handle programs that waste bandwidth (viruses, trojans, > > spyware) > > Avoid unpleasant disciplinary hearings > > Blame the computer for doing what you told it to do > > Proper use of squish can also solve cockroach problems. > > > > > > Information > > Audience: system administrators and management. > > Status: under development > > Requires: squid proxy server, web server, web browser, cron > > Language: perl (perl version 5.6 and later, I think) > > License: GPL > > Dependencies: perl-GD, gd-lib (graphics for traffic graphs) > > > > Download and documentation > > ChangeLog - view the change log > > FAQ - Frequently asked questions (some with answers) > > Demo - Per-user bandwidth and on-line time graph > > Contact us if you would like us to install the software for you. > > Current version: squish.tar.gz > > All versions: squish.tar.gz > > squish-0.0.18.tar.gz > > squish-0.0.17.tar.gz > > squish-0.0.16.tar.gz > > squish-0.0.15.tar.gz > > squish-0.0.14.tar.gz > > squish-0.0.12.tar.gz > > squish-0.0.11.tar.gz > > squish-0.0.10.tar.gz > > > > -- > > Les donnees et renseignements contenus dans ce message sont personnels, > > confidentiels et secrets. Toute publication, utilisation ou diffusion, meme > > partielle, doit etre autorisee. Si vous n'etes pas le bon destinataire, > > nous vous demandons de ne pas lire, copier, utiliser ou divulguer cette > > communication. Nous vous prions de notifier cette erreur a l'expediteur et > > d'effacer immediatement cette communication de votre systeme. > > > > Any data and information contained in this electronic mail is personal, > > confidential and secret. Any total or partial publication, use or > > distribution must be authorized. If you are not the right addressee, we ask > > you not to read, copy, use or disclose this communication. Please notify > > this error to the sender and erase at once this communication from your > > system. > > > > -- > > Este mensaje le ha llegado mediante el servicio de correo electronico que > ofrece Infomed para respaldar el cumplimiento de las misiones del Sistema > Nacional de Salud. La persona que envia este correo asume el compromiso de > usar el servicio a tales fines y cumplir con las regulaciones establecidas > > Infomed: http://www.sld.cu/ > > > -- > Este mensaje ha sido analizado por MailScanner > en busca de virus y otros contenidos peligrosos, > y se considera que está limpio. > > ______________________________________________________________________ > Lista de correos del Grupo de Usuarios de Tecnologías Libres de Cuba. > Gutl-l@jovenclub.cu > https://listas.jovenclub.cu/cgi-bin/mailman/listinfo/gutl-l -- MSc. Carlos Pollán Estrada Esp. Ciencias de la Computación. Administrador de Red. Manzanillo. Cuba. URL: http://www.ahmzllo.granma.inf.cu/ -- Este mensaje ha sido analizado por MailScanner en busca de virus y otros contenidos peligrosos, y se considera que está limpio. ______________________________________________________________________ Lista de correos del Grupo de Usuarios de Tecnologías Libres de Cuba. Gutl-l@jovenclub.cu https://listas.jovenclub.cu/cgi-bin/mailman/listinfo/gutl-l