Instalación de programa educativo para niños GCompris en Linux

19 febrero 2013
GCompris http://gcompris.net/-es- es un programa OpenSource con actividades educacionales para niños de 2 a 10 años, lo puedes configurar en español, y para aquellos que hemos utilizado otros programas educacionales como Pipo esta es una gran alternativa.
Gcompris se puede instalar en Windows, MacOSX, FreeBSD y por supuesto Linux, en el caso de Linux esta disponible en los repositorios de paquetes de la mayoría de Distribuciones y en algunos se instala por defecto, en mi caso voy a mostrarles lo fácil que es instalarlo desde los fuentes en Linux Slackware.

Lo primero que haremos es bajar los archivos fuentes desde la siguiente url:

http://sourceforge.net/projects/gcompris/files/

Luego procedemos a descomprimir e instalar con los siguientes comandos:

# mv gcompris-XX.XX.tar.bz2 /usr/local/src/.
# cd /usr/local/src
# tar yxvf gcompris-XX.XX.tar.bz2
# cd gcompris-XX.XX
# ./configure
# make
# make install

Una vez finalizada la instalación procedemos a ejecutarlo con el comando “gcompris” lo cual nos traerá una pantalla de inicio como la siguiente:

 

Se ve bastante sencillo pero tiene una gran cantidad de actividades y es extremadamente adictivo con los niños, lo digo por experiencia propia con mi hijo de 5, la primera vez que inicias GCompris te aparece en Ingles, puedes cambiar el idioma haciendo clic en la llave de tuercas y luego cambiando la primera opción a español que es la que corresponde al idioma.
Estoy buscando otros programas educativos para niños, que otros conoces y recomiendas que quieras compartir???
Tutorial tomado del blog http://vidagnu.blogspot.mx
autor Publicado por Oscar Meza
Anuncios

Instalacion de LAMP en Linux

19 febrero 2013

Si queremos desarrollar en PHP necesitaremos un ambiente para probar nuestras aplicaciones, podemos hacerlo perfectamente en un Server remoto pero jamas se comparara con la velocidad que obtendremos haciéndolo en un Server local. 

Para los que usamos Linux lo mas seguro es que ya contemos con todos estos servicios instalados, pero hacer que todos se comuniquen entre si lleva tiempo y si no tienes la experiencia o el conocimiento necesario sobre Linux podrá llegar a ser bastante complicado y hasta frustrante.
Aquí es donde entra LAMP, que es un paquete que nos facilita la vida manejando las conexiones y configuraciones necesarias para que estos servicios se hablen, despreocupandonos de la infrastructura y haciendo que nos concentremos en la programación  LAMP significa Linux, Apache, MySQL y PHP.
Hay varios paquetes LAMP en lo personal me gusta XAMPP el cual podemos bajar desde la siguiente ubicación:
Yo recomiendo desinstalar los paquetes de los servicios que vienen en nuestra distro, esto lo haremos con el manejador de paquetes de nuestro Linux. Yo lo hago desde el mio que es pkgtool 😉
Luego descomprimimos:
# tar zxvf xampp-linux-x.x.x.tar.gz -C /opt
Lo que creara el directorio /opt/lampp, si tenemos una versión antigua sera sustituida por la nueva version 😉
Luego para iniciarlo basta con ejecutar el siguiente comando:
# /opt/lampp/lampp start
Lo que retorna…
Starting XAMPP for Linux 1.8.1…
XAMPP: Starting Apache with SSL (and PHP5)…
XAMPP: Starting MySQL…
XAMPP: Starting ProFTPD…
XAMPP for Linux started.
Mejor se arruina!!! en este momento tenemos Apache, PHP y MySQL perfectamente corriendo y completamente integrados, si levantamos un navegador y digitamos la url http://localhost veremos un resultado como el siguiente:
Como podrás ver el instalador ha dejado MySQL sin seguridad entre otros, te recomiendo ejecutar el comando:
# /opt/lampp/lampp security
Lo que te lleva por una serie de pasos sencillicimos para asegurar tu ambiente LAMP como detallo a continuación:

XAMPP: Quick security check…
XAMPP: Your XAMPP pages are NOT secured by a password.
XAMPP: Do you want to set a password? [yes] yes
XAMPP: Password:
XAMPP: Password (again):
XAMPP: Password protection active. Please use ‘lampp’ as user name!
XAMPP: The MySQL/phpMyAdmin user pma has no password set!!!
XAMPP: Do you want to set a password? [yes] yes
XAMPP: Password:
XAMPP: Password (again):
XAMPP: Setting new MySQL pma password.
XAMPP: Setting phpMyAdmin’s pma password to the new one.
XAMPP: MySQL has no root passwort set!!!
XAMPP: Do you want to set a password? [yes] yes
XAMPP: Write the password somewhere down to make sure you won’t forget it!!!
XAMPP: Password:
XAMPP: Password (again):
XAMPP: Setting new MySQL root password.
XAMPP: Change phpMyAdmin’s authentication method.
XAMPP: The FTP password for user ‘nobody’ is still set to ‘lampp’.
XAMPP: Do you want to change the password? [yes] yes
XAMPP: Password:
XAMPP: Password (again):
XAMPP: Reload ProFTPD…
XAMPP: Done.

Tutorial tomado del blog http://vidagnu.blogspot.mx
autor Publicado por Oscar Meza

Control de ancho de Banda con Squid Delay Pools

15 febrero 2013

Por publicado en las categorías Sysadmin el 29 abril 2011

Uno de los usos más útiles que tenemos con Squid, además de usarlo como caché es el de poder administrar el consumo de ancho de banda de los clientes que se conectan al mismo.

Para poder usar los Delay Pools debemos tener configuradas ACL’s, tanto sea por subred, grupo de equipos, destino, o lo que necesitamos controlar

Existen 3 tipos de “delay pools“. Los valores de ancho de banda son dos, se expresan en bits, e indican el número promedio de bits por segundo y un límite istantáneo que no se puede superar.

El tipo 1 te permite definir un límite de ancho de banda global, o sea que todos las solicitudes que entran en ese pool estarán compartiendo este ancho de bando. Este tipo te permite decir, por ejemplo  “Hay un ancho de banda disponible de 128kbps para bajar archivos desde la red A”

El tipo 2 te permite definir un ancho de banda global y un límite por  cada usuario. Este tipo te permite decir, por ejemplo, “Hay un ancho de banda disponible de 128kbps para bajar archivos desde la red A pero cada usuario que acceda no podrá usar más de 32kbps”.

El tipo 3 te permite definir un ancho de banda global, un límite por cada subred clase C (/24), y un límite por cada usuario accediendo. Este tipo te permite decir, por ejemplo “Hay un ancho de banda disponible de 256kbps para bajar archivos, pero cada subred clase C no puede usar más de 128kbps, y cada usuario individual no puede usar más de 32kbps”.

# Se indica el número TOTAL de delay_pools definidios en el sistema
delay_pools 1
# Definimos un delay pool (número 1) de Clase 2
# (es decir, con limite global, y para cada usuario):
delay_class 1 2
# Definimos los parámetros del delay_pool número 1
delay_parameters 1 128000/128000 32000/56000

Esto indica que el Delay Pool número 1 tiene un límite global de 128kbps (promedio e instantáneo), cada usuario accediendo  dentro del pool tiene un límite promedio de 32kbps, pero puede bajarse objetos pequeños del caché a 56kbps.

Como explicaba más arriba, también tenemos que definir algún ACL para identificar a que objetos o usuarios afecta el pool que acabamos de definir:

acl mired src 10.0.10.0/255.255.255.0
delay_access 1 allow mired
delay_access 1 deny all

Podemos usarlo para limitar ancho de banda para destinos especificos

acl destinos dstdomain .youtube.com .facebook.com
delay_access 1 allow destinos
delay_access 1 deny all

How to squid + delay pools + youtube facebook

15 febrero 2013

Si son administradores de redes o tuvieron que implementar squid en alguna empresa con muchos usuarios y poco enlace, seguro saben de que les voy a hablar. Youtube y facebook pueden ser sitios que nos saquen los pelos de punta!….pero bloquearlos completamente puede hacer que los usuarios de la red nos quieran colgar . Una solución que nos dió resultado en varios lugares es crear un delay pool clase 1 para determinados sitios. Les paso este how to pequeño pero efectivo. Claro que si quieren saber como funcionan exactamente las delay pools pueden dirigirse a la web de squid que lo explica mucho mejor de lo que podría hacerlo yo!

1)
Instalar squid desde aptitude o compilar con soporte para delay pools, –enable-delay-pools.

1.2)
Crear un archivo que se llame lentos en /etc/squid y poner las ips que queremos que naveguen lento.

2)
Editar el archivo squid.conf y agregar lo siguiente:

acl usuarioslentos src “/etc/squid/lentos”

#PONER LENTO YOUTUBE, FACEBOOK
delay_pools 1
delay_class 1 1
delay_parameters 1 1000/100
acl lento url_regex \.flv$
acl lento url_regex -i watch?
acl lento url_regex -i youtube
acl lento url_regex -i facebook
delay_access 1 allow lento usuarioslentos

http_access allow usurarioslentos

Claro que esto lo pueden adecuar a su archivo, podrían tener los grupos por AD o OpenLDAP o usuarios comunes. También pueden agregar los dominios que quieran.

Reinician Squid y ya comenzaría a funcionar, también pueden jugar con lo valores del pool ya que con lo que puse yo va realmente lento.

Saludos! Publicado por Fede en 12:55


Limitando del ancho de banda con CBQ vs P2P

15 febrero 2013

Escrito por Domingo Varela el 08 Abril 2008.

Uno de los recursos mas importantes cuando se tiene un servicio de Internet es el consumo de ancho de banda, para ello es necesario tomar ciertas politicas que nos llevara a la administracion de las QoS. En un servidor GNU/Linux podemos limitar el ancho de banda de las descargas o del trafico entrante y de como administrar la conexion a internet para que sea mas eficiente.

Aqui proporcionaremos de manera sencilla como limitar el trafico entrante evitando así que los usuarios de nuestra LAN consuman todo el ancho de banda de nuestra conexión a Internet.

Esto resulta útil cuando nuestra conexión es lenta o nuestros usuarios suelen descargar toneladas de mp3s, archivos en formato iso, inclusive las últimas distribuciones de Linux.

Supongamos que tenemos un enlace sea cual sea (Ds0,E1 o 2 E1’s) y que asu vez una serie de redes privadas con 60 AP’s. Nuestro GW es un GNU/Linux y por ende debemos de tener un buen plan de “distribucion” y/o “prioridad” para distribuir el ancho de banda.

Aqui se explicara como usar el script CBQ que Linux lo incluye por default por lo tanto no se hace ningún cambio adicional al kernel como es en el caso del traffic shaper (Que solo podra ayudarnos a configurar una interface a limitar, no por IP como es el caso de CBQ).

CBQ es mas poderoso de lo que creemos, con este podemos controlar puertos, determinar el horario especifico para usar el ancho de banda a ser utilizado, compartirlo y controlar programas que consumen demasiado ancho de banda por ejemplo (iMesh, Edonkey, Morpheous, Audiogalaxy, etc).

Se sabe que CBQ trabaja con archivos de configuración que se localizan en el directorio /etc/sysconfig/cbq. Los archivos de configuración se tienen que llamar cbq-X.nombre donde x es un numero en hexadecimal de 4 digitos que indica el orden de arranque respecto a los demás archivos de configuración (hay uno por servicio normalmente).

Los archivos de configuración deberan de tener un formato definido, por ejemplo:

  • cbq-0001.ftp-sedecap, download
  • cbq-0002.http-cobaep, download
  • cbq-0128.campus.backbone-client, download
  • cbq-0129.client-backbone, upload

donde cada archivo de configuración debe tener las siguientes reglas obligatorias:

DEVICE=Interfaz,Velocidad-Interfaz,Peso
RATE=velocidad
WEITH=peso/10
PRIO=prioridad
RULE=ip o red a ser controlada

En el caso de que tengamos 20 redes privadas en un solo gateway y queremos darle solo 40 Kbps de upload, armamos la configuracion, el rate, el weight, etc y colocaremos 192.168.0.0/24

Parámetro DEVICE
DEVICE=Interfaz,Velocidad-Interfaz,Peso

Ejemplo:
DEVICE=eth0,10Mbit,1Mbit

Interfaz: Nombre de la Interfaz eth0, eth1, ppp0, wvlan0…
Velocidad: Es la velocidad del dispositivo

Ejemplo:
Ethernet 10Mbit o 100 Mbit…

Peso: Es un parámetro de ajuste que debera ser proporcional a la Velocidad-Interfaz, siempre vamos a darle el 10%.

Parametro RATE
Velocidad

Ejemplo:
RATE=5Mbit

Velocidad-Interfaz, podemos usar Kbit, Mbit o Mbps.

Parametro WEIGHT
WEIGHT=(peso/10)
Ejemplo:
WEIGHT=500Kbit

Otro parámetro que debe ser proporcional a la Velocidad-Interfaz.
Peso = (Velocidad-Interfaz) / 8
Parametro PRIO
PRIO=(1-8)
Ejemplo: PRIO=5

Prioridad del tráfico para la clase, cuando mayor sea el número, menor es la prioridad, la prioridad 5 es un valor excelente, de hecho, la última versión de CBQ.INIT viene con prioridad 5 por defecto.

Parámetro RULE
RULE=[[saddr[/prefix]][:port],][daddr[/prefix]][:port]

Los parámetros anteriores hacen un filtro para el trafico de cada una de las clases, podemos usar múltiplos compuestos de reglas de archivos de configuración.

Por ejemplo

  • RULE=10.1.1.0/24:80 selecciona el trafico que va al puerto 80 de la red 10.1.1.0
  • RULE=10.2.2.5 selecciona todo el trafico del host 10.2.2.5
  • RULE=10.2.2.5:20/0xfffe selecciona el trafico que va a los puertos 20 y 21 en el host 10.2.2.5 (¿alguien lo entiende?)
  • RULE=:25,10.2.2.128/26:5000 selecciona el trafico que viene desde cualquier ip en el puerto 25 al puerto 5000 de la red 10.2.2.128.
  • RULE=10.5.5.5:80 Selecciona el trafico que viene del puerto 80 del host 10.5.5.5

Parámetro TIME
Este parámetro limita el acceso en horarios predeterminados:
TIME=(hora inicial)-(hora final);(velocidad)/(velocidad/10)

Por ejemplo:
TIME=18:00-06:00;256Kbit/25Kbit

Otros parámetros:
BOUNDED: Si esta definido como ‘yes’ el shaper, sera mantenido siempre que haya ancho de banda disponible.

ISOLATED: Si esta definido como ‘yes’ el shaper NO tomara ancho de banda compartido.
EJEMPLOS:

DEVICE=eth0,10Mbit,1Mbit
RATE=128Kbit
WEIGHT=10Kbit
PRIO=5
RULE=192.128.1.0/24

En este ejemplo, dice que el tráfico de la interface eth0 es de 10 Mbit, a través de la red 192.168.1.0, que a su vez, será procesado con prioridad 5 a través de un shaping de 128 Kbit.

Nótese que con este archivo de configuración SOLO estamos limitando el ancho de banda de salida. Para limitar el ancho de banda en los dos sentidos, debemos configurar, la otra interface….

DEVICE=eth1,10Mbit,1Mbit
RATE=28Kbit
WEIGHT=2Kbit
PRIO=5
RULE=192.168.1.0/24

Ejemplos Reales: Chulo

Eth0,es mi conexion a internet
Eth1, es mi LAN

Aqui anexo los archivos de configuración para los diferentes servicios que se tienen en la Universidad, estos archivos estan situados en el directorio /etc/sysconfig/cbq y el script se puede bajar de aqui o si lo prefiere directamente instalar el paquete iproute.
Archivos de SALIDA, Tarjeta ETH0, que esta conectado a Internet

#cbq-0003.Web_Out_eth0_256K
#
DEVICE=eth0,10Mbit,1Mbit # Interface,Vel-Interface,Vel-Interface/8
RATE=256Kbit #Velocidad
WEIGHT=32Kbit #Velocidad / 8
PRIO=5 #Prioridad 1-8, donde el 8 es mas baja
RULE=,:80
RULE=,201.151.249.101
BOUNDED=yes
ISOLATED=yes
# ——————-

#cbq-0004.Correo_Out_eth0_256K
#
DEVICE=eth0,10Mbit,1Mbit # Interface,Vel-Interface,Vel-Interface/8
RATE=256Kbit #Velocidad
WEIGHT=32Kbit #Velocidad / 8
PRIO=5 #Prioridad 1-8, donde el 8 es mas baja
RULE=,:25
RULE,:110
RULE=,80
RULE=,:143
RULE=,:22
RULE=,53
RULE=,201.151.249.98
BOUNDED=yes
ISOLATED=yes
# ——————-

#cbq-0005.P2P_Out_eth0_15K
#
DEVICE=eth1,10Mbit,1Mbit # Interface,Vel-Interface,Vel-Interface/8
RATE=15Kbit #Velocidad
WEIGHT=1Kbit #Velocidad / 8
PRIO=2 #Prioridad 1-8, donde el 8 es mas baja
TIME=01:00-07:59;110Kbit/11Kbit
RULE=,:21
RULE=,201.151.249.100
RULE=,:1214
RULE=,:4661
RULE=,:4662
RULE=,:4665
RULE=,:4666
RULE=,:4667
RULE=,:4668
RULE=,:4669
RULE=,:4610
RULE=,:41000
RULE=,:41001
RULE=,:41002
RULE=,:41003
RULE=,:41004
RULE=,:41005
RULE=,:41006
RULE=,:41007
RULE=,:41008
RULE=,:41009
RULE=,:41010
RULE=,:41011
RULE=,:41012
RULE=,:41013
RULE=,:41014
RULE=,:41015
RULE=,:41016
RULE=,:41017
RULE=,:41018
RULE=,:41019
RULE=,:41020
RULE=,:41021
RULE=,:41022
RULE=,:41023
RULE=,:41024
RULE=,:41025
RULE=,:41026
RULE=,:41027
RULE=,:41028
RULE=,:41029
RULE=,:41030
BOUNDED=yes
ISOLATED=yes
# ——————-

Archivos de ENTRADA, Tarjeta ETH1, que esta conectado a la LAN

#cbq-0006.P2P_In_eth1_15K
#
DEVICE=eth1,10Mbit,1Mbit # Interface,Vel-Interface,Vel-Interface/8
RATE=15Kbit #Velocidad
WEIGHT=1Kbit #Velocidad / 8
PRIO=3 #Prioridad 1-8, donde el 8 es mas baja
#Windows Media Player.
RULE=:1755,192.168.1.0/24
#Real Player uses TCP port 554, for UDP it uses different ports,
#but generally RealAudio in UDP doesn’t consume much bandwidth.
RULE=:554,192.168.1.0/24
RULE=:7070,192.169.1.0/24
#Napster uses ports 6699 and 6700, maybe some other?
RULE=:6699,192.168.1.0/24
RULE=:6700,192.168.1.0/24
#Audiogalaxy uses ports from 41000 to as high as probably 41900,
#there are many of them, so keep in mind I didn’t list all of
#them here. Repeating 900 nearly the same lines would be of course
#pointless. We will simply cut out ports 410031-41900 using
#ipchains or iptables.
RULE=:41000,192.168.1.0/24
RULE=:41001,192.168.1.0/24
RULE=:41000,192.168.1.0/24
RULE=:41001,192.168.1.0/24
RULE=:41002,192.168.1.0/24
RULE=:41003,192.168.1.0/24
RULE=:41004,192.168.1.0/24
RULE=:41005,192.168.1.0/24
RULE=:41006,192.168.1.0/24
RULE=:41007,192.168.1.0/24
RULE=:41008,192.168.1.0/24
RULE=:41009,192.168.1.0/24
RULE=:41010,192.168.1.0/24
RULE=:41011,192.168.1.0/24
RULE=:41012,192.168.1.0/24
RULE=:41013,192.168.1.0/24
RULE=:41014,192.168.1.0/24
RULE=:41015,192.168.1.0/24
RULE=:41016,192.168.1.0/24
RULE=:41017,192.168.1.0/24
RULE=:41018,192.168.1.0/24
RULE=:41019,192.168.1.0/24
RULE=:41020,192.168.1.0/24
RULE=:41021,192.168.1.0/24
RULE=:41022,192.168.1.0/24
RULE=:41023,192.168.1.0/24
RULE=:41024,192.168.1.0/24
RULE=:41025,192.168.1.0/24
RULE=:41026,192.168.1.0/24
RULE=:41027,192.168.1.0/24
RULE=:41028,192.168.1.0/24
RULE=:41029,192.168.1.0/24
RULE=:41030,192.168.1.0/24
RULE=:41030,192.168.1.0/24
#Some clever users can connect to SOCKS servers when using Napster,
#Audiogalaxy etc.; it’s also a good idea to do so
#when you run your own SOCKS proxy
RULE=:1080,192.168.1.0/24
#Add any other ports you want; you can easily check and track
#ports that programs use with IPTraf
#RULE=:port,192.168.1.0/24
BOUNDED=yes
ISOLATED=yes
# ——————-

#cbq-0007.PROXY_In_eth1_35K
#
DEVICE=eth1,10Mbit,1Mbit # Interface,Vel-Interface,Vel-Interface/8
RATE=35Kbit #Velocidad
WEIGHT=3Kbit #Velocidad / 8
PRIO=2 #Prioridad 1-8, donde el 8 es mas baja
RULE=:8080,192.168.1.248
BOUNDED=yes
ISOLATED=yes
# ——————-

#cbq-0008.FTP_In_eth1_15K
#
DEVICE=eth1,10Mbit,1Mbit # Interface,Vel-Interface,Vel-Interface/8
RATE=15Kbit #Velocidad
WEIGHT=1Kbit #Velocidad / 8
PRIO=5 #Prioridad 1-8, donde el 8 es mas baja
RULE=:20,192.168.1.0/24
RULE:21,192.168.1.0/24
BOUNDED=yes
ISOLATED=yes
# ——————-

Posted by: Lic. Domingo Varela Y.