Gnome 3 y Ubuntu 11.10

16 10 2011

Acabo de instalar la última versión de Ubuntu, la 11.10. Sorpresa me llevo al ver que no existe Gnome clásico, buscando por internet explican cómo instalarlo… Pero claro, es el Gnome clásico de Gnome 3, es decir, un Gnome no tan clásico.

Yo estaba muy acostumbrado a usar Gnome clásico, el normal, el de siempre, el de la hora a la derecha en la parte superior de la pantalla, el de gnome-panel con los iconos de acceso directo en la barra superior, el de Aplicaciones, Lugares y Administración, el que tenía un icono en la parte inferior izquierda que te llevaba al escritorio, etc…

¿Qué ha sido de él? ¿Qué han hecho los desarrolladores de Gnome y por qué? Este escritorio no es nada práctico, no quiero buscar mis aplicaciones, quiero tenerlas con un clic, quiero la hora arriba a la derecha, quiero el botón para ir al escritorio, quiero Gnome 2.3.x y no quiero la mierda de Gnome 3.

Los usuarios de Gnome pudimos soportar que nos cambiasen los botones de cerrar, maximizar y minimizar a la izquierda, porque al fin y al cabo se podían volver a poner a la derecha, pero esto ya… Canonical y Gnome la han cagado de gordo, apostando por escritorios que a mi padre le vendrían muy bien, con los iconos grandes, vistosos y preciosos, pero a mí no. Para un informático, estos escritorios son basura.

Bienvenidos a la informática del siglo XXI, o mejor dicho, siglo XXi, donde todos aspiran a parecerse a Apple con interfaces para tontos.

Molesto con Ubuntu.





Floppy virtual para VirtualBox

31 05 2011

Me ha surgido la necesidad de trabajar con discos floppy en VirtualBox pero mi PC no posee la famosa unidad de disquetes desde hace ya varios años, así que he buscado por la red como crear una unidad floppy virtual para mi Ubuntu. Vámos a ello.

Primero crearemos la imagen de la unidad floppy para poder usarla en VirtualBox, desde una terminal tecleamos:

dd if=/dev/zero of=floppy.img bs=1k count=1440

Eso nos creará un archivo .img en nuestro directorio /home. El archivo estará vacío y sin formato. Ahora pasamos a montar el disco floppy como dispositivo loop:

sudo losetup /dev/loop0 floppy.img

Una vez montado como dispositivo loop, pasamos a formatearlo como si fuese un dispositivo normal.

sudo mkfs.vfat /dev/loop0

Ya tenemos nuestro dispositivo formateado, ahora pasemos a montarlo en el sistema de archivos de Ubuntu. En primer lugar creamos el directorio donde lo vamos a montar:

sudo mkdir /media/floppy

Una vez tenemos creado el directorio, montamos el dispositivo en /media/floppy

sudo mount -t vfat /dev/loop0 /media/floppy/

Al ejecutar la orden anterior, nos debe aparecer el dispositivo en el escritorio. Ya podemos copiar lo que queramos dentro de él. Lo que copiemos a él, ira dentro del archivo /home/usuario/floppy.img, que será el que cargemos en VirtualBox para la unidad de disquetes. Ahora vamos a crear el dispositvo de disquetes en VirtualBox.

Hacemos clic en la máquina virtual en la que vayamos a usar la unidad A, nos vamos a Configuración.

Una vez en la Configuración, hacemos clic en Almacenamiento, después hacemos clic en el icono marcado en la imagen y elegimos Agregar controlador de disquete.

Ahora hacemos clic en el disquete, como en la imagen siguiente:

Y en la ventana que se nos abre, elegimos Seleccionar disco, para buscar nuestro archivo floppy.img e indicárselo a VirtualBox.

Ahora nos aseguramos que todo está correcto y hacemos clic en Aceptar.

Hecho esto, ya sólo queda arrancar la máquina y comprobar que el disco floppy funciona correctamente.

En mi caso había copiado dos ficheros .zip al interior del dispositivo floppy, que como se puede apreciar en la imagen, aparecen dentro de la unidad A.





Ubuntu 10.04 Lucid Lynx LTS

30 04 2010

Desde hoy (ayer) se encuentra disponible Ubuntu 10.04 Lucid Lynx LTS. Somos muchos los que estábamos esperando su aparición para actualizar o instalar. Ahora mismo estoy instalándolo en mi equipo, la instalación terminará en breve.

Así de primeras, lo que más se nota es el cambio en el aspecto gráfico, está mucho más conseguido. Arranca de forma más ligera que sus antecesores y es más seguro e intuitivo. Ubuntu 10.04 Lucid Lynx trae soporte para iPod y iPhone entre otras novedades. Cabe destacar que en esta versión no se incluye Gimp, anque siempre podemos instalarlo nosotros.

Otro cambio interesante, es la tipografía y el logo. Han sido modificadas respecto a anteriores versiones, aunque esto son cambios que no influyen en el sistema, pero era curioso de comentar. Un cambio que de primeras no me ha gustado, y creo que a mucha gente le pasará como a mí, es el cambio de ubicación de los botones minimizar, maximizar y cerrar, ahora están colocados a la izquierda de cualquier ventana. Espero que esto se pueda modificar.

Mi instalación se encuentra ahora mismo en el 90%, le queda muy poco. :-)

Si deseáis obtener la versión 10.04 de Ubuntu, la podéis descargar de aquí:

http://www.ubuntu.com/GetUbuntu/download

¡Un saludo a todos!





Squid en modo transparente

11 03 2010

Hola a todos, fui un pelín mentiroso cuando dije que la práctica de Dansguardian iba a ser la última del curso. Esta sí que va a ser la última. Hoy vamos a ver cómo configurar Squid en modo transparente.

¿Modo transparente?

Normalmente, los proxys navegan a través del puerto 3128, y hay que configurar los clientes para que puedan acceder a internet a través del proxy. En cambio, en un proxy transparente, no es necesario configurar ningún cliente, todo se configura una única vez en la máquina en la que está instalado el proxy y los clientes no saben que navegan a través de este. Se redirige el tráfico del puerto 80 al 3128.

Empezando

Supongamos que tenemos una red local con tres equipos que deseamos conectar a internet, pero antes queremos que pasen por un proxy, ya sea para filtrar contenidos o para almacenar información en la caché. Para ello necesitamos una máquina con dos interfaces de red, una para nuestra red local y otra que nos conectará a Internet. Sabiendo esto, vamos a comenzar.

Configurando las interfaces de red

En primer lugar vamos a mostrar información referente a nuestras interfaces de red. En una consola tecleamos:

ifconfig

Como vemos en la imagen, poseemos dos interfaces de red, etc0 y eht1eth0 será la interfaz que nos conectará con nuestra red local y eth1 nos conectará con el ruter que a su vez no conectará a Internet. Necesitamos configurar eth0 de forma estática, para ello abrimos un terminal y tecleamos:

sudo gedit  /etc/network/interfaces

Y dejamos el archivo de la siguiente forma:

auto lo
     iface lo inet loopback

auto eth1
     iface eth1 inet dhcp

auto eth0
     iface eth0 inet static
     address 10.0.0.1
     netmask 255.0.0.0
     gateway 10.0.0.1

Bien, ya tenemos configurada eth1 como dinámica y eth0 como estática. Ahora reiniciamos el servicio de red, desde la terminal:

sudo /etc/init.d/networking restart

Instalando el servidor DHCP

Vamos ahora a instalar el servidor DHCP en nuestra máquina, desde un terminal escribimos:

sudo aptitude install dhcp3-server

Ya tenemos instalado nuestro servidor DHCP, ahora vamos a configurarlo, así que tenemos tecleamos lo siguiente en una consola:

sudo gedit /etc/dhcp3/dhcpd.conf

Una vez con el archivo abirto, borramos el contenido y lo dejamos aproximadamente así:

option domain-name "midominio.com";
option domain-name-servers 10.0.0.1;
option subnet-mask 255.0.0.0;
option netbios-name-servers 10.0.0.1;
option routers 10.0.0.1;
default-lease-time 600;
max-lease-time 7200;
subnet 10.0.0.0 netmask 255.0.0.0 {
     range 10.0.0.2 10.0.0.100;
     option domain-name-servers 10.0.0.1;
     option subnet-mask 255.0.0.0;
     option netbios-name-servers 10.0.0.1;
     option routers 10.0.0.1;
     host PC1 {
          option host-name "PC1";
          hardware ethernet 00:1E:24:6F:2B:5C;
          fixed-address 10.0.0.11;
     }
     host PC2 {
          option host-name "PC2";
          hardware ethernet 00:1E:24:1C:53:DF;
          fixed-address 10.0.0.12;
     }
     host PC3 {
          option host-name "PC3";
          hardware ethernet 00:1E:24:CC:1A:E2;
          fixed-address 10.0.0.13;
     }
}

Explicación del contenido: En el fichero anterior, debemos incluir un nombre de dominio si pertenecemos a uno, la dirección de la máquina donde está el servidor con su máscara y diversas opciones más como NetBios y los tiempos de asignación de direcciones.

En subnet, vamos a configurar cómo se asignarán las direcciones para esa red (que está controlada por eth0), aparte de indicarle la misma información que antes, le debemos de especificar el rango con el que queremos que trabaje. En mi caso he especificado del 1 al 100.

En host, definimos la dirección que se asignará a cada máquina de nuestra red, se especifica el nombre real, su dirección MAC y la dirección IP que se asociará a dicha MAC. Así hasta que completemos todos los equipos de los que dispondrá la red.

Ahora reiniciamos el servicio de DHCP con el siguiente comando:

sudo /etc/init.d/dhcp3-server restart

Creando las iptables

Vamos ahora a crear las llamadas iptables. Las iptables son un complemento del framework Netfilter, usadas para el filtro de tráfico en una red. Nosotros vamos a usarlas para redirigir el tráfico del puerto 80 al 3128, entre otras cosas.

Para crear nuestras iptables, debemos crear un archivo con ellas, para crear el archivo tecleamos el siguiente comando en un terminal:

sudo gedit /etc/init.d/proxy-rules.sh

Al nuestro archivo le añadimos lo siguiente:

echo "Aplicando las reglas para el direccionamiento, espere..."
iptables -t nat -F
iptables -t nat -X
iptables -t nat -Z
iptables -F
iptables -X
iptables -Z

echo 1 > /proc/sys/net/ipv4/ip_forward

iptables -t nat -A PREROUTING -s 10.0.0.0/8 -p tcp --dport 80 -j REDIRECT --to-port 3128
iptables -t nat -A POSTROUTING -o eth1 -s 10.0.0.0/8 -j MASQUERADE

Nota: Yo he elegido el nombre de proxy-rules para el archivo, podéis elegir el que queráis, pero obviamente que sea de carácter descriptivo.

Explicación de las iptables: Las primeras reglas iptables eliminan cualquier iptable que se encuentre en ejecución en ese momento. La primera cadena de iptables, direcciona el tráfico de nuestra red desde el puerto 80 al puerto 3128. La segunda cadena de iptables, se encarga de enmascarar nuestra red para que pueda salir a Internet mediante la interfaz eth1.

Descargando, compilando y configurando Squid

Vamos ahora a descargar Squid desde su web oficial para después compilarlo. Las versiones disponibles las podemos ver en http://www.squid-cache.org/Versions/, sería ideal trabajar con la última versión estable de Squid, en este caso, la última versión estable es la 3.0. Antes de descargar Squid, nos vamos al directorio /usr/local/src, para ello tecleamos en la consola:

cd /usr/local/src

Una vez allí, volvemos a teclear en el terminal lo siguiente:

sudo wget http://www.squid-cache.org/Versions/v3/3.0/squid-3.0.STABLE24.tar.gz

Eso descargará la última versión de Squid al directorio en el que nos encontramos. Cuando ya tenemos descargado el paquete de Squid, tenemos que descomprimirlo, por lo que tecleamos en un terminal:

sudo tar xvzf squid-3.0.STABLE24.tar.gz

Muy bien, ya tenemos los archivos de Squid listos para compilar, para esto necesitaremos tener instalado un compilador de C/C++ en nuestra máquina, por lo que en un terminal tecleamos:

sudo aptitude install build-essential

Una vez instalado el compilador, y estando dentro de /usr/local/src, tecleamos en un terminal:

cd squid-3.0.STABLE24

Bien, ya estamos dentro de dicho directorio, ahora de nuevo en un terminal tecleamos lo siqguiente:

sudo ./configure --prefix=/usr/local/squid --enable-linux-netfilter  --enable-follow-x-forwarded-for --enable-x-accelerator-vary

Cuando el proceso acabe (es posible que esté unos minutos) tecleamos esto ahora:

sudo make

Este proceso también tardará unos minutos posiblemente. Al finalizar este proceso, escibimos lo siguiente en la consola:

sudo make install

Ya tenemos Squid instalado en /usr/local/squid. Vamos ahora a crear el usuario y grupo squid. En un terminal tecleamos:

sudo useradd squid

Y después:

sudo groupadd squid

Nota: Es posible que al añadir el grupo nos diga que ya existe un grupo llamado squid, no pasa nada, nos saltamos este paso y sin problemas.

Ahora vamos a hacer al usuario squid dueño de los directorios de Squid. Para ello nos vamos a un terminal y tecleamos:

cd /usr/local/squid

Una vez estamos en este directorio, tecleamos lo siguiente:

sudo chown -R squid *

Y depués:

chgrp -R squid *

Con esto, el usuario squid ya es dueño de los directorios que maneja Squid. Vamos ahora a configurar nuestro Squid para permitir la conexión a nuestra red, nos vamos a un terminal y tecleamos:

sudo gedit /usr/local/squid/etc/squid.conf

Una vez tenemos el archivo, con Ctrl + F, buscamos la línea http_port, la borramos y la añadimos de esta forma:

http_port 10.0.0.1:3128 transparent

Ahora buscamos la línea cache_dir, y la dejamos de la siguiente manera:

cache_dir ufs /usr/local/squid/var/cache 1024 16 256

Volvemos a realizar otra búsqueda, esta vez de cache_effective_user, aquí añadimos dos líneas:

cache_effective_user squid
cache_effective_group squid

Ahora vamos a añadir una ACL, nos vamos a la zona de las ACL, que está por la línea 600 más o menos, y allí añadimos:

acl nuestra_red src 10.0.0.0/24

Vamos ahora a añadir una regla http_access, nos vamos aproximadamente a la línea 645, y añadimos:

http_access allow nuestra_red

Ya queda poco por hacer, ahora vamos a crear los directorios para la caché de Squid, así que desde un terminal tecleamos:

sudo /usr/local/squid/sbin/squid -z

Ahora toca configurar rc.local para que arranque Squid y proxy-rules.sh al iniciar Ubuntu, esto es fácil, desde el terminal tecleamos:

sudo gedit /etc/rc.local

Una vez con el fichero abierto, añadimos lo siguiente:

sh /etc/init.d/proxy-rules.sh
cd /usr/local/squid/sbin/
./squid

Magnífico, ya sólo queda reiniciar nuestra máquina y comprobar que hay dos procesos de Squid ejecutándose en nuestro equipo. Una vez con la máquina reiniciada, volvemos a abrir un terminal y tecleamos:

sudo ps ax | grep squid

Si nos apareden los dos procesos de Squid significa que todo está correcto, ya tenemos nuestro proxy caché transparente instalado y configurado.





Instalación y configuración de Dansguardian

23 02 2010

Hola a todos, en este tutorial vamos a instalar y configurar Dansguardian bajo Ubuntu. Dansguardian es un filtro de contenido que junto con un servidor proxy, Squid por ejemplo, controla el acceso a diversos contenidos de internet.

Instalación

En primer lugar vamos a instalar Dansguardian en nuestra máquina, desde un terminal tecleamos:

sudo aptitude install dansguardian

Ya tenemos Dansguardian instalado en nuestra máquina.

Configuración

Una vez instalado, pasamos a configurarlo. Para ello abrimos el fichero /etc/dansguardian/dansguardian.conf.

sudo gedit /etc/dansguardian/dansguardian.conf

En primer lugar vamos a ponerlo en castellano, buscamos la directiva language, y la dejamos así:

language = 'spanish'

Ahora vamos a comentar una línea del archivo, en la que indicamos a Dansguardian que ya está configurado por nosotros, el hecho de no comentar esta línea supone un modesto recordatorio cuando reiniciamos Dansguardian.

La línea en concreto es la siguiente:

# UNCONFIGURED - Please remove this line after configuration

Debemos dejarla como en la imagen, con # delante. Eso hará que la línea esté comentada, y por lo tanto omitida para Dansguardian.

Otras directivas a tener en cuenta

Hay otras directivas importantes, que no voy a configurar en este tutorial pero sí voy a comentar porque hay que tenerlas muy en cuenta a la hora de configurar Dansguardian. Dichas directivas son:

  • filterport = 8080: Esta directiva define el puerto que usará Dansguardian para filtrar.
  • proxyip = 127.0.0.1: Esta directiva define la dirección IP de nuestro proxy.
  • proxyport = 3128: Esta directiva define el puerto que usa nuestro proxy.

Restringiendo contenidos

Ahora vamos a restringir el contenido de una página web, de un formato y de un límite de palabras prohibidas. Esto será lo que vamos a prohibir:

  • www.minijuegos.com
  • formato *.exe
  • porno

Pasemos a prohibir la página web, en primer lugar abrimos el fichero /etc/dansguardian/lists/bannedsitelist, desde un terminal escribimos:

sudo gedit /etc/dansguardian/lists/bannedsitelist

Cuando tenemos el archivo abierto, nos vamos a la zona #List other sites to block: y añadimos la página web que queremos bloquear, en nuestro caso, www.minijuegos.com.

Nota: Por defecto viene ya prohibido el acceso a badboys.com, por algo es. Entrad y veréis que chulo. :-)

Ahora vamos a prohibir la descarga de archivos .exe. Las extensiones prohibidas están en el fichero /etc/dansguardian/lists/bannedextensionlist, para editarlo nos vamos a un terminal y tecleamos:

sudo gedit /etc/dansguardian/lists/bannedextensionlist

En ese archivo tenemos todas las extensiones para los archivos que Dansguardian no permite descargar. Por defecto vienen la gran mayoría prohibidos, lo que vamos a hacer es comentarlos todos menos el que queremos prohibir, la extensión .exe.

Lo dejaremos como aparece en la imagen:

Ya tenemos prohibidas las descargas de archivos .exe, vamos ahora a prohibir la entrada a páginas que contengan la expresión “porno“.

Desde un terminal abrimos el archivo /etc/dansguardian/lists/bannedphraselist

sudo gedit /etc/dansguardian/lists/bannedphraselist

Ahora nos vamos al final del fichero, y añadimos la palabra que queremos prohibir, guardamos los cambios y listo.

Ahora toca reiniciar Dansguardian para que los cambios surtan efecto, desde un terminal tecleamos:

sudo /etc/init.d/dansguardian restart

Verificando el funcionamiento

Vamos ahora a comprobar que todos las modificaciones que hemos realizado son correctas, para ello necesitamos abrir el Mozilla Firefox, y teclear la palabra porno, entrar en minijuegos.com y descargar un archivo .exe. Vamos a ello.

Buscando porno en Google (Que mal suena ¿verdad?)

Esto ocurriría si buscásemos porno en Google, nos saltaría Dansguardian mostrando el siguiente error:

Entrando en minijuegos.com

Ahora, al entrar en minijuegos.com ocurriría lo siguiente:

Descargando un archivo .exe

Al intentar descargar un archivo .exe, Dansguardian nos mostraría el siguiente error.

Nota: Yo he modificado el template de Dansguardian, si queréis modificarlo, se encuentra en /etc/dansguardian/languages/spanish/template.html. Es sólo HTML.

Ficheros más importantes

Vamos a comentar ahora los ficheros más importantes que usa Dansguardian, tanto en su versión permisiva como en su versión restrictiva. Estos son los principales:

  • bannedextensionlist: Extensiones de archivo prohibidas.
  • bannedphraselist: Frases o palabras prohibidas.
  • exceptionphraselist: Frases o palabras que no se prohibirán.
  • exceptionsitelist: Dominions que no se prohibirán.
  • bannedregexurllist: Expresiones que se prohibirán en las URL.
  • exceptionurllist: Parte de un dominio que no se prohibirá.
  • exceptioniplist: Direcciones IP que no serán filtradas.
  • bannedmimetypelist: Contenidos que se prohibirán.
  • weightedphraselist: Lista de palabras prohibidas con su correspondiente peso. <palabra><peso>

Pues aquí termina la última práctica del curso. :-D








Seguir

Get every new post delivered to your Inbox.