jueves, 29 de mayo de 2008

KDE 4.1 en su primera beta ya está en la calle!!

Pues eso, parece que el equipo de KDE se está poniendo las pilas, en su nuevo escritorio y la verdad es que ya era hora, lo llevo usando desde su ultime release candidate, y la verdad, es que fallos, no es que de muchos, pero si le faltan opciones por todos lados. Aquí os dejo el calendario que he encontrado en Softpedia

· March 31st, 2008: Soft Feature Freeze
· April 22nd, 2008: Hard Feature Freeze
· April 22nd, 2008: Tag KDE 4.1 Alpha 1
· April 29th, 2008: Release KDE 4.1 Alpha 1
· May 20th, 2008: Message Freeze.
· May 20th, 2008: Tag KDE 4.1 Beta 1
· May 27th, 2008: Release KDE 4.1 Beta 1
· June 17th, 2008: Tag KDE 4.1 Beta 2
· June 24th, 2008: Release KDE 4.1 Beta 2
· July 8th, 2008: Artwork Freeze
· July 8th, 2008: Tag KDE 4.1 RC 1
· July 15th, 2008: Release KDE 4.1 RC 1
· July 22nd, 2008: Tag KDE 4.1.0
· July 29th, 2008: Release KDE 4.1



Así que por lo pronto, esperar a que salga mínimo alguna RC ya que si no, tendremos problemas por todos lados.

Por otra parte, he encontrado una página con los cambios a realizar para el nuevo KDE4.1 allí se especifica si las características están ya implementadas, o stá en progreso.

lunes, 26 de mayo de 2008

Squid con el uso combinado de ACL

Introducción

Squid es un popular programa de software libre que implementa un servidor proxy y un demonio para caché de páginas web, publicado bajo licencia GPL. Tiene una amplia variedad de utilidades, desde acelerar un Servidor Web, guardando en caché peticiones repetidas a DNS y otras búsquedas para un grupo de gente que comparte recursos de la red, hasta caché de web, además de añadir seguridad filtrando el tráfico. Está especialmente diseñado para ejecutarse bajo entornos tipo Unix.

Ha sido desarrollado durante muchos años y se le considera muy completo y robusto. Aunque orientado a principalmente a HTTP y FTP es compatible con otros protocolos como Internet Gopher. Implementa varias modalidades de cifrado como TLS, SSL y HTTPS.

ACL comúnmente llamado Lista de Control de Acceso (del inglés Access Control List), se refiere a una lista de reglas que detallan puertos de servicio o nombres de dominios (de redes) que están disponibles en una terminal u otro dispositivo de capa de red, cada uno de ellos con una lista de terminales y/o redes que tienen permiso para usar el servicio. Tanto servidores individuales como routers pueden tener ACLs de redes. Las listas de acceso de control pueden configurarse generalmente para controlar tráfico entrante y saliente y en este contexto son similares a un cortafuegos.


Instalación desde consola

Como de costumbre, para instalar los paquetes necesarios abrimos un terminal y tecleamos:

sudo apt-get install squid

Y a esperar a que finalice la instalación.


Configurando nuestro servidor proxy

El archivo de configuración de squid, lo encontramos en /etc/squid/squid.conf

Nota: Antes de editar el archivo de configuración, hacemos una copia de seguridad del archivo con el siguiente comando:

sudo cp /etc/squid/squid.conf /etc/squid/squid.conf.original

Para editar el archivo una vez creado la copia escribimos sudo kate /etc/squid/squid.conf

Tras esta aclaración, podíamos comenzar por ejemplo:
  • configurar 250 MB de nuestro disco duro, para la memoria caché que usará squid;
Una vez abierto el archivo, debemos Pulsar el botón (1), nos aparecerá un pequeña ventana de búsqueda donde buscaremos este código (2) Y luego añadimos tal como se aprecia en la imagen el texto (3)


  • Creación de ACL para permitir acceso a los PC's de nuestra red
La creación de nuevos elementos en nuestra ACL tiene 2 pasos importantes.

1º Declarar las ACL
2º Permitirle el acceso o denegarselo

1º Nos dirigimos a la línea 2.490 y encontraremos algo como la siguiente imagen, la linea de rojo es la que debemos introducir para crear una regla en nuestra lista.



* acl: especifica la creación de un nuevo elemento en la lista.
* mired: es el nombre que le he ponemos al nuevo elemento de la lista.
* src: especifica el tipo de acl (dirección origen de una conexión en formato IP/máscara).
* 192.168.1.0/255.255.255.0: dirección de nuestra red (1ª dirección).
* 192.168.1.70/255.255.255.255: dirección de nuestro equipo (2ª dirección).

2º Nos dirigimos más o menos a la línea 2.625 y buscamos # INSERT YOUR OWN RULES(S) HERE... Justo debajo, debemos incluir nuestras reglas, en este punto es donde realmente damos acceso o lo denegamos según nos convenga.




Incluimos http_access seguido de allow o deny, permitir o denegar respectivamente, seguido del nombre de la acl.
  • Restricciones de uso dependiendo de la hora, o día de la semana
1º Agregamos la línea siguiente con la información necesaria

acl tiempoLibre time MTWHF 00:01-17:00

* acl: especifica la creación de un nuevo elemento en la lista.
* tiempoLibre: es el nombre que le he ponemos al nuevo elemento de la lista.
* time: especifica el tipo de acl (permite especificar una franja horaria concreta dentro de una semana).
* MTWHF: Abreviaturas de los días de la semana donde:
S - Sunday (domingo)

M - Monday (lunes)

T - Tuesday (martes)

W - Wednesday (miércoles)

H - Thursday (jueves)

F - Friday (viernes)

A - Saturday (sábado)


* 8:20-15:30 : 8:20 es la hora de comienzo, y las 15:30 es la hora de finalización. La hora de comienzo debe ser menor que la hora de finalización.

2º Debajo del anterior http_acces introducimos lo siguiente para bloquear el acceso en ese intervalo de tiempo.

http_access deny tiempoTrabajo

  • Crear reglas ACL para denegar paginas web
1º Agregar acl pagBlokeadas dstdomain www.pagina1.es www.pagina2.com www.pagina3.net

Y 2º http access deny pagBlokeadas

Reinicio del servidor proxy

Como bien sabemos, para que los cambios tengan efecto, debemos reiniciar el servidor de la siguiente forma:

sudo /etc/init.d/squid restart

o en su defecto:

sudo /etc/init.d/squid stop
sudo /etc/init.d/squid start

Configurar el navegador

Todo esto no tiene sentido, si no configuramos nuestro navegador web para que acceda a través de squid, para ello, si usamos el Mozilla Firefox, nos dirigimos a Editar -> Preferencias y una vez dentro..


Pulsamos la pestaña de Avanzado (1), luego en Conexión (2) , y nuevamente sobre Preferencias (3). Se nos abrirá otra ventana, en la cual debemos seleccionar...

Configuración manual del proxy, y luego introducir la dirección IP de dicho servidor, y el puerto a usar, y como squid usa por defecto el puerto 3128 será ese el que pongamos, como se muestra en la siguiente imagen.


Ya solo quedaría aceptar todos los cambios para que nuestro navegador pase por el squid

Probando desde Firefox que todo funciona como es debido

Antes de hacer la comprobación, me gustaría mostrar 1 capturasdel archivo de configuración de squid dividido horizontalmente, la primera la parte superior del archivo contiene la lista de control de acceso, y la parte inferior información respecto a las solicitudes aceptadas y bloqueadas.

(Aún sin terminar)

Bibliografía

http://es.wikipedia.org/wiki/Squid

http://es.wikipedia.org/wiki/ACL

http://www.linuxparatodos.net/portal/staticpages/index.php?page=19-0-como-squid-general

miércoles, 21 de mayo de 2008

UFW, el cortafuegos para iptables

Descripción de Uncomplicated Firewall

UFW (Uncomplicated Firewall) es la herramienta de configuración de firewall por defecto vía consola en Ubuntu. Desarrollado para facilitar la configuración del firewall Iptables, ufw proporciona una manera fácil de crear un firewall basado en host IPv4 o IPv6.

Instalación desde consola

Para la instalación, debemos teclear por consola lo siguiente:

sudo apt-get install ufw

Nota: En la versión actual de Ubuntu viene instalado por defecto, pero está deshabilitado. Ufw no pretende proporcionar una completa funcionalidad de firewall vía la interfaz de comandos, pero en su lugar proporciona una modo fácil de añadir y eliminar reglas simples. En la actualidad se utiliza principalmente para cortafuegos basados en host.

Configuración del firewall

En primer lugar, debemos ejecutar el cortafuegos con el siguiente comando

sudo ufw enable

Introducimos la contraseña, y en poco tiempo, nos debe aparecer el mensaje siguiente


Si por ejemplo queremos aceptar todo el tráfico, debemos escribir por consola:

sudo ufw default allow

Si por el contrario lo que queremos es bloquear todo tipo de conexiones, teclearíamos el siguiente comando:

sudo ufw default deny

Si lo que queremos es por ejemplo abrir los puertos para nuestra querida burrita (aMule), en primer lugar debemos determinar los puertos que usa, para ello, nos vamos al aMule, y en Opciones -> Conexión, buscamos la opción que dice: Puerto TCP estandar (1234) y Puerto UDP estantar (4321), ahora que sabemos los puertos que usa, nos dirigimos a la consola, para abrir dichos puertos con los siguientes comandos:

sudo ufw allow 1234/tcp

sudo ufw allow 4321/udp

A la hora de cerrar puertos, sería el mismo comando anterior, pero en vez de ser allow, deberá ser deny, quedando de la siguiente manera:

sudo ufw deny 1234/tcp

sudo ufw deny 4321/udp


Nota: el protocolo a usar (ya sea tcp o udp) se deben escribir en minúsculas, sino daría error de puerto. Cambiar los puertos del ejemplo por los que tengais en la configuración de vuestro aMule.

Para hacer que nuestro equipo no responda a los ping que se le envian, debemos modificar el archivo "/etc/ufw/before.rules" con nuestro editor de texto favorito, en mi caso usaré kate, y como siempre, antes de editar cualquier archivo, hacemos una copia de seguridad por si la liamos; así que tecleamos lo siguiente para crear la copia.

cp /etc/ufw/before.rules /etc/ufw/before.rules.original

Ahora si, ya podemos editarlo sin miedo a estropear nada con el siguiente comando:

sudo kate /etc/ufw/before.rules

Y buscamos la linea siguiente:

-A ufw-before-input -p icmp --icmp-type echo-request -j ACCEPT

Y solo debemos comentarla, poniendole un # delante de ella, quedando de la siguiente forma:



Reinicio del cortafuegos para que los cambios realizados tengan efecto.

sudo ufw disable

sudo ufw enable

Por último, para ver el estado actual de bloqueo o no bloqueo de puertos, tecleamos:

sudo ufw status

Y nos mostraría la siguiente imagen:




Bibliografía

http://doc.ubuntu-es.org/UFW

http://gndx.org/?tag=gndx

http://ckernel.blogspot.com/

lunes, 12 de mayo de 2008

Squirrelmail - Servidor de correo electrónico de software libre

Descripción de SquirrelMail

SquirrelMail es un programa webmail que te permite revisar el correo que tengas en un servidor con imap mediante cualquier navegador. Esto está muy bien para no tener que añadir más reglas a un firewall, para implantarlo en una oficina o pyme (como en mi caso) o simplemente porque no te gusta ni el mail, mutt, etc. para el correo y no quieres instalar ningún programa de gestión de correo.

Instalación desde consola

Para poder crear nuestro servidor de correo electrónico, en principio debemos instalar los paquetes siguientes:

  • SquirrelMail: Servidor de correo.
  • Dovecot-imapd: Servidor IMAP y POP3 para el servidor de correo.
  • Postfix: Es un agente de transporte de correo.

Nota: Los paquetes anteriores son todos de software libre.

Para la instalación, solo debemos teclear por consola el siguiente comando:

sudo apt-get install squirrelmail dovecot-imapd postfix

Y aceptar todas las dependencias necesarias.

Configuración

Una vez todo instalado, procedemos a configurar el servidor, para cuando entremos a la página http://localhost/correo, entre a nuestro nuevo servidor.

Para ello, desde la consola, debemos teclear 2 comandos:

El primer comando, lo que hace es llevarnos a la carpeta /var/www, y eso se consigue de la siguiente forma:

cd /var/www/


Una vez dentro de esa carpeta, creamos un enlace simbólico (lo que viene a ser un acceso directo de los sistemas Windows) con el siguiente comando:

sudo ln -s /usr/share/squirrelmail/ correo

El comando ln sirve para establecer enlaces entre archivos. Un enlace puede ser rígido o simbólico.

La opción "-s" es la que nos indica que el enlace es simbólico, y no rígido. "/usr/share/squirrelmail/ " es donde cogemos el enlace, y "correo" es el nombre que le daremos al nuevo enlace.

Accediendo al servidor

Una vez explicado el comando y habiéndose ejecutado en consola, ya podemos dirigirnos a nuestro navegador web y teclear la dirección http://localhost/correo y veremos la página de identificación de SquirrelMail:


Envío de correo

Tecleamos usuario y contraseña de algún usuario que tengamos en el sistema y entramos a su cuenta de correo. Una vez dentro, pulsar "Compose" señalado en la siguiente imagen, para enviar un correo.




En el campo 1 (To) tecleamos otro usuario de nuestro equipo (por ejemplo: ernes). Opcionalmente, podemos escribir como un titulo al mensaje en el campo "Subjet", aunque no es obligatorio. En el campo 2: Escribimos el mensaje a enviar y para terminar, pulsaremos el botón 3 "Send". ¡Enhorabuena, acabas de enviar un correo electrónico!



Comprobación del envío del mensaje

Ya solo queda comprobar que realmente se ha enviado el correo, pulsamos en la parte superior derecha de la ventana en "Sign out" para cerrar la sesión con el servidor, y accederemos nuevamente con la cuenta a la que hemos enviado el mensaje.

Efectivamente, comprobamos que el correo se ha enviado en la imagen de abajo (en INBOX aparece 1 mensaje).



Revisando los archivos de log

Para tener información de todo lo que hace y no hace nuestro servidor, es importante revisar los archivos de log, estos se encuentran en la ruta "/var/log" y son cuatro archivos:

  • mail.err
  • mail.info
  • mail.log
  • mail.warn
y podemos visualizarlo desde consola con el comando:

less /var/log/mail.xxx

less es un comando que sirve para mostrar texto en pantalla; xxx lo cambiaremos por .err, .info, .log o .warn dependiendo del archivo que queramos revisar.

Bibliografía

http://www.bdat.net/documentos/cursos/ar01s15.html

http://es.wikipedia.org/wiki/Postfix

http://es.wikipedia.org/wiki/SquirrelMail

http://en.wikipedia.org/wiki/Dovecot_%28software%29

http://pedroreina.net/recetas/squirrelmail.html

http://www.bdat.net/documentos/cursos/ar01s14.html

lunes, 5 de mayo de 2008

Uso de Nessus


Descripción

Nessus es uno de los scanners de vulnerabilidades más utilizados en el mundo, ya que no tiene costo por instalación y uso, y a la vez uno de los más respetados debido a la gran cantidad de información que es capaz de obtener de los sistemas que audita. Originalmente fue desarrollado para funcionar únicamente sobre plataformas Unix, pero con el tiempo se abrió paso a la posibilidad de funcionar con la misma eficacia sobre sistemas Windows.

Nessus es un software que trabaja en modo cliente-servidor. El servidor es quien se encarga de realizar todas las auditorías y el cliente es la interfaz por donde se le dan las indicaciones correspondientes, como por ejemplo IP o dominio de la máquina a escanear, tipo de auditoría, modo de informe, etc.

Instalación por consola

Como de costumbre: sudo apt-get install nessus nessusd nessus-plugins

Configuración de usuarios

La configuración por defecto del archivo de configuración del servidor es completa y válida, entre otras cosas escanea desde el puerto 0 al 15000. Pero si queremos modificar alguna opción, buscaremos el archivo /etc/nessus/nessusd.conf (en nuetro caso no lo modificaremos).

Ahora, para poder usar el programa, debemos crear un usuario y contraseña, para ello, desde consola, tecleamos:
sudo nessus-adduser

Nos aparecerá la información de la siguiente imagen, y en primer lugar, debemos escribir el usuario a usar, luego dos veces la contraseña para verificar que es la correcta, y por último, debemos pulsar sobre Ctrl + D para aceptar el contrato.


Una vez realizado el paso anterior, ya estaría todo listo para poder usar la interfaz gráfica para escanear vulnerabilidades de los sistemas de nuestra red.

Utilización de Nessus

Dependiendo del sistema instalado, encontraremos el "front-end" de la aplicación en un sitio u otro, pero normalmente se encuentra junto a las aplicaciones de internet.

Una vez abierta, debemos teclear el usuario y la contraseña, y pulsar sobre el botón de "Log in" como se muestra en la imagen de abajo.



Ahora, nos vamos a la pestaña de Target y en el cuadro de texto de target(s) debemos teclear la dirección IP de la máquina a escanear, o bien su nombre como en mi caso "PCcito".


Y pulsar "Start the scan" para que comience su tarea.


Cuando termine, nos aparece la siguiente imagen, mostrándonos información de los puertos abiertos, ya sean típicos, o algo peligroso dejarlos abiertos.


Y si pulsamos sobre algún puerto detectado por el programa, nos muestra información referente sobre dicho puerto

Bibliografía

http://www.nessus.org/nessus/

http://bulma.net/body.phtml?nIdNoticia=2193

http://tru3n0.com/index.php/2007/09/05/instalar-nessus-en-debian-etch/