You are on page 1of 68

INCLUYE CD-ROM

AO XII. N 106

TERCERA POCA P.V.P. 7 e

REVISTAS PROFESIONALES S.L.

A P L I C AC I O N E S
Cliparts desde Linux Haz tu Currculum con Openoffice Writer

I N V E S T I G AC I N
Anlisis Forense

REDES
Criptografa con OpenSSL Moonlight: Silverlight en Linux

T E C N O LO G I A Y NEGOCIO
Gestin de Requisitos SW (II) Trabajo Colaborativo

Noticias, CD-Rom, Mundo Linux 104 en pdf

Suscripcin a Mundo Linux y Slo Programadores


SUSCRIPCIN PARA ESPAA FORMAS DE PAGO PARA ESPAA Suscripcin anual a Mundo Linux y Solo Programadores Giro Postal a Revistas Profesionales, S.L. con un 35% descuento sobre precio base de las 2 revistas: Transferencia al Banco Popular: 74,10 euros (gastos de envo incluidos) c.c: 0075/1040/43/0600047439 Taln Bancario a nombre de Revistas Profesionales Domiciliacin Bancaria SUSCRIPCIN PARA EXTRANJERO Tarjeta de crdito + fecha de caducidad Suscripcin anual a Mundo Linux y Solo Programadores con un 35% descuento sobre precio base de las 2 revistas: UNICA FORMA DE PAGO EXTRANJERO: - Europa: 110,10 euros (gastos de envo incluidos) Tarjeta de crdito + fecha de caducidad - Resto de paises: 146,10 euros (gastos de envo incluidos)

Suscrbase desde nuestra web www.revistasprofesionales.com Ms informacin en el telfono 91 304 87 64, en el fax 91 327 13 07 y en rpsuscripciones@revistasprofesionales.com

E DITORIAL
Nmero 106 Edita: REVISTAS PROFESIONALES S.L. mundolinux@revistasprofesionales.com C/ Valentn Beato 42, 3 Planta - 28037 Madrid www.revistasprofesionales.com Editor Agustn Buelta Coordinacin Tcnica Ricardo Alvarez Colaboradores Juan Martos Mesa, David Roldn, Alvaro Garca Herrera, M Angela Ruiz, Fernando Lantes, Gastn Hillar, Xavier Irua, Jos A. Bermejo Maquetacin y Tratamiento de Imagen Ral Clavijo Departamento de Publicidad Felipe Ribagorda ribagorda@revistasprofesionales.com Tel.: 91 304 87 64 Delegacin en Barcelona C/ Rocafort, 241/243, 5 1 Mariano Snchez mariano@revistasprofesionales.com Tel.: 93 322 12 38 Suscripciones 91 304 87 64 (de 9 a 14 h) Fax: 91 327 13 03 rpsuscripciones@revistasprofesionales.com Impresin L.M.S. Solucin Grfica ideasimpresion@telefonica.net DISTRIBUCIN EN ESPAA

Ya se acercan las fiestas navideas en las que una de las tradiciones radica en intercambiar regalos con los familiares y amigos. Nosotros no vamos a ser menos y entre los amigos de Mundo Linux suscritos a la revista ya sea en formato papel o digital, vamos a sortear el libro Redes Inalmbricas WiFi - Diseo, Instalacin y Configuracin escrito por uno de nuestros colaboradores ms activos. Este libro est dirigido a quienes quieran conocer las arquitecturas de las redes inalmbricas WiFi modernas, todos los dispositivos que las componen y sus diferentes configuraciones. Deseamos que sea de utilidad a los agraciados por el sorteo y a quienes, dado su inters, decidan adquirirlo en los distintos puntos de venta existentes. El resultado del sorteo lo daremos a conocer en el n 107 de Mundo Linux. Suerte!

S UMARIO
MUNDO LINUX
Noticias 4 CD-Rom 66

COEDIS S.L. C/ Alcorcn n 9 28850 Torrejn de Ardoz (Madrid) Telfono 91 676 96 62 DISTRIBUCIN EN MEXICO DIMSA - C/ Mariano Escobedo, 218 Col. Anhuac. 11320 Mxico, D.F. DISTRIBUCIN EN ARGENTINA Capital Federal: Distrimachisa Interior: York Agencysa - Tlf: (5411) 433 150 51
La revista Mundo Linux no tiene por qu estar de acuerdo con las opiniones escritas por sus colaboradores en los artculos firmados. Quedan expresamente prohibidas la reproduccin, la distribucin y la comunicacin pblica de todo o parte de los textos contenidos en esta publicacin, por cualquier medio y en cualquier soport, y para cualquier fin, incluyendo la realizacin de resmenes de prensa comerciales, sin la autorizacin expresa de esta Editorial, conforme a lo dispuesto en la vigente Ley de Propiedad Intelectual. La infraccin de la presente prohibicin ser perseguida penalmente. Cualquier forma de reproduccin, distribucin, comunicacin pblica o transformacin de esta obra solo puede ser realizada con la autorizacin de sus titulares, salvo excepcin prevista por la ley. Dirjase a CEDRO (Centro Espaol de Derechos Reprogrficos, www.cedro.org) si necesita fotocopiar o escanear algn fragmento de esta obra.

APLICACIONES
Cliparts desde Linux 40 Debian GNU/Linux 4.0 (Etch) 46 Haz tu Currculum con Openoffice Writer 62

TECNOLOGA Y NEGOCIO
Gestin de Requisitos SW (2) 12 Trabajo Colaborativo 22

INVESTIGACIN
Anlisis Forense 26

REDES
Criptografa con OpenSSL 32 Moonlight: Silverlight en Linux 54

Depsito legal: M-45188-2003 PRINTED IN SPAIN P.V.P. 7 euros

Noticias

Guillem Alsina - guillem@imatica.org

Bilingismo y Software Libre


Se celebraron en la Universidad de Jan las III Jornadas de Formacin del Profesorado Atencin a la diversidad en la enseanza plurilinge. El bilingismo-plurilingismo y el Software Libre suelen ir de la mano, como ocurre en la comunidad andaluza. En este evento educativo, organizado por los Centros del Profesorado y la Univesidad de esta provincia andaluza ha contado con la participacin de 174 profesores, estando el software libre presente con Inkscape, aplicacin de grficos vectoriales que se propuso en el taller La prctica AICLE en educacin Infantil impartido por nuestro colaborador Francisco Garca y en el que se exploraban las posibilidades que esta herramienta opensource ofrece a los maestros y maestras de Educacin Infantil a la hora de crear algunos elementos en formato papel como hojas de rbol o setas que se utilizaran en actividades de aula. Esto se complementara con el uso de los cliparts que se pueden descargar desde la direccin www.openclipart.org y cuya versin vectorial permite mucho juego al docente que quiere crear variaciones sobre un mismo elemento grfico. Recordemos que la comunidad andaluza fue pionera en el campo del desarrollo de distribuciones Linux con Guadalinex, que empez su andadura all por el ao 2003.

Debian publica la beta de sus primeros Live CD oficiales


El equipo de desarrollo del proyecto Live[3] de la famosa distribucin libre ha anunciado[2] la disponibilidad de las primeras imgenes oficiales de Live CDs con los entornos de escritorio Gnome, KDE y Xfce para las arquitecturas i386 y AMD64. Haca mucho que tanto usuarios como desarrolladores relacionados directa o indirectamente con el proyecto Debian deseaban ver en sus manos una versin Live de esta afamada y prestigiosa distribucin. An en fase beta ya estn disponibles[1] para descarga las primeras imgenes de CD de Debian 5.0 Lenny Live.

tiempo, pasando por Ubuntu (precisamente basada en Debian) que desde sus primeros balbuceos ha contado con una versin Live para probar la distro sin tener que instalar a disco duro. Esta ha sido, precisamente, una de sus ventajas, al permitir a los usuarios probar el sistema operativo sin verse obligados a tocar el sistema ya previamente instalado en sus mquinas, adems de representar el principio de la gran explosin pblica de los Live CD. Con estos soportes Live no solamente se incluye el software bsico del sistema, sino tambin un instalador que nos permite instalar el sistema completo a disco duro descargando los paquetes que le falten a travs de Internet o de una red local. De hecho, las imgenes que se ofrecen para descarga libre desde el FTP de Debian no son ms que el producto de aplicar una serie de scripts llamados live-helper que permiten construir una versin Live de un sistema instalado en disco. Las imgenes Live en formato ISO listas para descargar y grabar en CD estn disponibles para las principales arquitecturas hardware del mercado, las plataformas i386 y la AMD64, contando con tres sabores diferentes segn se incluya el escritorio Gnome, KDE o Xfce. Adems, tambin se cuenta con una imagen estndar (standard) sin entorno grfico, suficientemente pequea como para caber en un mini-CD de 8 cm. Aquellos usuarios con ms conocimientos que quieran arrancar su distribucin desde una llave USB en formato Live tambin encontrarn los ficheros necesarios gracias a este proyecto. Para prximas versiones, se pulirn los problemas que surjan con las tres imgenes disponibles actualmente, adems de aadir una imagen de DVD que contendr los tres escritorios principales que pueden encontrarse actualmente por separado. La segunda beta podra, adems, tardar muy poco en estar disponible: unas dos semanas si hacemos caso de lo que se dice en el anuncio oficial[2] de la presentacin de esta primera beta... y se cumple, claro. El equipo de desarrollo del proyecto Debian Live vena trabajando en ello desde haca unos dos aos y medio, sin haber publicado hasta la fecha su trabajo de forma oficial. [1] http://cdimage.debian.org/cdimage/lenny_live_beta1/ [2] http://lists.debian.org/debian-devel-announce/2008/08/msg00013.html [3] http://debian-live.alioth.debian.org/

Disponible primera beta de Fedora 10


Su presentacin coincide con el quinto aniversario del proyecto Fedora, y como principales novedades tenemos la introduccin de las ltimas versiones de los dos principales entornos grficos de escritorio (Gnome y KDE) y el kernel 2.6.27 con soporte mejorado para conexiones WiFi. Despus de una exitosa novena versin de esta distribucin GNU/Linux ya tenemos entre nosotros la primera versin previa de la que est llamada a ser la futura Fedora 10, el proyecto basado en la comunidad de Red Hat y que sirve a esta ltima como base para sus propias soluciones profesionales. Los cambios introducidos lo son principalmente en las entraas del sistema, aunque sin descuidar su apartado visual. Los escritorios, tanto Gnome como KDE se actualizan a sus ltimas versiones disponibles, el primero a la 2.24[2] presentada recientemente, y el segundo a la 4.1 . En Gnome 2.24 podemos apreciar pequeas e interesantes novedades como la mayor facilidad para configurar una salida mltiple de imagen, por ejemplo a un segundo monitor o a un proyector externo. A falta de tener acabado el tema grfico Solar, que est llamado a ser la nueva imagen de Fedora, se ha incluido un nuevo conjunto de iconos conocido como Echo.

Otras distribuciones consideradas mayores (con un gran nmero de usuarios y referencia e incluso base para otros proyectos derivados) han pasado por la misma fase. Desde SuSE/openSUSE, que ya desde bien temprano present versiones recortadas en Live CD de su distribucin, hasta Fedora que las incorpor hace relativamente poco
MUNDO

Linux

n106

www.revistasprofesionales.com

Noticias

Per Child) de Nicholas Negroponte, que puede ser utilizado como entorno grfico del sistema Automatizada la descarga e instalacin de cdecs multimedia Mejorado el soporte para vdeo de alta definicin (HD) en X.org Como inters aadido para los betatesters, el proyecto Fedora ha organizado un pequeo concurso orientado a espolear la bsqueda de bugs: cada persona que descargue y pruebe esta versin beta de Fedora 10 podr seleccionar hasta cinco funcionalidades nuevas a testear, y si encuentra un bug en alguna de ellas e informa de ello, ganar el derecho a que le asista el responsable de mantenimiento de un paquete de software con el cual dicho usuario tenga un problema importante. [1] https://www.redhat.com/archives/fedora-announce-list/2008September/msg00016.html [2] http://www.imatica.org/bloges/2008/09/290920312008.html

Lanzada la versin 2.24 de Gnome


Las principales novedades tcnicas citadas en el anuncio oficial de esta versin beta[1] son la introduccin de un nuevo gestor de conexiones de red que permite compartir la conexin de nuestra computadora con otras mquinas, una funcionalidad disponible en los sistemas Windows desde la versin 98 y que actualmente ya se muestra bastante en desuso por lo menos entre los usuarios finales gracias a la proliferacin de routers y al WiFi. El kernel (ncleo) del sistema se actualiza a la versin 2.6.27 e incluye soporte mejorado para conexiones WiFi. El sistema de gestin de paquetes RPM tambin se actualiza a la versin 4.6 del mismo, dndolo a conocer como el mayor cambio en este sistema en muchos aos. Otras novedades destacables que presenta Fedora 10 son: Mejora en la gestin de impresoras Mejora en los aspectos de virtualizacin Incluida Sectool, una herramienta de auditora y para llevar a cabo tests de seguridad Nueva versin de PackageKit, un programa que busca unificar los diversos sistemas de instalacin y gestin de software en las distribuciones GNU/Linux Nueva versin de PulseAudio, un servidor de sonido para Unix (Linux, BSD, Solaris) y Win32 Mejorado el soporte para EFI, el substituto de la BIOS y que es utilizado en los Apple Macintosh El arranque grfico es ahora ms rpido Se mejora el soporte para webcams, dado que ahora la gran mayora de los porttiles incorporan ya de serie este perifrico Se incluyen los entornos de programacin NetBeans y Eclipse en sus ltimas versiones. Tambin para desarrolladores se incluye el entorno grfico Sugar creado para el proyecto OLPC (One Laptop Un nuevo cliente de mensajera instantnea integrado en el entorno, mejoras en el soporte para televisin, y una gran cantidad ms de retoques en la que ser la primera versin en ofrecer soporte oficial a los desarrolladores que trabajan con entornos mviles. Como cada seis meses aproximadamente, la plataforma de escritorio grfico Gnome[1] ha liberado una nueva versin, en esta ocasin con el numeral 2.24[3] . Gnome es el escritorio ms utilizado en el ecosistema de distribuciones GNU/Linux, y dispone de ports a otros sistemas operativos como las diferentes ramas de la familia BSD o Solaris/OpenSolaris. La usabilidad, accesibilidad e internacionaliza-

Noticias

cin (disponibilidad en varias lenguas) son los objetivos prioritarios de este entorno. La primera novedad es la inclusin del cliente de mensajera instantnea Empathy que admite vdeo y audioconferencias basadas en el estndar XMPP/SIP, el mismo que se incluye en los dispositivos mviles Nokia N800/810. En cuanto a la compatibilidad con las redes ms utilizadas, es capaz de conectarse y trabajar con Jabber/ XMPP, Google Talk, MSN Messenger y chats Bonjour/Rendezvous de Apple. Pero no solamente se ha incluido el cliente de IM, sino las herramientas necesarias para que los programadores utilicen mensajera instantnea en las aplicaciones que construyan para Gnome. Como complemento a Empathy, se ha incluido la versin 3.0 de Ekiga, el cliente de videoconferencia SIP que viene por defecto en el entorno. En esta nueva versin se ha renovado la interfaz de usuario, enfocndola para que gane importancia visualmente la libreta de contactos del usuario. El nuevo Ekiga tambin permite la realizacin de videoconferencias con la imagen a pantalla completa, se integra con las comunicaciones de una centralita PBX, y aumenta la compatibilidad con los cdecs de vdeo (H.264, H.263+, MPEG-4 y Theora). Con la TDT (televisin Digital Terrestre) avanzando a pasos agigantados, se incluye compatibilidad con diversos sintonizadores DVB para poder ver ms de un canal al mismo tiempo en GStreamer, el software de reproduccin multimedia que ya incluy compatibilidad con emisiones de televisin digital en la anterior versin estable del entorno, la 2.22 . El soporte para la mayora de los controles remotos por infrarrojos tambin ha mejorado, y se ha aadido compatibilidad con los vdeos de alta definicin de YouTube y para subttulos de texto remotos. El gestor de ficheros incorpora el paradigma de navegacin en pestaas, trabajando de la misma manera que un navegador web. De esta forma, podemos abrir varias pestaas en una sola ventana, cada una con una carpeta diferente cargada e, incluso, una unidad de disco diferente, lo que facilita las operaciones de copia entre otras. Para los usuarios que trabajen con ms de un monitor, Gnome 2.24 modifica su panel de control de la resolucin de pantalla para prever que tengamos conectado a nuestra mquina un segundo monitor y poder seleccionar su resolucin, si queremos extender a l nuestro escritorio, o bien si queremos clonar la pantalla. Para aplicar los cambios realizados no ser preciso reiniciar el entorno Gnome. Adems, una funcin que apreciarn aquellos quienes tengan que trabajar con llaves USB, reproductores MP3 o PMPs es que los signos de puntuacin en el nombre de los ficheros que no sean soportados por el sistema FAT (en el que habitualmente estn formateados estos medios) sern automticamente convertidos al signo _ cuando realicemos una copia entre dos unidades de disco diferentes, estando formateada en FAT la de destino. Esto ser muy prctico a la hora de copiar canciones o cualquier otro fichero que tengamos que acarrear con nosotros. La barra de escritorio (la de la parte superior) incluye ahora un applet para buscar directamente en Google, la Wikipedia, permite actualizar nuestra cuenta de Twitter, aade una funcin de calculadora y nos facilita la bsqueda, descarga e instalacin de nuevos applets directamente desde la misma barra. Otras novedades que incluye el entorno son: Est creado en base a la Glib 2.18 y GTK+ 2.14 . Gestin del tiempo gracias a un applet incluido en la barra de estado que nos permite definir en qu tareas estamos trabajando.
MUNDO

Incluida nueva vista en forma compacta en el navegador de ficheros, que muestra un formato parecido al que presenta el formato de lista pero con una pequea miniatura del contenido a la izquierda del nombre del archivo. Permite instalar temas de sonido con la misma facilidad con la que se instalan temas de iconos, y a partir de ahora los sonidos del sistema podrn ser silenciados si estamos escuchando msica con la computadora o viendo una pelcula. Hay disponible una mayor cantidad de fondos de escritorio como resultado del concurso que Gnome convoc expresamente para este fin. Mejora en los aspectos de accesibilidad como la navegacin por teclado, el uso del ratn, la sintetizacin de voz para la lectura automatizada de textos, y el soporte de Braille para aplicaciones como el cliente de IM Pidgin o el paquete OpenOffice.org .

La primera con soporte oficial para dispositivos mviles


Pese a que el soporte para dispositivos mviles como telfonos, PDAs o ultraporttiles estaba ya presente desde haca bastante tiempo, este es el primer lanzamiento de la plataforma Gnome que tiene en cuenta estos aparatos de manera oficial para los desarrolladores, a los que ofrece diferentes servicios y utilidades. Entre estos, podemos contar una pila Bluetooth completa (BlueZ), Telepathy (un entorno de comunicaciones que proporciona servicios de VoIP o IM), GStreamer (entorno multimedia para la reproduccin de audio/vdeo), SQLite (base de datos), o Matchbox (un gestor de ventanas para entornos X11 sin escritorio como telfonos). Para aquellos que quieren probar esta nueva versin, pueden descargar[2] un Live CD desde el mismo sitio web del entorno, o esperar a que las distintas distribuciones empiecen a integrarlo. [1] http://www.gnome.org/ [2] http://torrent.gnome.org/ [3] http://library.gnome.org/misc/release-notes/2.24/

Liberada la versin 3.0 de OpenOffice


Ms integrada en Mac OS X, con soporte para trabajar con documentos procedentes de un Office 2007, y con una nueva pantalla de arranque se presenta una nueva revisin de la nica suite ofimtica que actualmente puede hacerle sombra por nmero de usuarios al Office de Microsoft. La saga de la suite ofimtica libre[1] por excelencia contina con una nueva versin cuya principal novedad radica en el soporte mejorado para la plataforma Mac OS X de Apple, habindose realizado adems el lanzamiento de la versin nativa para este sistema (eso s, solamente para procesadores Intel en su gran mayora, y

Linux

n106

www.revistasprofesionales.com

Noticias

para un reducido nmero de idiomas) al mismo tiempo que el resto de versiones. A partir de ahora, el programa se integra perfectamente en la interfaz grfica del Mac OS X sin tener que necesitar el servidor de ventanas X11, algo que le daba un aspecto extrao al programa en ejecucin y tambin lastraba su rendimiento y algunas de sus funcionalidades. A partir de ahora, pues, los usuarios del sistema operativo de Apple que opten por utilizar tambin esta suite ofimtica libre, podrn verla completamente integrada en la interfaz de su sistema, y no con el mismo look&feel que tiene en un sistema Unix/Linux. Pasando al resto de novedades incluidas en todas las plataformas, la primera a destacar sea tal vez la inclusin por defecto de los filtros para trabajar con documentos en formato OOXML (Office Open XML), desarrollado por Microsoft para su suite ofimtica Office 2007 y publicado a posteriori para su estandarizacin, algo que se ha conseguido por parte de la ECMA y an se intenta con la ISO. Hasta ahora exista un filtro que deba ser descargado e instalado manualmente en la suite, y su inclusin por defecto era un paso necesario para que los usuarios ms novatos y con menos conocimientos de informtica no se sintiesen frustrados a la hora de intentar editar documentos procedentes de una mquina con la ltima versin de la suite de Microsoft instalada. Tambin se incluye una pantalla de arranque llamada Start Center. Esta se despliega cuando arrancamos la suite desde el icono genrico en vez de acceder a una de las aplicaciones concretas que la componen. A partir de este nuevo punto de partida, podemos crear un documento en blanco para cada una de las aplicaciones que forman parte de la suite (procesador de textos, hoja de clculo, presentaciones, base de datos, y dibujo), crearlo a partir de una plantilla o abrir un documento previamente creado. Con el procesador de textos Writer se incluye la posibilidad de mostrar varias pginas del documento simultneamente, algo muy prctico si contamos con un sistema multimonitor. El sistema de extensiones y plug-ins tambin ha sido mejorado, hacindolo ms potente y eficiente. [1] http://www.openoffice.org/

los datos en bloques, por lo que parece tal vez ms orientado a su uso con telfonos mviles que con computadoras. La novedad ms destacable desde el punto de vista de los usuarios es el mayor soporte para cmaras de vdeo, y los nuevos drivers para los chipsets inalmbricos Intel serie 5000, RealTek RTL8187B, Atheros AR5008 y AR9001. Tambin se ha renovado la facilidad de hibernacin del sistema, uno de los puntos en los que GNU/Linux an flaquea pese a la mejora experimentada en los ltimos aos. En el campo de la virtualizacin se ha introducido soporte para que las mquinas virtuales que se ejecuten sobre un dominio Xen puedan ser hibernadas y restauradas. Todo esto entre muchas otras novedades. Se espera la inclusin de este nuevo ncleo en distribuciones prximamente, ya que por ejemplo, Ubuntu lo ha empezado a incluir cuando an estaba en fase de desarrollo en las versiones beta de Intrepid Ibex.

Ms informacin:
Artculo en Kernel Newbies en el que se describen todas las novedades de la nueva versin 2.6.27 del ncleo Linux http://kernelnewbies.org/Linux_2_6_27 [1] http://www.kernel.org/

Presentada la beta de LSB 4.0


Nuevas herramientas para que los desarrolladores puedan testear sus programas y la adicin de un apartado para los Shell Scripts, sus principales novedades. La versin 4.0 de Linux Standard Base (LSB) ya se encuentra en fase beta[1]. Esta especificacin y conjunto de herramientas constituye una ayuda a los desarrolladores de software para asegurarse que sus creaciones son compatibles con el mayor nmero posible de distribuciones GNU/Linux. Tambin proporciona una serie de parmetros a los creadores y responsables de distribuciones para que se ajusten a este estndar y se aseguren al mximo la compatibilidad con el resto de distros existentes en el mercado, cerrando as las brechas que pueden abrirse entre unas y otras y minimizando el peligro de fraccionamiento que corre Linux al igual que anteriormente pas con Unix. LSB se basa en POSIX, un estndar para sistemas Unix, al que aade ciertos elementos ms. Adems, es un estndar de mnimos, lo que quiere decir que a partir de que se cumpla con sus requerimientos, las distribuciones pueden incorporar los elementos que deseen. Otra ventaja que aporta es que gracias a disminuir el tiempo necesario para la realizacin de versiones de las aplicaciones que funcionen en varias distribuciones diferentes, as como el tiempo de probarlas en todas ellas, se disminuyen los costes de desarrollo en entorno heterogneos en los que conviven diversas distribuciones. Esta versin 4.0 del estndar se orienta a los desarrolladores, proporcionndoles nuevas herramientas de testeo para asegurarse que sus aplicaciones son 100% compatibles con las distribuciones que cumplen con LSB. Tambin se incluyen las herramientas necesarias (SDKs) para que los programadores puedan escribir aplicaciones que cumplan con los requisitos de versiones anteriores de la misma especificacin, concretamente las 3.0, 3.1 y 3.2 . La herramienta de testeo de binarios ha sido desarrollada conjuntamente por la Linux Foundation (entidad encargada de desarrollar y mantener el estndar LSB) y la Academia Rusa de las Ciencias, y realiza una serie de pruebas muy exhaustivas a los ejecutables de las aplicaciones para confirmar su compatibilidad con
MUNDO

Publicada la versin 2.6.27 del kernel de Linux


Pequeas pero sutiles novedades que complementan a los ncleos ya existentes con nuevos drivers y funcionalidades necesarias para el nuevo hardware. Vio la luz una nueva versin[1] del ncleo (kernel) Linux, como siempre con nuevos retos que afrentar proporcionados por la propia evolucin del sector tecnolgico. Uno de estos nuevos retos lo constituye la entrada masiva de Netbooks, los ultraporttiles pequeos y baratos. Muchos de estos aparatos utilizan una memoria de estado slido (SSD por sus siglas en ingls) como sistema de almacenamiento primario en detrimento de los tradicionales discos duros magnticos que contienen piezas mviles y que por lo tanto pueden sufrir ms daos en una cada fortuita o un golpe, algo a lo que este tipo de mquinas estn ms sujetos por su naturaleza. Para estos sistemas de almacenamiento, el nuevo kernel de Linux incluye soporte para UBIFS, un nuevo sistema de ficheros optimizado para este tipo de soportes y desarrollado primordialmente por el fabricante finlands de telfonos mviles Nokia. No obstante, sealar que UBIFS no puede trabajar con dispositivos de almacenamiento que basan la grabacin y ordenamiento de

www.revistasprofesionales.com

Linux

n106

Noticias

la especificacin y, por lo tanto, que pueda ser ejecutado en cualquiera de las distribuciones que cumpla.

Shell Scripts
Los programas que pueden ser realizados gracias a las facilidades proporcionadas por la mayora de los intrpretes de comandos (shell) de Unix/Linux, pequeos scripts que gozan de gran potencia y mucho uso entre la comunidad de administradores de sistemas, tambin se ven incluidos en esta nueva versin de la LSB contando con una herramienta que permite revisarlos para garantizar su compatibilidad con todas las distribuciones. Lo que busca esta herramienta son problemas de cross-shell scripting, como construcciones que funcionan en bash pero no en otras lneas de comandos. Los responsables de la LSB han anunciado que ya existe un buen nmero de aplicaciones que estn cerca de ser certificadas conforme cumplen con LSB 4.0 . Por su parte, las herramientas de desarrollo y testeo pueden ser ya descargadas[2] desde el sitio web de la Linux Foundation. La versin final ver la luz ms adelante este mismo ao. [1] http://ldn.linuxfoundation.org/article/lsb-beta-reveals-new-tools -features-developers [2] https://www.linuxfoundation.org/en/LSB_4.0_Beta

El proyecto OLPC hace pblica nueva versin de su distribucin GNU/Linux


Basada en Fedora 9, incluye el entorno grfico Sugar como principal diferencia respecto a otras distros. El proyecto One Laptop Per Child[1] (OLPC) ha publicado una nueva revisin[2] de la distribucin GNU/Linux que equipa a las mquinas porttiles de bajo coste XO, cuyo cometido es proporcionar una computadora para escolares de pases en vas de desarrollo pero a su vez tambin ha sido el motor de la revolucin de los Netbooks, pudiendo ser considerada la primera de estas mquinas. El Linux que equipa al XO est basado en Fedora 9, aunque esta nueva versin lleva como numeral para el proyecto fundado por Nicholas Negroponte el 8.2.0 . Puede descargarse de forma libre y gratuita, pero no se encuentra disponible[3] en las tradicionales

imgenes ISO para CD-ROM o DVD, sino que para ser instalada requiere algo ms de trabajo por parte del usuario. El principal atractivo de esta distribucin es su interfaz grfica Sugar, concebida para su uso por parte de nios y utilizando el lenguaje de programacin Python para su realizacin. Sugar rompe con el enfoque tradicional del escritorio informtico, permitiendo por ejemplo, la realizacin de solamente una tarea a la vez como mximo. Sugar se encuentra disponible como opcin de inicio de sesin para la prxima versin de Fedora (la 10) y se dice que tambin va a estar disponible ms adelante para Ubuntu. En la nueva versin del software del XO tambin podemos encontrar nuevas actividades para estudiantes y una mejora de las posibilidades de colaboracin en grupo. Finalmente, destacar que la organizacin ha puesto en lnea un completo manual[4] del XO disponible para todo el mundo y que tambin puede encontrarse en el sistema a modo de actividad. [1] http://www.laptop.org/ [2] http://wiki.laptop.org/go/Announcements/8.2.0 [3] http://download.laptop.org/xo-1/os/official/767/jffs2/ [4] http://www.laptop.org/manual/

As es el primer mvil con Android


Se comercializar inicialmente en Estados Unidos para pasar al continente Europeo en fechas prximas al cambio de ao, a un precio asequible. Tcnicamente, utilizar principalmente los servicios online de la compaa del buscador a travs de una interfaz que se ve muy cuidada para su uso tanto profesional como para el usuario final. Tras varios retrasos, ya contamos entre nosotros con el primer telfono mvil que utiliza Android, la plataforma de sistema operativo y middleware promovida por Google y abierta a fabricantes de terminales, operadoras y prestadores de servicios que se basa en GNU/Linux. El T-Mobile G1[1] ha sido fabricado por la taiwanesa HTC y se distribuir prximamente en Estados Unidos, llegando a principios de 2009 a Alemania, Repblica Checa, Austria y Pases Bajos. No se han dado a conocer fechas para el resto de Europa y las otras regiones del globo. El contrato de voz y datos con el que se suministrar el T-Mobile G1[1] ligar al usuario con la operadora germana durante un periodo de dos aos, aplicando finalmente un modelo de comercializacin tan leonino como el de Apple con el iPhone, aunque con el precio del terminal notablemente ms bajo.
MUNDO

Linux

n106

www.revistasprofesionales.com

Noticias

El aspecto del telfono es elegante, con una gran pantalla y un teclado que se esconde bajo esta. Una vez guardado dicho teclado, lo que vemos en la parte inferior de la pantalla son los botones para coger una llamada entrante, colgar, ir al men principal y regresar a la pantalla anterior. El teclado es un QWERTY completo que se despliega en un formato apaisado como otros telfonos de la compaa fabricante (por ejemplo el S740[3]), y la pantalla es un dispositivo multitctil al igual que la que monta el iPhone de Apple, al cual este terminal nos puede recordar en algn momento por su interfaz de usuario aunque el aspecto externo vara bastante respecto al telfono de la compaa de Cupertino. Tal y como se haba dicho en la Red, el sistema de proteccin del telfono no consiste en cdigos numricos o claves de acceso, sino en una especie de juego visual en el que disponemos de tres filas de tres puntos cada una, formando una parrilla de 3x3 (nueve puntos en total) que deberemos unir creando una forma con los dedos. A partir de aqu, accedemos a nuestra cuenta de Google utilizando el mismo nombre de usuario y contrasea que en una computadora de sobremesa y ya estamos listos para utilizar todos los servicios que la compaa del buscador proporciona en lnea: acceso directo a nuestro correo de Gmail, calendario, mensajera instantnea (Talk), vdeos de YouTube y mapas. En esta ltima aplicacin, disponemos de la funcionalidad Street View, que nos permite realizar paseos virtuales por las principales ciudades de los Estados Unidos y Europa en 3D, rotando en 360 grados en cualquier momento. Al utilizar aplicaciones en lnea, nuestros datos estn en la nube de Internet, por lo que si nuestro telfono mvil se estropea, lo perdemos o nos lo roban, continuaremos disponiendo igualmente de todos nuestros datos que podremos consultar desde otros dispositivos. La nica dificultad es que vamos a necesitar una conexin de datos continuada, por lo que si queremos consultar nuestro calendario cuando no disponemos de cobertura, lo vamos a tener un poco difcil. Para acceder a todos estos servicios, el T-Mobile G1 cuenta con un navegador web potente, probablemente una versin optimizada de Chrome ya que su interfaz de usuario se parece bastante a la que hemos visto en el nuevo navegador web de Google para Windows. Si queremos ampliar el repertorio de software instalado, contamos con un acceso al equivalente en Android de la App Store del iPhone, Android Market. No deja de ser curioso como este modelo de comercializacin y distribucin de aplicaciones de forma centralizada ha triunfado desde que Apple lo implementara para su telfono, hasta el punto que no solamente Google lo ha tomado como referencia para Android, sino que incluso Microsoft lo est desarrollando para Windows Mobile. En el apartado multimedia, el telfono incluye una aplicacin desarrollada por Amazon.com que permite el acceso desde el terminal al catlogo de msica en formato MP3 y sin restricciones de sistemas DRM de la distribuidora. Con dicha aplicacin podremos buscar canciones, escuchar fragmentos y descargar la msica. Para los desarrolladores interesados en crear aplicaciones para Android tambin hay novedades, pues Google ha aprovechado la

ocasin del lanzamiento del terminal de T-Mobile para actualizar el kit de desarrollo[4] (SDK por sus siglas en ingls) para su sistema operativo mvil a la versin 1.0 . Hasta la fecha, se haban publicado versiones previas de este SDK. Google tambin ha anunciado en la misma entrada del blog[5] que prximamente la Open Handset Alliance (la asociacin que agrupa a los diversos actores que han creado y respaldado a Android) abrir completamente el cdigo fuente del sistema operativo. Las prximas semanas tambin vern el nacimiento de un nuevo blog, Google on Android, que tratar sobre los servicios que la compaa del buscador proporciona para los dispositivos mviles que funcionan gobernados por la plataforma que ha promovido. [1] http://www.t-mobileg1.com/ [2] http://www.imatica.org/bloges/2008/09/230919702008.html [3] http://www.htc.com/www/product.aspx?id=57634 [4] http://code.google.com/android/download_list.html [5] http://googleblog.blogspot.com/2008/09/first-android-poweredphone.html

Publicada la versin 2.0 de Mono


Incluye numerosos cambios que facilitarn el trabajo a los programadores que busquen una alternativa multiplataforma al entorno .NET de Microsoft. Con el curioso nombre de Mono[1] y la explcita imagen de un simio como logotipo, este conjunto de utilidades busca la compatibilidad total con el entorno de programacin y ejecucin de aplicaciones informticas .NET de Microsoft pero siguiendo la filosofa del software libre y para varias plataformas (Windows, GNU/Linux y Mac OS X).

En esta segunda versin mayor se han aadido una buena cantidad de nuevas APIs compatibles con las originales de Microsoft, como por ejemplo ADO.NET 2.0 para el acceso a bases de datos o ASP.NET 2.0 para el desarrollo de aplicaciones web. Adems, tambin cuenta con APIs propias tiles para desarrollos que trabajen con entornos no-Microsoft, como puede ser el escritorio grfico Gnome (API Gtk# 2.12). Un punto que se ha trabajado extensamente parece ser el del soporte para bases de datos, pues se han puesto a disposicin del programador las herramientas para acceder y gestionar bases de datos PostgreSQL, DB2, Oracle, SQLite, SQL Server, Sybase y Firebird.
MUNDO

www.revistasprofesionales.com

Linux

n106

Noticias

En el paquete tambin se incluye un navegador web basado en el motor de renderizacin Gecko de Mozilla, pero cuyo aspecto externo clona al Internet Explorer de Microsoft. Este puede ser til incluso para empezar a acostumbrar a un usuario al cambio de Windows por Linux, ya que los iconos son idnticos a los que presenta el browser de Microsoft en su versin 6. Otras novedades importantes que incluye esta nueva versin de la plataforma son: Soporte para LINQ (Language Integrated Query) con el compilador de C# 3.0 Compilador de Visual Basic 8 Se incluye una implementacin no completa de Paint.Net pero que ya es funcional Es la primera versin en soportar el Debugger para cdigo fuente managed Mono Linker, una utilidad que permite al programador disminuir el tamao de los ejecutables generados API que permite utilizar Winforms en todas las plataformas soportadas (Windows, Linux, Mac OS X) Mejora la implementacin de DataGridView

Ms informacin:
Notas del lanzamiento de Mono 2.0 http://www.mono-project.com/Release_Notes_Mono_2.0 [1] http://www.mono-project.com/

BREVES SOBRE LINUX


Publicada la versin 12.1.08 de Absolute Linux, distribucin basada en Slackware y preparada para su ejecucin en mquinas antiguas a partir de un Pentium II con 64 MB. de RAM. En esta nueva revisin se actualiza la versin de OpenOffice a la 3.0 y el navegador Firefox a la 3.0.3 entre otros cambios. Ms informacin y descarga: http://www.pcbypaul.com/absolute/ CDlinux, distribucin ligera que utiliza el entorno de escritorio Xfce y aplicaciones de ltima hornada como el navegador web Firefox, pero optimizadas para su uso en mquinas con pocos recursos. Ms informacin: http://cdlinux.info/ Publicado CentOS 4.7 Server CD para arquitecturas i386. Consiste en un CD de instalacin de esta distribucin basada en Red Hat Enterprise 4.7 y orientada a servidores. Es libre y gratuito. Ms informacin y descarga: http://lists.centos.org/pipermail/centosannounce/2008-October/015328.html Publicada la versin 3.1 de Parted Magic, distribucin GNU/Linux minimalista orientada a trabajar con particiones del disco duro (crear, eliminar, redimensionar,...) y que prcticamente no ha incluido cambios desde la Release Candidate. En el mismo post tambin se han adelantado algunos trazos de la prxima versin 4.0 que estar basada en Slackware. Ms informacin: http://partedmagic.com/wiki/ PartedMagic.php?n=PartedMagic.News Presentada la primera beta pblica de PCLinuxOS 2009 . Ms informacin: http://www.pclinuxos.com/index.php?option=com_ smf&Itemid=26&topic=50565.0 Disponible la beta 1 de Lunar Linux 1.6.4, distribucin que a diferencia de otras no se basa en otra como Debian, Ubuntu o Fedora, sino que se construye a partir del cdigo fuente de los paquetes que la conforman. Ms informacin: http://www.lunar-linux.org/ index.php/en/news-sections/67-announcements/67-164-beta1i686-a-x8664-released.html Linus Torvalds incorpora una serie de parches en el kernel de Linux para mejorar el soporte al sistema de ficheros Ext4, el cual se acerMUNDO

ca al fin de su fase de desarrollo. Ms informacin: http://www.heise-online.co.uk/news/Kernel-Log-Ext4-completesdevelopment-phase-as-interim-step-to-btrfs/111742 La publicacin online Polishlinux.org publica un anlisis de KDE 4.2 basado en la actual versin de desarrollo y en el que se detallan las principales novedades. Ms informacin: http://www. polishlinux.org/kde/quick-look-at-kde-42-svn/ Publicada la versin 3.0 de Awesome, un entorno de escritorio para Unix/Linux minimalista, extensible y altamente configurable. Se encuentran disponibles diversos paquetes para las distribuciones ms populares de GNU/Linux y las principales ramas de la familia BSD. Ms informacin y descarga: http://awesome. naquadah.org/news/version_3.0/ Anunciada la disponibilidad de la distribucin GNU/Linux Sidux 2008-03, basada en la rama inestable de Debian a la que aade cambios para soportar ms hardware y ofrecer un entorno de escritorio ms rico al usuario final. Esta nueva revisin puede descargarse para las arquitecturas i686 y amd64 con los entornos KDE y Xfce. Ms informacin: http://sidux.com/Article454.html Disponible la versin 2.0 de Helix3, una distribucin GNU/Linux basada en Ubuntu y preparada para casos de anlisis forense en los que es sumamente necesario interactuar de forma no-destructiva (es decir, sin borrar datos) con el disco duro. Ms informacin y descarga: http://www.e-fense.com/helix/ Publicada la versin 1.9.02 de desarrollo de Elive, distribucin GNU/Linux basada en Debian con el aadido del entorno Enlightenment para el escritorio, y en la cual se mejora el instalador y se corrigen algunos bugs. Ms informacin: http://www.elivecd.org/Main/News/137 Liberada la sexta alpha de Mythbuntu 8.10, distribucin GNU/Linux basada en Ubuntu a la que le aade el software de media center MythTV. Ms informacin: http://www.mythbuntu .org/8.10/alpha6 Uno de los principales programadores del proyecto PulseAudio publica en Internet una gua para comprender la API de sonido de GNU/Linux. Ms informacin: http://0pointer.de/blog/projects/ guide-to-sound-apis.html Omega 10 Desktop, nueva spin de Fedora 10 beta que incluye cdecs multimedia que no se encuentran en la Fedora original adems de otros programas procedentes del repositorio Livna. Ms informacin: http://www.phoronix.com/scan.php?page= article&item=omega_10_beta&num=1 Publicada la versin 2.3 de NetSecL, distribucin GNU/Linux basada en Slackware y orientada a crear un sistema altamente seguro por lo que elimina servicios considerados innecesarios para un usuario final e incluye un kit de test anti-penetracin. Ms informacin: http://www.netsecl.com/ VectorLinux anuncia la versin 5.9 en formato Live CD de su distribucin, a la par que la beta de la misma pero Light, es decir, orientada a las computadoras menos potentes. Ms informacin: http://forum.vectorlinux.com/index.php?topic=7431.msg#msg Mandriva anuncia una nueva versin de su distribucin orientada a las computadoras de tipo Netbook y para fabricantes y OEMs. Algunas de las cualidades de esta distro, que recibe el nombre de Mandriva Mini, son el tiempo mejorado en el arranque, la inclusin de numerosos cdecs multimedia, y el amplio soporte para conectividad (redes WiFi, 3G y GSM). Ms informacin: http://www.mandriva.com/enterprise/en/company/press/mandriva -announces-a-new-solution-for-netbooks-mandriva-mini Publicada la versin 2.6.0 del programa de retoque fotogrfico The GIMP, una solucin libre prcticamente equivalente al Adobe

Linux

n106

10

www.revistasprofesionales.com

Noticias

Photoshop. Ms informacin: http://gimp.org/release-notes/ gimp-2.6.html Disponible la segunda beta de openSUSE 11.1, en la que se presentan como novedades la disponibilidad de Live CDs basados en los entornos Gnome y KDE, la correccin del bug para las tarjetas de red Intel e1000e, la inclusin de Gnome 2.24 y KDE 4.1.2, y el software de virtualizacin VirtualBox 2.0.2 . Ms informacin: http://news.opensuse.org/2008/10/03/development-releaseopensuse-111-beta-2-now-available/ Liberada la versin beta de Ubuntu 8.10 Intrepid Ibex, en la que se incluye el kernel 2.6.27, el entorno de escritorio Gnome 2.24, el servidor de ventanas X.org 7.4, Samba 3.2 y el plug-in para el reproductor multimedia Totem que permite ver las emisiones de televisin digital de la BBC entre otras novedades. Ms informacin: http://www.ubuntu.com/testing/intrepid/beta Anunciada la versin 0.3.9-4 de GParted, distribucin de GNU/Linux en formato Live CD con herramientas para trabajar con particiones. En esta ltima versin incluye el kernel 2.6.26-5 y est basado en Debian Lenny. Ms informacin: http://gparted.sourceforge.net/news.php Publicado MaXX Desktop DR2, un clon para Linux del escritorio del sistema operativo IRIX (Unix de SGI). Ms informacin: http://www.maxxdesktop.com/site/ Dos desarrolladores de Intel consiguen arrancar un Eee PC de Asus equipado con un disco SSD para almacenamiento y GNU/Linux como sistema operativo, en cinco segundos. Las distribuciones empleadas fueron dos, ambas variantes optimizadas de Moblin y Fedora. Como ancdota destacar que buena parte del pblico se qued sin comprobarlo porque la mquina tardaba menos en arrancar completamente el sistema de lo que tardaba el proyector a sincronizar la imagen. Ms informacin: http://lwn.net/Articles/299483/ Liberada la versin 2.6 del lenguaje de programacin Python, en la cual se incorporan algunos de los elementos que deba aadir la futura versin 3.0 como preparacin a esta ltima. Ms informacin: http://docs.python.org/whatsnew/2.6.html

ble por el momento solamente con los sistemas operativos Windows y Mac OS X. Esto ltimo ha reportado bastantes crticas negativas a Mozilla, ya que recientemente tambin ha sido acusada de menospreciar al sistema operativo GNU/Linux argumentndose que le daban la mxima prioridad a la conversin de usuarios con el sistema operativo de Microsoft y utilizando el navegador web Internet Explorer de la compaa de Redmond.

Como trabaja Geode?


El primer paso es geolocalizarnos a nosotros mismos, es decir, identificar el sitio en el que estamos para posteriormente hacer uso de esta informacin. Este primer paso puede llevarse a cabo de varias formas, ya sea manualmente (introducir nosotros mismos la informacin correspondiente a donde nos encontramos), o bien de forma automatizada ya sea gracias a la informacin proporcionada por el GPS integrado en la computadora, por la direccin IP[2] o bien por cualquier otro servicio proporcionado por terceras partes en forma de plug-ins. A partir de aqu, ya podemos consultar, por ejemplo, los establecimientos en los que se sirve comida y que se encuentran a nuestro alrededor, o cualquier tipo de servicio que se encuentre en Internet. Adems de Firefox, el navegador web para computadoras desktop, el nuevo Geode[1] es utilizable por parte de Fennec[4], el navegador para dispositivos mviles que podemos ver en accin, por ejemplo, en la serie de dispositivos Internet Tablet de Nokia y que produce la misma Mozilla. Para todo esto, se utiliza la API de geolocalizacin del W3C[3] (World Wide Web Consortium), una especificacin abierta a cualquier prestador de servicios.

Lo local, an mucho ms localizado


A partir de la entrada en escena de los servicios de geolocalizacin en general y de Geode en particular, son los desarrolladores de soluciones y servicios online los que deben ponerse las pilas. As, desde Mozilla se propone por ejemplo, que su servicio de geolocalizacin podra permitir que, una vez posicionado el usuario, al consultar un sitio web de noticias, le apareciesen en primer trmino las que corresponden al mbito geogrfico en el cual se encuentra. Otro ejemplo de uso propuesto por la Fundacin Mozilla sera un lector de feeds RSS capaz de distinguir cundo el usuario se encuentra en su puesto de trabajo o en casa, cambiando los contenidos segn las preferencias marcadas por este.

DE INTERS ADICIONAL
Mozilla introduce su nueva herramienta de geolocalizacin
Permite no solamente conocer la situacin de comercios y servicios online, sino que los sitios conozcan nuestra localizacin para as ofrecernos los servicios y la informacin de acorde a ello, como por ejemplo las noticias para una poblacin en concreto procedentes de un peridico de tirada nacional. No hay lugar a dudas que los servicios de geolocalizacin son cada vez ms populares y utilizados. Bajo este nombre, se encuentra un servicio o ms bien una funcionalidad de la nueva Web 2.0 que permite que adems de buscar y recibir informacin, esta sea contextualizada en su entorno espacial. As, por ejemplo, uno de los servicios ms conocidos y utilizados de la Web 2.0 es Google Maps, que nos permite ver mapas de ciudades marcando en ellos puntos de inters y asocindolos con fotografas o sitios web, geolocalizndolos en definitiva. La Fundacin Mozilla est trabajando para sacarle mayor jugo a esta posibilidad de contextualizar geogrficamente el servicio que estamos utilizando o el sitio web que visitamos, y para ello ha creado Geode[1], un add-on para el exitoso navegador web Firefox que probablemente vendr ya integrado con la prxima versin 3.1 de este programa. Adems, y para los internautas ms impacientes, ya se encuentra en fase beta para descarga gratuita, siendo compati-

El problema de la privacidad
Naturalmente, un servicio capaz de localizar al usuario all donde l se encuentre, puede ser sospechoso de utilizarse para controlar todos sus movimientos. Para ello, Mozilla ya ha especificado que deber ser el mismo usuario el que d permiso para que el sistema acceda a sus datos de geoposicionamiento. Esta peticin se realiza en cada sitio web o servicio en lnea que requiere el acceso a estos datos, y se lleva a cabo presentando una barra en la que se pregunta al usuario si quiere dar permiso al sitio para que conozca su posicin. Geode tambin ser el centro de un debate sobre la privacidad del usuario en los servicios de geolocalizacin, una discusin que la cibersociedad demanda cada da ms. [1] http://labs.mozilla.com/2008/10/introducing-geode/ [2] http://www.adslayuda.com/geolocalizacion.html [3] http://dev.w3.org/geo/api/spec-source.html [4] http://www.imatica.org/bloges/2008/07/210715862008.html
MUNDO

www.revistasprofesionales.com

11

Linux

n106

Tecnologa y Negocio

Gestin de requisitos de software con RTH 1.6.3 (II)


Autor: Xavier Irua

En la entrega anterior habamos completado la compleja instalacin del sistema de gestin de requisitos de software RTH 1..6.3, sorteando los problemas que nos presentaba su escasa documentacin. Tambin hemos aprendido a definir a los usuarios, sus permisos y sus accesos a determinados proyectos dentro de RTH. A continuacin, vamos a desarrollar ejemplos concretos de la gestin de requisitos, su carga, seguimiento y sus asociaciones con documentacin y con las diferentes pruebas que se llevan a cabo para asegurar que cumplan con los estndares de calidad preestablecidos antes de comenzar a trabajar en cada proyecto.
Tambin veremos cmo podemos llevar a cabo una gestin ordenada y eficiente de los requisitos para un sistema informtico moderno en cualquier industria u organizacin utilizando esta versin de RTH y cmo nos podemos apoyar en esta herramienta para cumplir con las tareas ms importantes.

Agregando proyectos
Ahora que ya est instalado y funcionando RTH 1.6.3, con los usuarios definidos, tenemos que agregar los proyectos en los cuales vamos a trabajar para probar las facilidades de la herramienta y verla en accin. Para ello, primero tenemos que definir en qu carpeta (directorio) queremos almacenar las subcarpetas (subdirectorios) y los archivos que se suban como adjuntos al proyecto. Pues, por cada proyecto, RTH genera la siguiente estructura de carpetas, todas con el nombre del proyecto sin espacios seguido de un guin bajo (_) como prefijo: defect_docs (documentacin sobre los defectos). test_docs (documentacin sobre las pruebas).
MUNDO

test_run_docs (documentacin sobre la ejecucin de las pruebas). req_docs (documentacin sobre los requisitos). test_plan_docs (documentacin sobre los planes de las pruebas). Por ejemplo, si creamos un proyecto denominado GESTION HOTELERA, RTH generar la siguiente estructura de carpetas: GESTIONHOTELERA_defect_docs GESTIONHOTELERA_test_docs GESTIONHOTELERA_test_run_docs GESTIONHOTELERA_req_docs GESTIONHOTELERA_test_plan_docs Por omisin RTH est configurado para generar esta estructura de carpetas y luego cargar cada documento correspondiente dentro de ./rth_file_upload, como ruta relativa a la carpeta en la cual est instalado RTH, es decir, en la carpeta rth_file_upload dentro de /var/www/rth_1.6.3 si no modificamos la instalacin con respecto a lo explicado en la entrega anterior. Como podemos imaginar, tendramos que modificar los permisos de /var/www/rth_1.6.3/rth_file _upload para que permita crear nuevas carpetas as como escribir y modificar ficheros para que RTH pueda generar la estructura necesaria para cada nuevo proyecto y no obtengamos errores de acceso denegado al llevar a cabo estos pasos. Esto es posible, pero no es recomendable, debido a que estaramos exponiendo la seguridad de las carpetas que son del dominio del servidor Web (en nuestro caso Apache). Por lo cual, es conveniente generar una carpeta fuera del dominio del servidor Web, con los permisos correspondientes e indicarle a RTH que debe crear las estructuras de los proyectos en esa ruta. Supongamos que el nombre de la carpeta en la cual queremos que se cree esta estructura es /home/mundolinux/proyectos_RTH/, para modificar la configuracin de RTH, siga estos pasos: Hay que modificar nuevamente la configuracin inicial de RTH, indicarle el nombre de la ruta en la definicin de FILE_UPLOAD_PATH. Para ello, se debe acceder al archivo /api/properties_inc.php dentro del directorio rth_1.6.3, utilizando vi:
sudo vi /var/www/rth_1.6.3/api/properties_inc.php

O bien, si no estamos seguros para trabajar con vi, podemos utilizar gedit que se presentar en el escritorio, en forma grfica:
sudo gedit /var/www/rth_1.6.3/api/properties_inc.php

En el Listado 1 se muestra la lnea de este archivo que se debe modificar para establecer la

Linux

n106

12

www.revistasprofesionales.com

Gestin de requisitos de software con RTH 1.6.3 (II)


Porcin del archivo de configuracin /var/www/rth_1.6.3/api/properties_inc.php

Tecnologa y Negocio

Listado 1

# FCK EDITOR define('FCK_EDITOR_BASEPATH', RTH_URL ."fckeditor/"); define('IMG_SRC', RTH_URL ."images/"); define('ICON_SRC', RTH_URL ."images/icons"); # Might not need icons define('DOC_ROOT', RTH_URL); # do not store documents in web server document root define('FILE_UPLOAD_PATH', '/home/mundolinux/proyectos_RTH/'); # include forwardslash at end of path define('WINDOW_TITLE', 'RTH - Quality Centre'); define('PAGE_TITLE', 'RTH'); define('RTH_VERSION', 'Version 1.6.3');

Figura 1. Agregando un proyecto en RTH.

Figura 2. Visualizando la lista de proyectos, con el nuevo agregado.

nueva configuracin de la carpeta en la cual se debe generar la estructura de proyectos. Como podemos observar, hay que modificar el valor para FILE_UPLOAD_PATH y especificarle la ruta con la barra al final. Esto es cdigo PHP, por lo cual, tenemos que respetar la sintaxis para que no se produzcan errores luego durante el acceso va Navegador a la aplicacin. Por ejemplo, para establecer la ruta a /home/mundolinux/proyectos_RTH/, tenemos que modificar la lnea que figura originalmente con:
define(FILE_UPLOAD_PATH, ./rth_file_ upload);

como la ruta principal para que RTH genere las nuevas carpetas para cada proyecto y que all se alojen los documentos que se vayan subiendo. Guarde los cambios realizados en el archivo, revisando cuidadosamente que no se haya generado ningn error de sintaxis.

Modifique la configuracin de permisos de la carpeta para que los usuarios puedan crear carpetas, escribir y modificar archivos. Una vez realizada esta tarea, tenemos que entrar a RTH como un usuario y contrasea con los permisos correspondientes para poder crear proyectos nuevos. Como habamos utilizado la base de datos de demostracin para la instalacin, ya estaba creado el proyecto DEMO (el cual tiene sus carpetas generadas en la ubicacin predeterminada por la instalacin), pero ahora queremos agregar uno propio y ver cmo trabajar en detalle con RTH para las diferentes actividades relacionadas con la gestin de requisitos de software. Para agregar un proyecto nuevo, hay que hacer click en Manage (Gestionar) en la barra superior y aparecer una tabla con todos los proyectos predefinidos (por el momento, solamente el proyecto DEMO). Haciendo click en Add project (Agregar nuevo proyecto) en la segunda barra aparecer un panel para cargar los siguientes datos de un proyecto nuevo (ver la Figura 1): Project name (nombre del proyecto). Tengamos cuidado con el nombre, pues no hay que utilizar caracteres que no estn permitidos para emplearse en nombres de ficheros o carpetas, pues sino aparecern errores cuando RTH intente generar las estructuras explicadas anteriormente. Description (descripcin). Status (estado). Un proyecto puede estar habilitado y activo (enabled) o inhabilitado (disabled). View/Hide columns (mostrar u ocultar columnas). Permite definir las diferentes columnas que se mostrarn sobre el proyecto. Una vez introducidos todos los valores, hay que presionar el botn Submit (Enviar). Tengamos en cuenta que si no hemos configurado correctamente los permisos de la carpeta en la cual se almacena la estructura que genera RTH para el nuevo proyecto, nos apa-

Por la siguiente lnea (en negrita figura lo modificado):


define(FILE_UPLOAD_PATH, /home/mundolinux/proyectos_RTH/);

En la lnea anterior, utilizamos como ejemplo /home/mundolinux/proyectos_RTH/

Figura 3. La pgina principal de RTH mostrndonos las novedades para el nuevo proyecto.

www.revistasprofesionales.com

13

MUNDO

Linux

n106

Tecnologa y Negocio

recern mensajes de error en pantalla y no se crear el proyecto en la base de datos hasta que solucionemos el problema. Si todo sali bien, accederemos a la lista de proyectos, pudiendo visualizar el que hemos agregado (ver la Figura 2). Recordemos que haciendo click en los ttulos de las columnas de la tabla, se puede establecer el orden en forma ascendente o descendente, pues esto es posible para todas las pantallas. Ahora que hemos creado un proyecto nuevo, es conveniente transformarlo en el proyecto activo, pues hasta ahora era DEMO. Para ello, hay que seleccionar el nombre del proyecto nuevo en el cuadro de lista desplegable Switch project (Cambiar proyecto activo). De esta manera, nos encontraremos con la pantalla principal que nos presenta un resumen de los ltimos 5 modificados de cada uno de los siguientes: conjuntos de pruebas (test sets), pruebas (tests) y requisitos (requirements), para el proyecto nuevo (ver la Figura 3). Como est recin creado, no hay ninguna informacin presente, sin embargo, cada vez que entremos nuevamente al sistema, vamos a encontrar esta informacin. Ya creamos el epicentro del trabajo de RTH, un proyecto. Todo parte de all, pues en la gestin de requisitos, todas las tareas estn relacionadas a un proyecto determinado y as lo entiende RTH. Desde un proyecto podemos acceder a sus requisitos (requirements), sus pruebas (tests) y sus defectos (defects).

Figura 4. Visualizando una novedad para un proyecto.

Comunicando novedades
Cuando participamos en varios proyectos, a veces resulta difcil coordinar las comunicaciones para estar al tanto de los temas pendientes en cada uno de los que estamos involucrados. En ese punto es en donde comenzamos a notar las ventajas de RTH con respecto al envo constante de informacin y documentos a travs del correo electrnico. Pues, como vimos anteriormente, cuando seleccionamos un proyecto, visualizamos una pantalla de bienvenida con un resumen de la actividad. Pero, tambin es posible que definamos una noticia importante, para que cualquier miembro que ingrese la vea al momento que selecciona ese proyecto en RTH. Para definir una noticia que se presentar en la pantalla principal del proyecto, basta con seguir esta secuencia de clicks Manage (Gestionar) en la barra superior, el nombre del proyecto en la tabla y dentro de la seccin News (Novedades), escribir un asunto (subject), una descripcin (description), y presionar el botn Submit (Enviar). De esta manera, esa novedad se presentar al entrar al proyecto (ver la Figura 4). Se elimina la necesidad de estar redactando un correo electrnico en el cual se debe incluir informacin referida a qu proyecto estamos hablando como introduccin, la novedad, los saludos correspondientes

(para no perder la cortesa), con todo el tiempo que eso lleva.

Parametrizando los requisitos


Antes de poder comenzar a agregar nuevos requisitos, tenemos que parametrizar tres aspectos indicando qu valores pueden contener, es decir, qu elementos aparecern disponibles para seleccionar en los cuadros de lista desplegables correspondientes: El aspecto cubierto por el requisito (requirement area covered). Por ejemplo: Bugs (Errores). Nuevas funcionalidades. Pruebas. Resultados de pruebas. El tipo de documento de requisito (requirement document type). Por ejemplo: Casos de uso. Especificacin funcional. Especificacin tcnica. El aspecto funcional del proyecto que cubre el requisito (requirement functionality). Por ejemplo: Estadsticas. Gestin de bases de datos. Gestin de usuarios. Interfaz con el usuario. Ncleo (core). Para definir toda esta parametrizacin, debemos entrar en Manage (Gestionar) en la

Definiendo los usuarios del proyecto


Ahora que ya est creado el proyecto, hay que definir los usuarios que pueden trabajar dentro de RTH con ese proyecto y cules son sus permisos. El procedimiento para agregar usuarios y definir sus permisos lo hemos explicado en detalle en la entrega anterior. Por lo cual, tenemos que seguir los pasos explicados para agregar a cada uno de los usuarios al proyecto nuevo e ir definiendo sus permisos especficos. De esta manera, ya tendremos todo configurado para poder realizar las acciones propias de la gestin de requisitos. Tambin es conveniente modificar el proyecto predeterminado de los usuarios con los cuales trabajaremos, pues por omisin est asignado al proyecto DEMO, el nico que haba creado hasta el momento. Al ir realizando las operaciones, nos iremos acostumbrando al trabajo con RTH y nos resultar muy intuitiva su interfaz con el usuario, lo que no siempre es as en aplicaciones basadas en PHP.
MUNDO

Figura 5. Parametrizando el aspecto funcional del proyecto que cubre el requisito (requirement functionality).
www.revistasprofesionales.com

Linux

n106

14

Gestin de requisitos de software con RTH 1.6.3 (II)

Tecnologa y Negocio

barra superior, hacer click en el nombre del proyecto y luego en Requirements (Requisitos). Aparecer una nueva barra con los tres aspectos explicados anteriormente. Haciendo click en cada uno de ellos, podremos completar el cuadro de texto e ir presionando el botn Add (Agregar) para que se vaya formando la lista de elementos que aparecer en la parte habitual, como ya nos ha acostumbrado la interfaz de RTH (ver la Figura 5).

Trabajando con requisitos y sub-requisitos


Una vez que estn definidos los valores para estos tres aspectos de un requisito, los cuales dependern exclusivamente de la clase de proyecto en el cual estemos trabajando, podremos agregar requisitos al proyecto. RTH nos permite agregar requisitos de dos clases diferentes: Requisito con fichero (Requirement File). Permite asociar un fichero de cualquier clase con las especificaciones del requisito. Solamente se incluye una breve descripcin del requisito y el resto se encuentra en el fichero asociado. Requisito con registro (Requirement Record). Permite definir todos los detalles del requisito utilizando un editor, por lo cual, ofrece una trazabilidad ms completa que el anterior, pero lleva mucho ms trabajo para definirlo y para mantenerlo. Una de sus grandes ventajas es que luego podremos realizar bsquedas en el contenido del detalle del requerimiento, lo cual puede ayudarnos en el futuro. El uso de uno u otro depender del nivel de trazabilidad que busquemos y de la clase de proyecto con el cual estemos trabajando, as como de la forma en la cual pensemos o tengamos organizada la documentacin de cada requisito. Para agregar un nuevo requisito a un proyecto, hay que hacer click en Requirements (Requisitos) en la barra superior y aparecer una tabla con todos los requerimientos. Haciendo click en Add requirement record (Agregar requisito con registro) o bien en

Figura 6. Agregando un nuevo requisito con registro.

Add requirement file (Agregar requisito con fichero), segn el tipo de requisito que se quiera insertar. Aparecer un panel para cargar los siguientes datos de un requisito nuevo (ver la Figura 6): Requirement name (nombre del requisito). Detail (detalle). En los requisitos con registro, nos facilita un editor que nos permite describir con gran precisin su detalle, incluyendo cambios en el tamo de la tipografa, negritas, cursivas, tablas y diferentes estilos (formatos). Ver la Figura 6. File name (Nombre de fichero). En los requisitos con fichero, nos permite seleccionar un fichero que se asociar a ste. Por ejemplo, en un requisito determinado podemos asociar una especificacin en formato Open document (.odt), la cual contendra todo el detalle funcional y de diseo del nuevo requisito, junto con su diagrama UML (Unified Modelling Language Lenguaje unificado de modelado). Reason for change (Razones para la modificacin). Version (Versin). El nmero de versin del requerimiento.

Figura 7. La lista de requisitos y la barra superior que permite filtrar por diferentes campos.
www.revistasprofesionales.com

Area covered (Aspecto cubierto). Doc type (Tipo de documento). Status (Estado). RTH nos permite seleccionar alguno de los siguientes estados para un requisito, para facilitarnos el seguimiento de un flujo de trabajo (workflow) ordenado: New (Nuevo). Reviewed (Revisado). Approved (Aprobado). Rejected (Rechazado). Implemented (Implementado). Priority (Prioridad). RTH nos permite seleccionar alguno de los siguientes valores de prioridad para un requisito, para luego poder verlos ordenados por sta: High (Alta). Medium (Media). Low (Baja). Assigned to (Asignada a). Permite indicar a qu usuario del proyecto se asign el requisito. Functionality (Funcionalidades). Podemos escoger varias funcionalidades (previamente definidas para el proyecto) a las que afecta este requisito manteniendo presionada la tecla Control (Ctrl), como en cualquier cuadro de lista con posibilidad de seleccin mltiple. Una vez introducidos todos los valores, hay que presionar el botn Create (Crear). Accederemos a la lista de requisitos, pudiendo visualizar el que hemos agregado (ver la Figura 7), con una presentacin a la que ya nos ha acostumbrado RTH. Se asignar un identificador nico numrico para el nuevo requisito (ReqID). En la parte superior podemos ver diferentes cuadros de lista desplegable y cuadros
MUNDO

15

Linux

n106

Tecnologa y Negocio

Figura 8. Los requisitos organizados en forma jerrquica en la vista como carpetas.

de texto que nos permiten filtrar por diversas condiciones a los requisitos que se muestran en la tabla inferior. De esta manera, fcilmente podemos acceder a visualizar solamente un subconjunto del total de requisitos, despus de especificar los valores y de presionar el botn Filter (Filtrar). Presionando en el vnculo Export to Excel (Exportar a Excel), nos generar un fichero con extensin .XLS con todos los requisitos que estn visibles en pantalla y sus campos, que podremos abrir con OpenOffice.org Calc o bien con cualquier otra planilla de clculo capaz de trabajar con este formato. Esta funcionalidad es muy til para llevar a cabo seguimientos, tareas y estadsticas que no estn incluidas en RTH. Haciendo click en el vnculo que muestra el identificador nico numrico para un requisito (ReqID), accedemos a su ficha detallada, a partir de la cual tenemos acceso a diferentes acciones para llevar a cabo con ste. En RTH, al entrar en cada entidad, encontramos las operaciones que podemos efectuar con sta, lo cual facilita mucho el aprendizaje de la herramienta tanto como su uso. Sin embargo, tenemos que prestar atencin a los vnculos y a los botones, pues suelen cambiar de nombre aunque llevan a cabo acciones similares. Si bien es un detalle menor, es muy comn que encontremos botones con nombres Add, Submit y Create. La interfaz es bastante similar, pero no para todas las operaciones, pues determinados grupos respetan una metodologa, pero otros no, lo cual a veces hace que uno se confunda con facilidad. A partir de la ficha de un requisito, es posible llevar a cabo lo siguiente: Crear una o ms pruebas (Tests) asociadas a ste a travs del vnculo Create Test (Crear prueba). Crear sub-requisitos o bien requisitos hijos (Child requirments) cuyo padre ser ste, a travs del vnculo File (Crear un sub-requisito con fichero) o Record (Crear sub-requisito con registro).
MUNDO

Figura 9. La ficha de un requisito con sus sub-requisitos presentados en la tabla inferior.

Visualizar el historial de las diferentes versiones del requisito, a travs del vnculo History (Historial). Agregar una nueva versin, utilizando el botn Add new version (Agregar nueva versin del requisito). Actualizar el requisito, empleando el botn Update requirement (Actualizar el requisito). Eliminar el requisito, a travs del botn Delete requirement (Eliminar el requisito). Bloquear el requisito, presionando el botn Lock requirement (Bloquear el requisito) o bien desbloquearlo con el botn Unlock requirement (Desbloquear el requisito). Enviar notificaciones por correo electrnico, haciendo click en el vnculo Notifications (Notificaciones). Una prctica que da buenos resultados y brinda un equilibrio entre el trabajo necesario y la trazabilidad conseguida consiste en crear un requisito con registro e incluir en ste una descripcin lo suficientemente detallada para facilitar un buen nivel de trazabilidad y que se puedan llevar a cabo las bsquedas necesarias. Sin lugar a dudas, la inclusin de todo el detalle funcional o de diseo tcnico de las modificaciones y tareas que implica el requisito resultara muy incomodo de incluir con el editor proporcionado por RTH. Por ende, se pueden crear sub-requisitos con ficheros que agreguen

todas las especificaciones necesarias utilizando los tipos de ficheros que estn asociados a las aplicaciones que mejor permiten presentar la informacin necesaria. De esta manera, encontramos la forma de trabajar con requisitos muy complejos sin perder la trazabilidad y sin que resulte ineficiente su gestin. Tambin esto facilita que un nico requisito tenga asociados mltiples ficheros con especificaciones que pueden estar asociadas a diferentes aplicaciones. Esta es una necesidad muy comn en los proyectos de mediana o gran envergadura, en los cuales un requisito implica una especificacin funcional en texto, un diagrama UML de casos de uso de Umbrello (por citar un ejemplo de aplicacin capaz de trabajar con UML en Linux), un diagrama en Kivio, una planilla de clculo con determinadas frmulas que se deben aplicar, etc. La facilidad que nos brinda RTH para gestionar los sub-requisitos hace que realmente se transforme la forma de trabajar con los requisitos de tal manera que luego resulta casi imposible volver a participar de un proyecto en el cual no se utilice esta clase de herramientas. Como los sub-requisitos se visualizan en forma plana en la tabla que se muestra en pantalla con todos los requisitos, existe otra vista que los presenta en forma jerrquica con sus padres e hijos, a la cual se accede con el vnculo Folder view (Vista en

Linux

n106

16

www.revistasprofesionales.com

Gestin de requisitos de software con RTH 1.6.3 (II)

Tecnologa y Negocio

habitual, como ya nos ha acostumbrado la interfaz de RTH.

Trabajando con pruebas


Una vez que estn definidos los valores para estos cinco aspectos de una prueba, los cuales dependern exclusivamente de la clase de proyecto en el cual estemos trabajando, podremos agregar pruebas para cada requisito. Para agregar una nueva prueba, nos conviene hacer click en el vnculo Test (Prueba) dentro de la ficha del requisito, as queda automticamente asociado a ste. Aparecer un panel para cargar los siguientes datos de una nueva prueba (ver la Figura 11), entre otros datos de fechas: Test name (Nombre de la prueba). Purpose (Objetivo). Comments (Comentarios). Test status (Estado). RTH nos permite seleccionar alguno de los siguientes estados para una prueba, para facilitarnos el seguimiento de un flujo de trabajo (workflow) ordenado: New (Nueva). Assigned (Asignada). WIP (Work In Process Trabajando en la prueba). Ready for review (Lista para revisin). Completed (Completada). Rework (Trabajando nuevamente). Review test case (Revisar caso de prueba). Review requirement (Revisar el requisito asociado). Priority (Prioridad). RTH nos permite seleccionar alguno de los siguientes valores de prioridad para una prueba, para luego poder verlas ordenados por sta: High (Alta). Medium (Media). Low (Baja). Test area (El aspecto cubierto por la prueba). Test type (El tipo de prueba). QA owner (El usuario propietario de QA). BA owner (El usuario propietario de BA). Tester (El usuario responsable de llevar a cabo la prueba). Assigned to (Asignada a). Permite indicar a qu usuario del proyecto se asign la prueba. Assined by (Asignada por). Facilita especificar qu usuario del proyecto asign la prueba a otro. Una vez introducidos todos los valores, hay que presionar el botn Save (Guardar). Como podemos ver, nuevamente, segn la pantalla cambia la etiqueta del botn, algo que seguramente cambiar en futuras versiones para normalizar la interfaz con el usuario. Accederemos a la lista de pruebas,
MUNDO

Figura 10. Parametrizando los ordenadores en los cuales se podrn ejecutar las pruebas.

forma de carpetas), como se muestra en la Figura 8. Tambin, cuando visualizamos la ficha del requisito, en la parte inferior aparece la lista de sus sub-requisitos, lo cual facilita muchsimo el trabajo con los requisitos complejos que demandan una gran cantidad de documentacin (ver la Figura 9). Como RTH est preparado para que varios usuarios puedan trabajar con los requisitos, permite que un usuario determinado lo pueda bloquear, de manera tal que el resto de los usuarios no puedan realizar ninguna alteracin al requisito. Es decir, el que lo bloquea se apodera de ste, hasta tanto lo desbloquee. Haciendo click en el vnculo Home (Principal), podemos ver cmo se va modificando la vista de la pgina principal en la cual nos muestra las novedades del proyecto en el cual estamos trabajando con los nuevos requisitos y sub-requisitos que se fueron agregando.

Parametrizando las pruebas


Antes de poder comenzar a agregar nuevas pruebas, tenemos que parametrizar cinco aspectos indicando qu valores pueden contener, es decir, qu elementos aparecern disponibles para seleccionar en los cuadros de lista desplegables correspondientes, de manera similar a como hicimos anteriormente para los requisitos:

El aspecto cubierto por la prueba (test area). Por ejemplo: Bugs (Errores). Nuevas funcionalidades. Pruebas. Resultados de pruebas. El tipo de documento de prueba (test document type). Por ejemplo: Casos de prueba. Reglas de funcionamiento. El entorno de la prueba (test environment). Por ejemplo: Control de calidad (QA). Desarrollo. Produccin. El ordenador en el cual se llevar a cabo la prueba (Test machine), con su nombre, su ubicacin y su direccin IP. El tipo de prueba (test type). Por ejemplo: Funcional. Rendimiento. Regresin. Para definir toda esta parametrizacin, debemos entrar en Manage (Gestionar) en la barra superior, hacer click en el nombre del proyecto y luego en Tests (Pruebas). Aparecer una nueva barra con todos los aspectos explicados anteriormente. Haciendo click en cada uno de ellos, podremos completar los cuadros de texto correspondientes e ir presionando el botn Add (Agregar) para que se vaya formando la lista de elementos que aparecer en la parte

Figura 11. Agregando una nueva prueba a un requisito.


www.revistasprofesionales.com

17

Linux

n106

Tecnologa y Negocio

pudiendo visualizar la que hemos agregado (ver la Figura 12), con una presentacin a la que ya nos ha acostumbrado RTH. Se asignar un identificador nico numrico para la nueva prueba (ID). Tambin vamos a encontrar la lista de pruebas dentro de la ficha del requisito al cual se encuentra asociada la nueva. En la parte superior podemos ver diferentes cuadros de lista desplegable y cuadros de texto que nos permiten filtrar por diversas condiciones a las pruebas que se muestran en la tabla inferior. De esta manera, fcilmente podemos acceder a visualizar solamente un subconjunto del total de pruebas, como tambin suceda con los requisitos, tras especificar los valores y presionar el botn Filter (Filtrar). Al igual que en la lista de requisitos, tenemos un vnculo Export to Excel (Exportar a Excel), para facilitarnos un posterior anlisis con una planilla de clculo. Haciendo click en el vnculo que muestra el identificador nico numrico para una prueba (Test ID), accedemos a su ficha detallada, como suceda con los requisitos, a partir de la cual tenemos acceso a diferentes acciones para llevar a cabo con sta. En RTH, al entrar en cada entidad, encontramos las operaciones que podemos efectuar con sta. Sin embargo, como siempre aclaramos, tenemos que prestar atencin a los vnculos y a los botones, pues suelen cambiar de nombre aunque llevan a cabo acciones similares. El funcionamiento es bastante similar al que hemos explicado para los requisitos, con algunas diferencias propias de la gestin de las pruebas, sus flujos de trabajo y estados. A partir de la ficha de una prueba (ver la Figura 13), es posible llevar a cabo lo siguiente: Actualizar los datos de la prueba, utilizando el botn Update test (Actualizar la prueba). Copiar los datos de la prueba para generar otra en un proyecto diferente, empleando el botn Copy test to (Copiar prueba a). Definir los detalles de los pasos que se deben llevar a cabo para realizar la prueba, a travs del vnculo Test steps (Pasos de la prueba). Tambin se pueden importar desde un archivo en formato Excel los pasos o exportarlos. Modificar el requisito asociado a la prueba, con el vnculo Req assoc (Requisito asociado). Subir ficheros con documentacin de soporte para las pruebas y con control de versiones, empleando el vnculo Supporting docs (Documentacin de soporte). De esta manera, el encargado de llevar a cabo o de controlar la prueba, con unos pocos clicks puede tener a su alcance toda la documentacin relacionada con el requisito y con las
MUNDO

Figura 12. La lista de pruebas y la barra superior que permite filtrar por diferentes campos.

Figura 13. La ficha correspondiente a una prueba.

pruebas, algo que sera muy difcil de conseguir rpidamente sin esta clase de herramientas. Si todo est correctamente organizado, inclusive lo puede hacer sin tener que consultar al desarrollador, al analista funcional, al arquitecto de software o al diseador, pues todo queda disponible a travs de RTH. Eliminar la prueba, a travs del botn Delete test (Eliminar la prueba). Haciendo click en el vnculo Home (Principal), podemos ver cmo nuevamente se va modificando la vista de la pgina principal en la cual nos muestra las novedades del proyecto con las nuevas pruebas que se fueron agregando.

Generando conjuntos de pruebas y liberando versiones


Una vez que estn definidos los requisitos y las pruebas, llega la hora de juntar las piezas en un flujo de trabajo un poco ms complicado. Pero, como ya estamos acostumbrados a la forma de trabajar de RTH, vamos a brindar menos detalle de los pasos especficos que debemos llevar a cabo. Tenemos que definir un nombre para la versin del proyecto en el cual estamos trabajando, lo cual se hace en el vnculo Release (Versin), completando el nombre y la descripcin y presionando el botn Add (Agregar). Luego, hay que hacer click en el vnculo con el nombre de la versin y agregar un nombre de construccin (build name). Nuevamente, tenemos que completar el nombre y su descripcin y presionar el botn Add (Agregar).

Ahora, hay que hacer click en el vnculo con el nombre de la construccin y agregar un conjunto de pruebas (test set), el cual contendr a todas las pruebas que se deben llevar a cabo para que se pueda generar esa construccin correspondiente a la versin especificada. Debemos completar el nombre y su descripcin, presionar el botn Add (Agregar) y luego hacer click en el vnculo Add tests (Agregar pruebas). En este punto, hay que seleccionar las diferentes pruebas que van a conformar al conjunto y luego hacer click en el botn Create. Tambin podemos subir un fichero que defina el plan de ejecucin de las pruebas (test plan file). Luego, llegar el momento de ejecutar las pruebas y de registrar los resultados. Para ello, tenemos que hacer click en el vnculo Test results (Resultados de las pruebas). Haciendo click en el vnculo Update (Actualizar) que se encuentra al final de cada fila correspondiente a una prueba, podremos indicar los resultados de su ejecucin, con comentarios y detalles, pudiendo inclusive avisar a determinados usuarios por correo electrnico de esta informacin en el mismo paso. Si configuramos todo correctamente, no tendremos necesidad de recurrir al cliente de correo para hacerlo, lo cual nos ahorra una buena cantidad de tiempo y facilita mucho el flujo de trabajo, especialmente, en los proyectos complejos. A medida que vamos actualizando los resultados de las pruebas, se ir reflejando el avance y repercutir en los informes que analizaremos a continuacin.

Linux

n106

18

www.revistasprofesionales.com

Gestin de requisitos de software con RTH 1.6.3 (II)

Tecnologa y Negocio

Trabajando con defectos


RTH tambin nos permite gestionar los defectos, que se pueden detectar en produccin a travs de los informes de los usuarios o bien durante las pruebas. Antes de poder comenzar a agregar nuevos defectos, tenemos que parametrizar dos aspectos indicando qu valores pueden contener, es decir, qu elementos aparecern disponibles para seleccionar en los cuadros de lista desplegables correspondientes, de manera similar a como hicimos anteriormente para los requisitos y para las pruebas, por lo cual, no explicaremos los pasos detallados: La categora del defecto (defect category). El componente defectuoso (defect component). Para definir toda esta parametrizacin, debemos entrar en Manage (Gestionar) en la barra superior, hacer click en el nombre del proyecto y luego en Defects (Defectos). Aparecer una nueva barra con los dos aspectos explicados anteriormente. Haciendo click en cada uno de ellos, podremos completar el cuadro de texto e ir presionando el botn Add (Agregar) para que se vaya formando la lista de elementos que aparecer en la parte habitual, como ya nos ha acostumbrado la interfaz de RTH. Para agregar un nuevo defecto a un proyecto, hay que hacer click en Defects (Defectos) en la barra superior y aparecer una tabla con todos los defectos. Haciendo click en Add defect (Agregar defecto), aparecer un panel para cargar todos sus datos, incluyendo la versin (release) en la cual se encontr, a cul se le asigna, qu usuario ser el responsable de su seguimiento y cul otro de corregirlo. Aunque parezca algo sencillo, contar con este esquema de gestin de defectos es muy til para no perderlos en varios documentos y permite conseguir una mayor eficiencia a la hora de planificar los tiempos de los grupos de trabajo y sus prioridades, pues con unos pocos clicks podemos ver los requerimientos, los defectos, los avances de los conjuntos de pruebas, las novedades, entre otros datos.

Figura 14. Resultados del informe Test signoff para la versin BETA 1, construccin CORE1 y conjunto de pruebas Pruebas para beta 1.

el estado actual a los usuarios ante una llamada o un correo inesperado: Test area. Muestra el nmero de pruebas ejecutadas para una versin, construccin y conjunto de pruebas determinado (Release, Build, testset), los cuales deberemos ir seleccionando para conseguir el informe. Build status. Presenta el estado de todas las pruebas para una versin y construccin determinadas (Release, Build). Failed verifications. Muestra informacin detallada de todas las verificaciones que presentaron problemas para una versin, construccin y conjunto de pruebas determinado (Release, Build, testset). Requirements coverage. Presenta la cobertura de requerimientos para una versin, construccin y conjunto de pruebas determinado (Release, Build, testset). Test signoff. Muestra informacin detallada sobre las pruebas de una versin, construccin y conjunto de pruebas determinado (Release, Build, testset). Ver la Figura 14. Si bien faltan algunos informes necesarios para una gestin de requisitos ms precisa, como nos permite exportar informacin a un formato Excel y debido a que todo se encuentra en un modelo de datos de MySQL muy fcil de comprender, no encontraremos mayores limitaciones para mejorar este aspecto.

Informes
Como no poda faltar para una gestin eficiente de requisitos de software, es fundamental contar con determinados informes que nos permitan visualizar ciertos aspectos importantes. No son muchos, pero, en general, encontramos algunos bastante tiles haciendo click en el vnculo Reporting (Informes), a la hora de tener que dar respuestas rpidas sobre

Conclusin
En esta entrega, hemos desarrollado ejemplos concretos de la gestin de requisitos paso a paso con RTH 1.6.3, los cuales servirn como una buena base para aplicarlos a cualquier proyecto en el cual busquemos organizar el trabajo con los requisitos. Si bien la instalacin lleva su tiempo y a veces encontramos que la integridad conceptual de la interfaz con el usuario no se respe-

ta en todas las ocasiones, es una herramienta muy til y que con un pequeo esfuerzo nos puede resolver todos los inconvenientes relacionados con la gestin desordenada de los requisitos. Trabajando con RTH para la gestin de requisitos, la documentacin no se pierde y se puede organizar muy bien, lo cual facilita una excelente trazabilidad, especialmente en los proyectos medianos y de envergadura, en los cuales, trabajar nicamente con llamadas telefnicas, correos electrnicos, mensajera instantnea y SMS nos genera mltiples canales de comunicacin que luego llevan horas rastrear para encontrar qu habamos acordado, con quin y qu documentos haban involucrados. RTH simplifica enormemente la organizacin de la documentacin con un buen sistema jerrquico que no nos limitar en absoluto para cualquier tamao de proyecto. Al estar montado sobre un motor de base de datos potente como lo es MySQL, quedaremos limitados nicamente por la cantidad de espacio en disco que vayamos a destinar a cada proyecto y a la voluntad de cargar todo en el sistema de gestin de requisitos. Para los que estn interesados en mejorar el producto o adaptarlo mucho mejor a sus necesidades, como siempre, la ventaja de ser open source (de cdigo abierto) es una bendicin y, tambin resulta un sistema muy bueno para tomar cierto aprendizaje de buenas prcticas al trabajar con PHP y bases de datos. No hay que dejarse engaar por la sencilla interfaz con el usuario que presenta, pues las capacidades de RTH en organizar la informacin hacen que valga la pena instarlo y probarlo en uno o ms proyectos. Para ser una herramienta de gestin de requisitos de software totalmente completa, lo que le falta es ayudarnos en la automatizacin de las pruebas.
MUNDO

www.revistasprofesionales.com

19

Linux

n106

Otro ao ms la Junta de Comunidades de Castilla-La Mancha, mediante el Centro de Excelencia de Software Libre de Castilla-La Mancha (CESLCAM), vuelve a apostar por el fomento de la Comunidad en el mbito de la Universidad. Dentro de las iniciativas llevadas a cabo por el CESLCAM se encuentra la puesta en marcha de una nueva edicin del Concurso Universitario de Software Libre de Castilla-La Mancha, que para este ao cuenta con un presupuesto en premios de ms de 9.000 euros. El concurso ha sido promovido por el gobierno regional a travs del CESLCAM y las Escuelas de la Universidad de Castilla-La Mancha (UCLM): Escuela Universitaria Politcnica de Cuenca (EUPC), Escuela Superior de Ingeniera Informtica de Albacete (ESII) y Escuela Superior Informtica de Ciudad Real (ESI). Para los participantes de la edicin anterior el concurso debe entenderse como una manera de aprender a disear un programa, tomar decisiones y desarrollar una aplicacin informtica real. Algo que para ellos mismos es una necesidad fundamental, pues durante los estudios universitarios no siempre se tiene la oportunidad de incorporar todo lo aprendido en un aplicacin completa. El CESLCAM es un centro que nace con el objetivo de dinamizar y difundir el Software Libre en Castilla La Mancha, facilitando informacin y asesorando a administraciones, empresas y usuarios finales que deseen conocer o utilizar este tipo de software. Dentro de las lneas de actuacin del centro destaca el observatorio tecnolgico, la teleformacin, y la certificacin y asesoramiento en el contexto del Software Libre. En los siguientes enlaces se puede encontrar ms informacin sobre el concurso: Correo del Concurso Regional: concurso@ceslcam.com Web del Concurso Regional: www.ceslcam.com/concurso Web del Concurso Estatal: www.concursosoftwarelibre.org

Suscripcin a Mundo Linux


SUSCRIPCIN PARA ESPAA Suscripcin anual con 25% descuento: 31,50 euros (8,95 euros de ahorro) FORMAS DE PAGO PARA ESPAA Giro Postal a Revistas Profesionales, S.L. Transferencia al Banco Popular: c.c: 0075/1040/43/0600047439 Taln Bancario a nombre de Revistas Profesionales Domiciliacin Bancaria Tarjeta de crdito + fecha de caducidad

SUSCRIPCIN PARA EXTRANJERO

FORMA DE PAGO EXTRANJERO Suscripcin anual con 25% descuento Tarjeta de crdito + fecha de caducidad Europa: 43,50 euros (gastos de envo incluidos) Resto de paises: 55,50 euros (gastos de envo incluidos)

Suscrbase desde nuestra web www.revistasprofesionales.com Ms informacin en el telfono 91 304 87 64, en el fax 91 327 13 07 y en rpsuscripciones@revistasprofesionales.com

Tecnologa y Negocio

Trabajo Colaborativo
David Roldn Martnez

La revolucin de Internet est cambiando tambin la manera en que se concibe el trabajo en grupo y la gestin de proyectos. Ya no es necesaria la presencia fsica de los componentes de un mismo grupo de trabajo. Este artculo trata de acercar al lector al concepto de trabajo colaborativo, analizando para ello algunas herramientas como los blogs, los wikis, la mensajera instantnea, etc. Centrndonos ms en la gestin de proyectos, se describe con mayor detalle la herramienta phpCollab, una de ms utilizadas del mercado para estas tareas.
Qu es el trabajo colaborativo?
La utilizacin de las nuevas tecnologas supone la dilucin de las barreras fsicas que condicionaban, en gran medida, el funcionamiento de las organizaciones tradicionales, al hacer posible, por un lado, la distribucin de los miembros entre diferentes emplazamientos fsicos o ubicaciones geogrficas y, por otro, la participacin de agen-

tes que anteriormente no estaban presentes por en encontrarse localizados en algn punto lejano. En un entorno como ste, se hacen imprescindibles herramientas que faciliten las comunicaciones entre los diferentes agentes implicados, ya sean stas sncronas o asncronas. Y es aqu donde entran en juego las herramientas y soluciones de trabajo colaborativo. El trabajo colaborativo posee unas caractersticas propias que lo diferencian de otras modalidades de trabajo en grupo (ver Figura 1). Quiz, uno de los aspectos ms importantes es que el espacio de trabajo en grupo se percibe como un repositorio de informacin e ideas propias en el que se eliminan las fronteras espaciales y temporales.

Herramientas de trabajo colaborativo


La tecnologa bsica de la colaboracin incluye cuatro grandes grupos (ver figura 2), que son: Repositorios: se trata de bases de datos centralizadas a las que los miembros de un determinado grupo pueden acceder para obtener documentos, modelos, programas y cualquier otra forma de contenido. Un ejemplo son los sistemas de control de versiones.

Figura 2. Herramientas de trabajo colaborativo.

Figura 1. Caractersticas diferenciadoras del trabajo colaborativo. MUNDO

Herramientas de comunicacin: aplicaciones que permiten la comunicacin entre los participantes el en grupo. Algunos ejemplos son los blogs y los wikis. Agenda y programadores: se trata de utilidades que permiten la programacin automtica y compartida de reuniones en funcin de los roles de cada uno de los miembros del grupo. Automatizacin de procesos: simplifican muchas tareas como la gestin de proyectos al automatizar parte del proceso.

Linux

n106

22

www.revistasprofesionales.com

Trabajo Colaborativo

Tecnologa y Negocio

BSCW. Basic Support for Cooperative Work. (Manual). Joomla! MimerDesk. SHADOW Networkspace (SNS). Center for Technology Innovations in Education (CTIE). University of Missouri-Columbia. ACollab: Accessible Colaboration Environment PHPROJEKT. Open phpCollab. [Demo] Source CHEF. CompreHensive collaborativE Framework. University of Michigan. USA. PHP GroupWare EGroupware Enterprise. GROUP.longe. WEBO. Tikiwiki. Twiggi. AXIS groupware. TUTOS. LearnLoop. Web based GroupWare for collaborative learning. Cellarius. Group Collaboration and communication center. CVW. Collaborative Virtual Workspace. Fle3. Future Learning Environment. AUC. Authenticated User Community for Education.
Figura 3. Entornos de trabajo colaborativo (Fuente: Centro de Supercomputacin de Galicia).

Figura 5. Asociacin de etiquetas a un contenido del blog.

En el mercado, existe un gran cantidad de soluciones de trabajo colaborativo, aunque en este artculo nos centraremos nicamente en las herramientas open source (tabla de la Figura 3). Precisamente la corriente open source, ms conocida como software libre, es uno de los resultados del trabajo colaborativo ms representativos.

Sistemas de control de versiones


Un sistema de control de versiones permite almacenar metadatos asociados a un conjunto de datos almacenados en un repositorio de contenidos. En realidad, un repositorio, en su versin ms simple, es un servidor de ficheros en el que se van almacenando las distintas versiones de los ficheros que contiene, siendo dichas versiones fcilmente accesibles, gracias a los metadatos del sistema de control de versiones. Generalmente, los sistemas de control de versiones siguen una arquitectura cliente-servidor en donde el servidor guarda las distintas versiones de los contenidos del proyecto y los clientes que se conectan para obtener una determinada versin de dicho proyecto. Una vez descargada sta, el cliente trabaja en local y las modificaciones que realice en el recurso local del repositorio nicamente pasarn al repositorio cuando el cliente as lo enve. En
Figura 4. Pantalla de principal de http://davidroldan-martinez.blogspot.com.

ese momento, la versin actual del proyecto incluir la nueva versin del recurso, de tal forma, que si ahora otro cliente se descarga la versin actual del proyecto, incluira ya el nuevo recurso. Esta forma de trabajar puede dar lugar a conflictos entre las modificaciones realizadas por clientes diferentes y, por ello, los sistemas de control de versiones incluyen herramientas de resolucin de conflictos. Los dos sistemas de control de versiones ms extendidos son el CVS y el Subversion.

fcilmente. Constituyen una evolucin de los foros de discusin que se han enriquecido con una mayor versatilidad y una interfaz de usuario mucho ms amigable. Ofrecen soporte a listas de discusin sobre los temas ms variados en las que, junto con el texto de los comentarios es posible incluir imgenes, ficheros de audio, etc. Un ejemplo de este tipo de blog lo encontramos en http://david-roldan-martinez. blogspot.com (ver Figura 4), un blog sobre temas relacionados con el e-learning. Un blog es una simplificacin de un gestor de contenidos (CMS, Content Management System). Su gran xito entre los internautas queda justificado porque no exigen conocimientos en la creacin de pginas web, ni de diseo o programacin informtica. Prcticamente, a cualquiera que sea capaz de navegar por Internet y de manejar un procesador de textos, le es posible gestionar un blog. Los contenidos de un blog tienen asociada etiquetas (tags) que permiten su clasificacin, de tal forma que cuando un usuario accede a la pgina principal del blog se encuentra con los contenidos agrupados en tema, donde cada tema es una etiqueta (ver Figura 5). Un mismo contenido puede tener asociadas varias etiquetas. Por otra parte,

Blogs
Los blogs, tambin bitcoras, son un medio de difusin de informacin en Internet muy reciente que consiste en la recopilacin de informacin por la que es posible navegar

Figura 6. Resmenes de un blog por correo electrnico. MUNDO

www.revistasprofesionales.com

23

Linux

n106

Tecnologa y Negocio

los contenidos estn perfectamente fechados e identificados. Casi todos los blogs ofrecen la posibilidad de asociar o sindicar los contenidos de otros blogs. Tambin es posible suscribirse a un blog, de tal forma que se reciba un correo electrnico cada vez que el autor del blog crea una nueva entrada (ver Figura 6).

Entre los programas que permiten la implementacin de wikis pueden citarse: UseModWiki MediaWiki PhpWiki TikiWiki DokuWiki WikkaWiki MoinMoin Tiddlywiki

Mensajera instantnea
En cierto modo, se trata de una evolucin de las aplicaciones de Chat a las que se le han ido aadiendo herramientas como el intercambio de ficheros de audio o video, la multiconferencias, etc. Una de sus caractersticas principales de los sistemas de mensajera instantnea es la deteccin de presencia. Cada usuario dispone de una lista de contactos y cuando alguno de los miembros de dicha de lista de contactos, enciende su aplicacin, los usuarios que los tienen incluidos como contactos reciben un mensaje de notificacin. Tampoco podemos dejar de mencionar las aplicaciones de VoIP como Skype o Google Talk (ver Figura 8). Estas aplicaciones permiten el establecimiento de llamadas telefnicas a travs de Internet utilizando como dispositivo de usuario el ordenador, en lugar del telfono. Skype, por ejemplo, para un mismo contacto, permite elegir entre establecer una llamada o videollamada o comenzar un chat. Tambin es posible enviar SMS y se dispone de buzn de voz. Si, adems, los usuarios tienen instalada una web cam, se pueden crear videoconferencias. Incluso se dispone de versiones para dispositivos mviles, dando un paso ms hacia la comunicacin ubicua.

Entre otras, ofrece funcionalidades de calendario, convocatoria de reuniones, etc. Un ejemplo es Google Calendar, que adems de servir para gestionar varias agendas personales, puede emplearse como herramienta de trabajo en grupo. Efectivamente, Google Calendar permite que un usuario comparta su agenda con un grupo de usuarios e incluso que su agenda sea totalmente pblica. (ver Figura 9). La gestin colaborativa de proyectos es un sistema de trabajo en grupo que pone a disposicin de todos los integrantes de un grupo de trabajo de un proyecto dado, todas las herramientas necesarias para gestionarlo.

Figura 7. Ejemplo (http://es.wikipedia.org).

de

Wiki

Wikis
La palabra Wiki viene del trmino hawaiano wiki-wiki, que significa rpido, y que utilizaba los remeros de las canoas. Un Wiki es un portal web cuyos contenidos pueden ser visitados y editados libremente por cualquier internauta. Como cualquier internauta puede modificar el contenido del wiki, por lo que se constituyen como la herramienta ms adecuada en la elaboracin de un documento comn entre varios autores, como un plan de proyecto, por ejemplo. Los Wikis sirven de soporte a la edicin colaborativa de documentos y su ejemplo ms representativo es la WikiPedia. Se trata, tal y como se indica en su pgina web, de una enciclopedia escrita colaborativamente por sus lectores. Hay mucha gente mejorando Wikipedia constantemente, con cientos de ediciones por hora, que son registradas en el historial y en los cambios recientes. Las ediciones que consisten en vandalismo o disparates son revertidas rpidamente. (ver Figura 7).

Figura 10. Pgina principal de un usuario.

Uno de los ejemplos ms representativos es el Php-Collab (http://www.php-collab.com). Una vez autenticado, desde la pgina principal es posible acceder a un men de gestin de todos los proyectos en los que se

Figura 9. Ejemplo de agenda compartida.

Agendas compartidas
Una agenda compartida es una aplicacin web que permite gestionar tanto la agenda de cada uno de los miembros de un grupo como la del grupo completo a travs de una interfaz web amigable y de fcil manejo.

Figura 8. Skype. MUNDO

Figura 11. Aadir un proyecto nuevo.

Linux

n106

24

www.revistasprofesionales.com

Trabajo Colaborativo

Tecnologa y Negocio

est trabajando. Esta pgina est totalmente personalizada, es decir, que si otros usuarios participan en el mismo proyecto pero con un rol diferente, la interfaz que se le mostrar variar. Por ejemplo, la interfaz no es la misma para un administrador que para un usuario regular. (ver Figura 10). En caso de tener permisos de gestin sobre un proyecto dado, las funcionalidades disponibles son las siguientes: Navegacin principal: aparece en la parte superior de cualquier pgina del sitio web del proyecto. Migas de pan: indican en qu parte de la navegacin principal se encuentra el usuario.

Figura 13. Aadir un foro.

Figura 15. Resultados de un informe.

Figura 12. Aadir tarea. Figura 16. Aadir una nota.

Mis proyectos: da acceso a la lista de proyectos a los que est asignado un usuario, as como a la creacin de proyectos nuevos o al borrado de proyectos existentes. La Figura 11 muestra la pantalla de creacin de un proyecto: Mis tareas: el usuario puede ver la lista de tareas que tiene asignada, con una referencia al proyecto a la que pertenece. Cada tarea se caracteriza por un nombre, una duracin, unas fechas de inicio y fin, los recursos asignados, etc. (ver Figura 12). Mis foros: en cada proyecto es posible abrir uno o varios foros de discusin sobre temas muy variados como la solucin ms adecuada a un determinado problema. El usuario puede acceder a ellos y participar. (ver Figura 13).

Figura 14. Creacin de un informe.

Fecha de finalizacin del proyecto. Proyectos acabados hasta la fecha. Estado del proyecto o tarea. Prioridad del estado o la tarea. Mis notas: los usuarios pueden tomar sus propias notas. (ver Figura 16).

Mis informes: es posible crear, para cada proyecto, informes que indiquen el estado del proyecto, la prioridad de las tareas que tengan asignadas los usuarios, etc. (ver Figura 14). Como vemos, la creacin de informes es muy flexible y permite consultar gran cantidad de parmetros: (ver Figura 15). Lista de clientes de la organizacin. Lista de proyectos de la organizacin. Lista de usuarios y clientes asignados a los distintos proyectos.

Conclusiones
En este artculo hemos aprendido qu es el trabajo colaborativo, qu ventajas e inconvenientes tiene y el tipo de herramientas necesarias para poner en marcha una iniciativa de este tipo. Estas soluciones se estn extendiendo en algunos sectores productivos y, a medida que vayan demostrando su eficiencia y su efectividad, sin duda, se generalizarn, impulsadas por aplicaciones futuras.
MUNDO

www.revistasprofesionales.com

25

Linux

n106

Investigacin

El delito informtico

Anlisis forense informtico


Jos Antonio lvarez Bermejo

El Anlisis Forense Informtico es un rea que engloba al Anlisis Forense de Intrusiones. En ambos casos las Tecnologas de la Informacin suponen una ayuda inestimable, tanto para cometer el crimen como para solventarlo e investigarlo.
En este trabajo vamos a abordar las tcnicas bsicas que un profesional debera seguir para llevar a cabo las investigaciones sobre los soportes digitales (no abordaremos los anlisis de intrusiones) para buscar evidencias aunque estas hayan sido eliminadas. Tambin se presentar la nueva rea en el anlisis forense: BRAP BRowser APplications-. 1. Anlisis forense informtico: Guarda relacin con la investigacin de situaciones donde existen indicios de crimen o comportamientos abusivos incumplimiento de normas legales - en los que se han empleado ordenadores, como medio o como fin. 2. Anlisis forense de intrusiones: Guarda relacin con el estudio de situaciones donde se han producido ataques o abusos contra ordenadores per-se.

Seguridad Informtica y su relacin con el delito informtico y el Anlisis Forense


Los expertos en AFI no slo han de ser expertos en hardware y software sino adems han de ser buenos profesionales en el rea de la Seguridad Informtica. La relacin entre la seguridad informtica y el anlisis forense alumbran dos observaciones. Primera, el auge de la red y el auge del uso de la misma por las empresas para globalizar su negocio han hecho muy difcil establecer polticas de seguridad confiables. Segundo, en un gran porcentaje quienes violan los sistemas son los mismos empleados (con lo que el anlisis de sus ordenadores se hace de gran utilidad a la hora de analizar de donde vino el ataque). El objetivo de la seguridad informtica en su amplio sentido es el de preservar un sistema asptico a ataques. La misin de la seguridad informtica es garantizar que tanto el hardware, software, archivos, servicios, etc permanezcan intocables e inviolables, garantizando los principios de confidencialidad, integridad, disponibilidad y autenticidad (concepto relacionado con el de integridad).

La evidencia electrnica
La red Internet proporciona un marco til tanto para desarrollar aplicaciones online tremendamente complejas e igualmente vulnerables a delitos informticos como para establecer un canal de comunicacin annimo que permita cometer otros tipos de delitos como los chantajes, extorsiones, pederastia, etc. Consecuentemente el AFI se apoya en el estudio y chequeo de numerosas fuentes de informacin. Pero de todas estas fuentes de informacin, la que constituye una beta de informacin forense ms til es la recogida de los discos duros de ordenadores personales. Como consecuencia de esta necesidad de anlisis, existen empresas especializadas en extraer informacin ya destruida de soportes magnticos. Localizar informacin en un disco duro puede ser tan sencillo como buscar archivos y comprobar su contenido. Alternativamente tambin puede llegarse a la necesidad de recuperar informacin de reas inaccesibles del disco y una vez localizada esta informacin reunirla cuidadosamente para extraer la informacin que constituye la evidencia. A estas reas restringidas al acceso del usuario convencional y a los datos que las mismas contienen se las denominan reas ambientales.

El delito informtico
El Anlisis Forense Informtico (AFI en adelante) pretende obtener las evidencias digitales existentes en computadoras, etc. que permitan conocer ms sobre el delito o el acto abusivo. Los abusos que se cometen se pueden respaldar con el anonimato y es ah donde ha de intervenir el AFI. Los delitos en los que participan las computadoras pueden clasificarse atendiendo al papel que ha jugado la misma: El computador es el destino del ataque. El atacante ha pretendido vulnerar la integridad, confidencialidad o la disponibilidad de los datos que en ella residen. El computador es un repositorio de informacin que vulnera la ley o que ha servido para vulnerarla. La computadora ha sido empleada como medio para cometer el delito (fuente del envo de un gusano a Internet). Esta clasificacin es no excluyente. El Anlisis Forense Informtico y el Anlisis Forense de Intrusiones se emplea para determinar una vez incautado el computador, la evidencia de delito.
MUNDO

Linux

n106

26

www.revistasprofesionales.com

Anlisis forense informtico

Investigacin

La extraccin de informacin de una computadora u ordenador personal, ya sea desde los sistemas de archivos accesibles al usuario como de las reas ambientales ha de hacerse con un cuidado extremo para que los datos recabados no invaliden las pruebas (no se altere la integridad de los datos almacenados) ante un tribunal. Estos procedimientos estn muy bien establecidos en los ordenadores personales y no tanto en dispositivos mviles como los SmartPhones o los UMPCs.

Procedimientos de arranque, bloqueadores de escritura y plataformas AFI


Antes de iniciar el proceso de anlisis en un ordenador es preciso ser cautos pues al iniciar el sistema operativo podemos perder demasiada informacin pues el sistema puede reescribir informacin del registro del sistema, puede alterar fechas de creacin, escritura, etc. de archivos importantes. Normalmente cuando se rescata un PC para ser analizado se debe cambiar el sistema de arranque y luego crear una imagen del mismo para estudiarlo con cuidado. Para asegurar que el sistema estudiado no ha sido modificado desde que se extrajo, los analistas forenses han de evitar el proceso de arranque convencional, es decir, deben iniciar el sistema de una forma controlada (con sus propios CDs o DVDs). Esto precisar la redireccin del arranque para que se desve al CD o DVD del forense. La necesidad de dotarse de un arranque alternativo y limpio es muy importante para garantizar que los archivos estudiados slo fueron modificados por el usuario original. Este sistema alternativo es especialmente necesario en los sistemas operativos de Microsoft (Windows 95 y en adelante). Una vez que el sistema ha sido iniciado de forma asptica es preciso garantizar que ningn proceso alterar las caractersticas de los archivos del disco, para esto es preciso usar un bloqueador de escrituras. El bloqueo de escrituras puede implementarse en hardware o en software. La funcin de un bloqueador de escritura es garantizar que cualquier escritura en disco que no sea planificada o conocida por el forense se aborte. Esto garantiza que antes de crear la imagen del sistema no se corrompa ningn archivo. Los bloqueadores hardware son todava ms fiables que los bloqueadores software ya que estos se apoyan en la intercepcin de interrupciones del sistema y este sistema puede ser evitado o no funcionar correctamente. Antes de crear la imagen del sistema es preciso que exista un bloqueador de escritura para que la imagen sea una fuente fiable de estudio. Uno de los mejores sistemas bloqueadores de escritura es FastBloc (de Guidance Software Inc), este software permite duplicar el

disco duro a estudiar sin alterar ningn archivo. Es excelente sobre todo para sistemas Windows. Linux por otro lado y dada su historia y naturaleza (y su evolucin desde UNIX) posee una panoplia de herramientas abrumadora, una de ellas es dd una herramienta que ha obtenido criticas muy positivas desde el campo del AFI. La NASA tambin tiene potentsimas herramientas para el anlisis forense en sistemas operativos Linux. Linux ha sido designada una posicin privilegiada como plataforma para el anlisis forense. Este puesto se lo ha ganado gracias a su amplio repertorio de herramientas del que hace gala, a parte de por poder reconocer una amplia gama de sistemas de archivos, incluyendo NFS, NTFS y VFAT. Es decir tras tener una imagen de una particin de un disco duro usando dd un analista forense que trabaje con Linux puede analizar esta particin montndola en modo loopback y en modo slo lectura, ya sea un sistema de archivos de Linux o de Microsoft Windows. Esto le da al investigador la capacidad de, adems, estudiar los archivos contenidos en las reas que antes hemos denominado reas ambiente. A estas herramientas hay que aadirle las herramientas de bsqueda de cadenas que incorpora Linux tales como grep, herramientas de chequeo de integridad como md5sum, etc.

usuario rea ambiente-), concretamente en sectores prximos al inicio del disco. En UNIX /Linux el papel del mapa de archivos lo cumplen unas estructuras de datos especiales llamados index node list (i-list). En el caso de Microsoft Windows los mapas de archivos son los sistemas FAT (File Allocation Table) o NTFS (NT File System).

Imagen y anlisis de un disco duro


Hay dos opciones, crear la imagen completa del disco, de este modo se pueden realizar anlisis ms exhaustivos. O crear una imagen de una particin o sesgo del sistema de archivos. En este caso se realiza un duplicado bit a bit, o sector a sector o si es una imagen incremental entonces la imagen se denomina bit-stream. Estas imgenes son extremadamente tiles pues permiten realizar un anlisis exhaustivo incluso de las areas ambiente. Las imgenes sesgadas o parcializadas se denominan: file-by-file o imagen logica.

Imagen de un fichero
Si la imagen de un disco completo no procede, entonces antes de realizar la imagen del archivo(s) en cuestin (es preciso identificar qu ficheros podrn ser de utilidad para el posterior anlisis y es aqu donde entra la pericia y destrezas tcnicas del analista) se deben autentificar, es decir, antes de llevarse el archivo para estudiarlos es preciso garantizar que los dos archivos son copias exactas y que la integridad del original no ha sido alterada, de modo que las conclusiones y las evidencias recogidas en la copia son aplicables sin lugar a dudas al fichero original. El proceso ha de leer el archivo original, realizar el checksum (con una funcin hash de una direccin) y luego crear la imagen del mismo de manera no invasiva, es decir, sin alterar ni una sola de las propiedades del archivo original. Las copias han de enviarse a medios de solo lectura. Si la copia supera el espacio tpico de un CD o DVD entonces se puede enviar a discos protegidos con bloqueadores de escritura.

El disco duro desde la perspectiva del AFI


La principal funcin de los servicios de gestin de archivos es la de almacenar la informacin de un fichero en el disco de forma tal que pueda ser recuperada de manera transparente y rpida. Este cometido se implementa de manera similar independientemente del sistema operativo con el que se trabaje. Los detalles de almacenamiento de la informacin (conceptos de bit, byte, cluster, cabeza, sector cilindro, direccionamiento LBA CHS, etc los obviaremos para centrar el tema de discusin). En resumen, el software de gestin de archivos de cada sistema operativo se encarga de mapear nombres de archivo a sectores de disco (direcciones de disco) usando la informacin almacenada en un mapa de archivos. Este mapa de archivos permite localizar cada uno de los sectores que componen el archivo concreto pues un archivo no tiene la obligacin de almacenarse en sectores contiguos del disco. Los sectores son unidades de informacin muy pequeos, por esto se agrupan en un ente de nivel superior llamado cluster. Un cluster es un conjunto de sectores contiguos. El mapa de archivos que es quien indexa para cada archivo dnde localizar todos los clsters que lo componen. Este mapa se sita en sectores especiales del disco (no accesibles al

reas ocultas (reas ambientales o de ambiente) de un disco al que se pretende aplicar el anlisis
Los anlisis fsicos (que se pueden llevar a cabo si se ha realizado una imagen bit-a-bit o del estilo) puede arrojar informacin forense muy importante y que adems no la revelan ningn archivo convencional del sistema de archivos. La informacin a la que hago referencia es informacin residual, accidental, informacin resultante de haber borrado archivos, por ejemplo. O informacin oculta deliberadamente por ejemplo informacin oculta en sectores de diferente tamao, o en tablas de particiones usando por ejemplo Partition Magic-. Tambin puede esconMUNDO

www.revistasprofesionales.com

27

Linux

n106

Investigacin

derse informacin usando sistemas de archivos esteganogrficos (ocultar informacin en imgenes por ejemplo). El trmino informacin ambiental hace referencia a aquellas reas del disco duro que no son accesibles ni a travs del nivel lgico ni de aplicacin. En realidad este trmino hace referencia a las reas del disco donde hay informacin til y que puede ser recuperada (informacin que recoge la actividad en el ambiente de trabajo). Uno de los espacios ms explotados es el rea libre que queda en cada clster en el caso de que el archivo no ocupe la totalidad del mismo. Por ejemplo, si se estn escribiendo sectores desde un bfer en memoria RAM a un disco, el ltimo sector escrito contendr informacin residual del bfer de memoria y el espacio restante hasta completar el tamao del clster contendr informacin ocupada previamente por un archivo que se ha borrado. Pero la informacin sigue ah presente. Los sectores del disco que no han sido asignados tambin contienen informacin muy interesante de archivos previamente eliminados o informacin oculta all deliberadamente. Como habrs podido intuir, borrar un archivo nicamente elimina la informacin del mismo que el mapa de archivo almacena (FAT, NTFS, NFS, .). De tal modo que la informacin del archivo sigue almacenada en los clsters y si no se sobrescriben (si nos apresuramos: desmontamos el sistema de archivo) , la informacin puede ser completamente recuperada. Los archivos de intercambio (swap) si el sistema operativo los mantiene (Windows NT en adelante) contienen informacin jugosa capaz de ser recuperada por las nuevas herramientas de anlisis. La informacin versa sobre contenidos de archivos, buffers abiertos, etc..).

Tabla 1.
Creacin de imgenes - Imgenes de memoria RAM (tiles para PDAs). - Imgenes de disco. - Bloqueadores de escritura. - Generadores de cdigos de integridad. Chequeadores de integridad. Anlisis - Recuperadores de informacin oculta. - Recuperadores de archivos. -Herramientas de chequeo de integridad para archivos y sistemas de archivos. - Conversin de archivos. - Filtrado de datos por fecha. - Herramientas de bsqueda cadenas. Visualizacin - Lneas de tiempo - Herramientas de anlisis de relaciones.

Anlisis lgico
Consiste en aplicar un anlisis del contenido del archivo, en muchos casos empleando la misma herramienta que lo gener, en otras herramientas especiales.

local y la traslada a la papelera donde sigue estando presente y recuperable. Borrar todas las referencias a un archivo (en Windows: seleccionar el archivo y pulsar Shift-del) consigue eliminar todas las referencias visibles por el sistema de archivos y por el mapa de archivos, la consecuencia es que los clsteres que ocupaba ese archivo quedan disponibles para otro cualquiera, pero su contenido sigue estando ah presente. Los archivos de intercambio o swap suelen tener todo o partes del archivo borrado si es que la aplicacin con la que se us el archivo hizo copias de seguridad temporales. Un mtodo efectivo capaz de dificultar la recuperacin de la informacin en mayor medida que los dos ltimos consiste en: Borrar el archivo (de todas las carpetas en las que est). Desfragmentar el disco duro. Copiar en el disco imgenes o ficheros grandes que ocupen todo el espacio restante, de este modo los clsteres usados por el archivo borrado quedarn ocupados con total seguridad por informacin de estos archivos. An con estas medidas se puede recuperar la informacin, por lo que para reducir la probabilidad se recomienda que el proceso (los dos ltimos pasos) se repitan algunas veces ms. Una herramienta capaz de realizar estas operaciones, pero de manera ms cmoda para el usuario es WipeInfo de Norton.

de aplicar de manera automatizada anlisis forenses a cualquier flujo de datos, ya residan en un disco, cd, dvd, red,

Procedimientos para recoger las evidencias de manera segura


1. Establecer un sistema de anlisis completamente asptico. 2. Elegir uno de los numerosos procedimientos de documentacin para recogida de evidencias electrnicas. 3. Usar un intrprete de comandos en el que se tenga cierta confianza y experiencia para extraer los datos del sistema en estudio. 4. Copiar los archivos de sistema para su estudio. 5. Determinar el proceso de apagado de la mquina en estudio: Se puede apagar con el procedimiento convencional lo que ocasionara que los buffers abiertos por el Sistema Operativo se almacenaran en disco (violando la regla 1). O un simple tirn del cable de la corriente para evitar esto. 6. Documentar la configuracin hardware del sistema. 7. Garantizar que cuando se est bajo estudio nadie tocar el sistema. 8. Adquisicin de datos de medios magnticos (adquisicin no invasiva). 9. Autentificar los datos copiados y las imgenes creadas. Se puede usar MD5 o SHA-1. 10. Proteccin contra cdigo malicioso: Evitar que durante la copia haya software que corrompa la evidencia, como virus, etc. 11. Almacenaje de las imgenes creadas : Se aconseja crear dos copias por imagen, una de seguridad y otra de trabajo donde podremos modificar y alterar archivos, hacer pruebas, etc.

Herramientas forenses
Borrado de archivos
El borrado de archivos y el limpiado del disco pone en dificultades al analista pero si se hace un buen trabajo se puede recuperar toda la informacin. Se puede obtener informacin til para el anlisis forense si quien hubiere borrado el mismo no lo hiciere de manera eficiente sino ineficiente. Es evidente que existen formas para complicar la recuperacin de informacin, pero no se suelen aplicar y en la mayora de los casos la informacin se recupera sin mayor dificultad. Un archivo borrado de una de las siguientes formas puede recuperarse: En Microsoft Windows, borrar el archivo envindolo a la papelera, nicamente borra la referencia al archivo desde la carpeta
MUNDO

Es posible identificar tres categoras de funcionalidad en el campo del anlisis forense: Creacin de imgenes, anlisis y visualizacin (ver tabla 1).

Plataformas/suites recomendadas:
EnCase, capaz de crear imgenes y montar sistemas de archivo para su estudio. En su interfaz podemos, una vez montado el sistema, acceder a muchas ms herramientas, entre ellas podemos encontrar tambin herramientas de temporalizacin (time-line) que sirven para auditar los cambios de un archivo debido a la actividad sobre l. ILook, tambin recoge las tres etapas pero destaca en su mecanismo de bloqueo de escritura. CFIT: Es una herramienta desarrollada por el Departamento de Defensa de Australia. Es capaz

Procedimientos para analizar la informacin


1. Anlisis lgico de los discos presentes : Examinar volmenes, particiones, y sistemas de archivos presentes en la imagen. 2. Configuracin del sistema operativo: Se deben recoger detalles del Boot Record e informacin de los archivos importantes como WIN.INI, System.ini, etc. 3. Aplicacin de filtros por archivos: Una vez hecha la copia podemos eliminar aquellos

Linux

n106

28

www.revistasprofesionales.com

Anlisis forense informtico

Investigacin

que tengan un checksum (cdigo de integridad MD5, por ejemplo) idnticos a los de un Windows o Linux original, de esta forma descartamos archivos que no nos aportarn informacin alguna. 4. Identificar contenido y anomalas en el tipo de los archivos. 5. Evaluar la funcionalidad de los programas instalados en el pc bajo estudio, para entender mejor cmo ha sido usado. 6. Bsqueda de cadenas de texto significativas: Es una tcnica que puede conducir e identificar objetivos para el anlisis. 7. Evaluacin de los datos ambiente.

Sistemas operativos y algunas herramientas


Microsoft Windows
Es el sistema operativo ms invasivo de todos, desde el punto de vista del anlisis forense. Las ltimas versiones de este sistema operativo son muy complejas y tienen como inconveniente que buscan y montan cualquier medio de almacenamiento que est a su alcance, cualquier sistema de archivos compatible. Se estn comenzando a usar como plataformas de anlisis forense ahora que comienzan a aparecer bloqueadores de escritura en hardware que evitan que en el arranque se modifiquen archivos. La potencia y la fuerza de este sistema radica en su potente sector en el mercado y en que se han desarrollado herramientas para el anlisis como EnCase que se pueden ejecutar en ellos.

Aplicaciones prcticas
Suponiendo que se trabaja con una distribucin de Ubuntu vamos a abordar varios casos prcticos de utilidad para el anlisis forense. Evidentemente habr cambios dependiendo de la versin de Ubuntu que se use, para tal caso se debe consultar el manual de cada uno de los comandos en la distribucin apropiada.

1. Extraer (crear imgenes) informacin de sistemas de archivos daados


gnuddrescue es una herramienta de recuperacin de datos capaz de copiar bloques de un archivo residente en un dispositivo a otro dispositivo, y capaz de resolver problemas en la copia si en el archivo de origen se ocasionan problemas de lectura. Este programa lee un archivo y crea un log de la operacin, emite las correcciones y copia el archivo al dispositivo destino. Si el sistema de archivos del que se va a crear la imagen excede los 4 GB no se podr usar un sistema de archivos VFAT (msdos) para albergarla pues no aceptan archivos con tamao superior a 4GB. En tal caso se recomienda usar un sistema ext3. Primero se debe instalar el paquete gddrescue. Ejecutar gddrescue con los siguientes argumentos:
ddrescue [options] infile outfile [logfile]

Analizar el sistema general


Consiste en identifica usuarios, nombre del sistema, funcin primaria del mismo y en general cualquier caracterstica del estilo. En el caso de sistemas operativos como los de Microsoft, se puede examinar la informacin proporcionada por los archivos System.dat, user.dat, ntuser.dat .etc La aplicacin Dr. Watson posee mucha informacin til en este aspecto, en sus archivos de log.

Linux
Sistema operativo modular, gratuito, altamente compatible con sistemas UNIX. Linux no es invasivo ni monta nada que no se le pida expresamente. Esto quiere decir que Linux puede usarse para recabar informacin con fines forenses. La modularidad que tiene le permite controlar el arranque y lo que en l se desea cargar. Existen algunas herramientas forenses como FIRE (Forensic and Incident Response Environment http://www.linuxforensics.com/ downloads.html) y PLAC (Portable Linux Auditing CD http://fire.dmzs.com). Desde la perspectiva forense, Linux es un sistema muy potente.

BRAP Browser APlications e Internet


El estudio de las conexiones a Internet realizadas por el pc bajo estudio proporciona informacin suculenta para el anlisis forense. Informacin como: 1. Informacin sobre la conectividad con otros hosts. Esto nos dar pistas de qu otros pcs podemos o debemos examinar. En Linux por ejemplo, podramos comenzar por el /etc/hosts 2. Historial de navegacin del navegador. Este punto es importantsimo pues con los navegadores hacemos prcticamente todo. Consultar las cuentas del banco, descargar imgenes, enviar correos va IMAP, etc Existe una nueva tcnica denominada BRAP a tener en cuenta, afecta a los navegadores [recomiendo leer el artculo BRAP Forensics publicado en Communications of the ACM en Junio de 2008 en el volumen 51 nmero 6, pginas 15 a 20, por HAL BERGHEL] en este artculo se ahonda en la informacin residual dejada por los navegadores ( por ejemplo cuando nos envan cookies aunque las borremos ,estas junto con los historiales de navegacin pueden ser restaurados si se accede a puntos de restauracin del sistema anteriores ). Invita a echar un vistazo en el archivo INDEX.DAT localizado en la carpeta temporary Internet files/IE5 de cada sistema, donde con WinHEX podemos acceder a toda esta informacin.

Para rescatar la informacin de /dev/sda


sudo ddrescue -r 3 /dev/sda usbdrive/image /media/ /media/usbdrive/logfile

Herramientas
Duplicar, crear imgenes. Safeback SnapBack DatArrest EnCase y FastBloc ByteBack DBIS (Disk Image BackUp System) Norton Ghost Dd Autentificacin MD5sum Hash HashKeeper Bsqueda dtSearch DiskSearch Pro String Search Grep Anlisis Expert Witness Forensic Toolkit EnCase ILook Investigator WinHex

y ejecutar varias veces esta linea de comandos :


sudo ddrescue -r 3 -C /dev/sda /media /usbdrive/image /media/usbdrive/logfile

De esta forma gddrescue intentar ir rellenando los huecos (debido a errores) en el archivo de destino. Ejemplo de rescate de una particin /dev/hda2 con un sistema de archivos ext2:
ddrescue -r3 /dev/hda2 /dev/hdb2 logfile e2fsck -v -f /dev/hdb2 mount -t ext2 -o ro /dev/hdb2 /mnt

2. Montar particiones de imgenes


Si con ddrescue hemos creado una imagen de un disco completo, podemos montar particiones individuales usando offset. Para esto usaremos mmls que es una herramienta del kit Sleuth que veremos en un ejemplo posterior. (ver Listado 1). En este ejemplo queremos montar la particin que comienza en el bloque 32, para conocer el nmero de bytes, tenemos que multipliMUNDO

www.revistasprofesionales.com

29

Linux

n106

Investigacin

car por 512 (16384). Proceder a montar la particin con esta informacin :
sudo mount -o loop,offset=16384 file mnt

Listado 1
$ mmls file -b DOS Partition Table Offset Sector: 0 Units are in 512-byte sectors Slot Start End 00: 0000000000 0000000000 01: 0000000001 0000000031 02: 00:01 0000000032 0001646591 03: 00:00 0001646592 0002013183

Si la particin es NTFS, entonces se debe montar:


sudo mount -t ntfs -o force,loop, offset=16384 file mnt

Con la utilidad foremost (http://foremost. sourceforge.net) es posible extraer de una imagen a uno o varios archivos concretos sin necesidad de montar la particin completa. Imagina que en hda hemos perdido ciertos archivos, para esto hemos de crear en otra unidad diferente un directorio al que enviar los archivos recuperados, esto lo haremos en /dev/sdb1 (un USB).
sudo mount /dev/sdb1 /recovery sudo mkdir /recovery/foremost

Length 0000000001 0000000031 0001646560 0000366592

Size 0512B 0015K 0803M 0179M

Description Primary Table (#0) Unallocated DOS FAT16 (0x06) DOS FAT16 (0x06)

Lanzaremos tras esto sudo foremost -i /dev/hda -o /recovery/foremost, si se desea realizar lo mismo pero sobre una imagen de disco: sudo foremost -i imagen -o /recovery/foremost. Los archivos recuperados son propiedad de root, as que hay que cambiar su autora :
sudo chown -R tu_usuario: tu_usuario /recovery/foremost

Para obtener una lista de los archivos recuperables : sudo foremost -w -i /dev/hda -o /recovery/foremost. Para extraer de los recuperables slo un tipo de archivos determinado: sudo foremost -t jpg -i /dev/hda -o /recovery/foremost Nota: ntfsundelete puede recuperar archivos borrados de particiones NTFS (XP, Vista) en este caso se procedera a la creacin de la imagen y a la importacin de la misma o directamente a tratar de recuperar los archivos con foremost.

de Autopsy es la 2.10). Normalmente TSK no tiene proceso de instalacin as que dependiendo de donde se haya instalado en cada distribucin, puede ser til crear in enlace a el e incluirlo en el path. Para instalar Autopsy (si slo nos interesa recuperar archivos borrados, entonces no nos har falta instalar Autopsy, en nuestro caso lo instalaremos). Para trabajar con Autopsy quizs pueda interesar descargar las huellas de programas como virus, troyanos, para determinar con Autopsy si nuestro sistema ha sido atacado. La descripcin de estos programas se puede encontrar en: http://www.nsrl.nist.gov/Downloads.htm. En esta URL podemos encontrar ISOs para cuatro Cds que proporcionan informacin sobre huellas de diferentes programas, ISO1 tiene signaturas de software no-anglosajn, ISO2 de sistemas operativos, ISO3 software genrico, ISO4 formatos de archivos. Para recuperar las descripciones tenemos que acceder al archivo NSRLFile.txt que est comprimido en un zip dentro de cada ISO. Podemos descargar las 4 ISO y concatenar el archivo de referencias, para esto necesitamos 8GB libres. Con este archivo en el sistema ya podemos instalar Autopsy.
$ tar zxvf autopsy-2.xx.tar.gz $ cd autopsy-2.xx $ make

Una vez que disponemos de la imagen sobre la que queremos recuperar la informacin borrada y habiendo aadido /usr/local/sleuthkit/ bin en el path. Slo resta seguir los pasos para buscar el archivo archivo_ejemplo en el archivo de imagen imagen_ejemplo.img . Usar el comando dls para extraer a parte todo el espacio no asignado (espacio ambiente) donde puede residir nuestro archivo_ejemplo: $dls imagen_ejemplo.img > salida.dls Usar el comando strings para buscar cadenas significativas dentro del archivo: archivo_ejemplo que es el que estamos buscando. Este comando extrae todas las cadenas de texto que hay en el archivo salida.dls: $ strings -t d salida.dls > dls_salida.dls.str Buscar cadenas significativas del archivo (mundolinux): $ grep mundolinux dls_salida.dls.str
SALIDA DE LA BUSQUEDA: 131698688 mundolinux

3. Sleuth Kit y Autopsy: Recuperar archivos borrados y efectuar operaciones de anlisis forense
Sleuth Kit y Autopsy son dos herramientas diseadas para realizar operaciones de anlisis forense, dentro de sus caractersticas se incorpora una suite muy buena para recuperar archivos borrados y que puedan constituir evidencias de un delito informtico. Sleuth kit se ejecuta en Linux y puede recuperar informacin de sistemas de archivos : NTFS, FAT, ext2, ext3, UFS1, y UFS2.

Una vez instalado, se debe ejecutar Autopsy con privilegios de administrador. Para iniciar autopsy es preciso teclear sudo ./autopsy sin terminar este proceso se debe abrir el navegador web y entrar en la url http://localhost:9999/ autopsy para tener acceso a la herramienta de anlisis forense. Este navegador ya presenta la informacin sobre la que trabajar de manera muy amigable.

Recuperacin de archivos borrados con Sleuth


El nivel y la profundidad con la que se podr recuperar informacin depende del tipo de sistema de archivo que se est usando. Sleuth puede analizar discos o imgenes de discos. Para copiar un disco o particin a un archivo (imagen) para su posterior anlisis se puede hace como hemos visto antes o tambin con la herramienta dd de la siguiente forma (como root):
# dd if=/dev/disco_o_particion bs=1024 of=nombre_imagen conv=noerror

El valor numrico de la izquierda es el desplazamiento (Offset) en bytes para la cadena que se est buscando en el archivo que contiene las cadenas de texto (dls_salida.dls.str) del archivo generado con espacios no asignados (salida.dls) Ahora toca usar la calculadora para dividir este valor por el tamao del bloque del sistema de archivo usado (4096 en sistemas de archivo ext2 y ext3 ) : 32153. Ahora nos interesa obtener cual es la direccin dentro del archivo de imagen original (imagen_ejemplo.imp) pero lo que tenemos es la direccin dentro del archivo de bloques no asignados. Para convertir la direccin de bloques no asignados en la direccin dentro del archivo de imagen usaremos dcalc:
$ dcalc -u 32153 imagen_ejemplo.img

Instalacin de las herramientas


Debemos descargar tanto Autopsy como Sleuth de http://www.sleuthkit.org Primero debe instalarse TSK (The Sleuth Kit) y luego Autopsy.
$ tar zxvf sleuthkit-2.XX.tar.gz $ cd sleuthkit-2.XX $ make

El valor obtenido es 34152. Para ver los contenidos del bloque 34152 dentro del archivo imagen_ejemplo.img usaremos el comando dcat.
$ dcat imagen_ejemplo.img 34152

Donde XX es la versin actual (en el momento de escribir este artculo la versin de TSK es la 2.52 y la
MUNDO

Y de esta forma veremos el contenido esperado: mundolinux.

Linux

n106

30

www.revistasprofesionales.com

Mundo Linux en Formato Digital


Por menos dinero Llegar antes a su ordenador que a los quioscos Entra en www.revistasprofesionales.com
Suscripcin a Mundo Linux por slo 15 euros y a Mundo Linux y Slo Programadores por slo 36 euros
Regalo de un CD-ROM con el archivo de los 12 ejemplares de la temporada 2004-05

Redes

OpenSSL

Criptografa con OpenSSL


Fernando Lantes Seijas

OpenSSL es una herramienta que permite la utilizacin de diversos algoritmos criptogrficos, tanto simtricos como asimtricos, desde la lnea de comandos. Esta aplicacin se complementa con diversas utilidades, destacando los certificados digitales, usadas para preservar la confidencialidad de las comunicaciones.
Introduccin
OpenSSL fue desarrollado con el objetivo de proveer una herramienta de software libre que implementase los protocolos Secure Socket Layer (SSL v2/v3) y Transport Layer Security (TLS v1). Est basado en el proyecto SSLeay desarrollado por Eric Young y Tim Hudson. Ambos concluyeron de forma no oficial este proyecto cuando se incorporaron a RSA Security en Diciembre de 1998 y siendo la comunidad del software libre quien continu con este proyecto. Como fruto de este desarrollo, OpenSSL implementa mltiples utilidades criptogrficas en la interfaz de comandos. En el presente artculo trataremos diferentes aplicaciones de OpenSSL como herramienta para encriptar nuestros datos mediante algoritmos simtricos y asimtricos, generar y verificar certificados, y encriptar correo electrnico con S/MIME. Adems, OpenSSL proporciona una serie de libreras criptogrficas que pueden ser enlazadas desde el cdigo fuente de una aplicacin. De hecho, estas libreras son empleadas tanto por OpenLDAP como por el mdulo de Apache mod_ssl, el cual permite dotar a Apache de conexiones seguras mediante SSL. Esta aplicacin ha sido portada a muchos sistemas operativos basados en UNIX, tales como Solaris, Linux, Mac OS X y los cuatro sistemas operativos BSD de cdigo abierto, OpenVMS y
MUNDO

Microsoft Windows. IBM incluye una versin de la misma para los System i (iSeries/AS400). Cabe resaltar el hecho de que OpenSSL fue la primera aplicacin de cdigo abierto que se valid contra el estndar FIPS 140-2 del NIST. Se le concedi un certificado en Enero de 2006 que fue revocado en Julio del mismo ao por cuestiones relativas a la interaccin del mdulo con otro software, siendo posteriormente avalada de nuevo por esta certificacin. OpenSSL se distribuye bajo una doble licencia, OpenSSL License y SSLeay License. En este caso la documentacin de la aplicacin especifica que se debe emplear bajo los trminos de ambas licencias. Este tipo de licencias es ms restrictivo que las GPL.

Descarga e instalacin
Aunque la mayor parte de las distribuciones de Linux incorporan esta herramienta, en el caso de que no sea as, es posible descargar el cdigo fuente de OpenSSL en la web del proyecto. La ltima versin disponible de la misma es la 0.9.8g. Una vez descargado el cdigo fuente de esta aplicacin, se tiene que descomprimir.
$ gunzip openssl-0.9.8g.tar.gz $ tar xfv openssl-0.9.8g .tar $ cd openssl- 0.9.8g

Despus ser necesario compilarlo. Para ello invocaremos los siguientes comandos desde el directorio donde se ha descomprimido.
$ ./config $ make $ make install

El primero de estos comandos es un script en Perl. Para el adecuado funcionamiento del mismo, es necesario que la versin 5.x de Perl est instalada en nuestro sistema. Es posible verificar que la instalacin ha sido completada con xito comprobando la versin que est instalada en nuestro sistema.
$ openssl version OpenSSL 0.9.8g 19 Oct 2007

Linux

n106

32

www.revistasprofesionales.com

Criptografa con OpenSSL

Redes

Funciones simples de OpenSSL


Una vez tenemos esta aplicacin instalada en nuestro sistema, se puede ejecutar tecleando en la shell openssl. La ejecucin de este programa sin parmetros nos lleva a una interfaz de comandos.
$ openssl OpenSSL>

mquina determinada. Para ello se emplea el comando speed.


$ openssl speed

este inconveniente, se puede obtener la salida codificada en base 64.


$ openssl rand 32 -base64 yTa4Z46f/nMieQTn7PgrFVhljPEz2KThAxMhX V7Q214=

Se pueden obtener las estadsticas relativas al rendimiento de un determinado algoritmo, si a este comando le pasamos como argumento el nombre de ese algoritmo.
$ openssl speed rsa

Si tecleamos en esta interfaz un comando errneo, OpenSSL nos mostrar las opciones disponibles ordenadas alfabticamente por las distintas categoras de comandos disponibles. Tambin es posible emplear OpenSSL desde la shell, pasndole el nombre del comando a emplear como primer parmetro y, a continuacin, el resto de las opciones. Este ser el mtodo empleado en todos los ejemplos del presente artculo. Se puede obtener la lista de todos los algoritmos de cifrado incluidos en OpenSSL mediante el comando ciphers.
$ openssl ciphers v

Generacin de caracteres aleatorios


Por muy fuerte que sea el cifrado de un cierto algoritmo, siempre ser posible descifrar un criptograma si adivinamos la contrasea con la que se encript. De ah la importancia de generar claves que sean lo ms aleatorias posible. Es por ello que OpenSSL nos proporciona una forma de generar una cadena de caracteres aleatorios. Para hacer esto, se le pasarn como argumentos el comando rand y la longitud de la cadena a generar.
$ openssl rand 32 +Y|GCa #l- =D

La opcin -out nombre_de_fichero redirige la salida a un fichero. Adems, OpenSSL permite generar una cadena aleatoria, tomando para ello caracteres semi aleatorios de un fichero o serie de ficheros en particular. Para realizar esto se emplea la opcin -rand seguida de los ficheros que se quieran utilizar.
$ openssl rand -rand /etc/protocols -base64 -out aleatorio.txt 32 5834 semi-random bytes loaded $ cat aleatorio.txt ZntlY7PvLHR52PPOdAi2WB9LeVgZ2osxxh6Bp ovRidM=

Nmeros primos
Debido a que los algoritmos de encriptacin asimtricos hacen un empleo exhaustivo de nmeros primos, OpenSSL ha incluido un test de primalidad entre sus opciones. A continuacin se muestran unos ejemplos de

Adems , es posible comprobar cual es el rendimiento de esta herramienta en una

Como se puede apreciar, la mayor parte de los caracteres solicitados no figura en la salida por pantalla. Esto se debe a que son caracteres no imprimibles. Para solventar

Propiedades de las funciones resumen. MUNDO

www.revistasprofesionales.com

33

Linux

n106

Redes

ritmos, como por ejemplo: md2, md4, md5, sha, sha1, sha256, sha512, mdc2 y ripemd160. Por ejemplo, si queremos comprobar que nadie ha modificado el fichero /etc/passwd, calcularemos la funcin de resumen del mismo. As pues, para calcular el message digest de este fichero se empler el siguiente comando:
$ openssl dgst /etc/passwd MD5(/etc/passwd)= 0e5169e5f9dd9f383ce 502cd7a9150bd

Como se puede apreciar, el algoritmo por defecto empleado en este caso es md5 y tan slo es necesario pasar como argumento al comando dgst el nombre del fichero. Si este no se ha especificado, se tomar como entrada lo que introduzcamos en la entrada estndar del sistema. Si posteriormente queremos comprobar que este fichero no ha sido modificado, se volver a generar el message digest y se comparar con el anteriormente obtenido. Es posible cambiar el algoritmo empleado para calcular el message digest pasando el nombre del mismo como argumento a OpenSSL.
Proceso de encriptacin empleando algoritmos simtricos.
$ openssl dgst -ripemd160 /etc/passwd RIPEMD160(/etc/passwd)= dcee74a3e3e8d 12b0a085aa21eb636434889b1e2

mensaje, ya que slo aquellos que conocen la clave o claves correspondientes pueden encriptar o desencriptar un mensaje. Conviene recordar que el empleo de un algoritmo de cifrado por s mismo no preserva la confidencialidad de las comunicaciones, si no se observan ciertos procedimientos en la generacin, distribucin, almacenamiento y destruccin de las claves. Este es un tema que, por su naturaleza, est fuera del alcance de este artculo. Se puede obtener la informacin sobre el mismo en cualquier buen libro de criptografa. Existen dos tipos distintos de criptografa segn las claves empleadas: de clave privada, tambin conocidos como simtricos, y de clave pblica o asimtrica. OpenSSL implementa algoritmos de ambas clases. Como la forma de empleo difiere en ambos casos, procederemos a ver cada tipo de cifrado por separado.

Algoritmos simtricos
Los algoritmos simtricos de encriptacin, tambin conocidos como de clave pblica, usan una nica clave tanto para cifrar un texto, como para descifrar un determinado criptograma. De ah la necesidad de que la clave no sea conocida por terceros, es decir, la clave ha de mantenerse privada y tanto el emisor como el receptor han de ponerse de acuerdo en la clave que van a usar. Esto lleva al problema del intercambio de claves, es decir, como intercambiar las claves por un canal de comunicacin seguro. Segn el algoritmo empleado, la encriptacin tomar un pequeo fragmento, generalmente de entre un bit y ocho, en cada paso del algoritmo (cifrado de flujo) o un bloque de una determinada longitud cada vez (cifrado por bloques). Encriptar un fichero o texto con un algoritmo simtrico es sencillo. Tan slo es necesario especificar el comando enc, con el argumento -e, pasarle como argumento el algoritmo con el que deseamos encriptar y los ficheros de entrada y de salida precedidos de los argumentos -in y -out respectivamente. Si no se pasa el nombre de alguno de los ficheros, OpenSSL usar la entrada o salida estndar.
$ openssl enc -e -des3 -in secreto.doc -out secreto.doc.3des enter des-ede3-cbc encryption password: Verifying - enter des-ede3-cbc encryption password:

como emplear la opcin prime para determinar si un nmero es primo o no.


$ openssl prime 32582657 1F12C01 is prime $ openssl prime 32582659 1F12C03 is not prime

OpenSSL nos permite utilizar un certificado para firmar un message digest. Para ello necesitamos usar la clave privada del certificado. De esta forma nos aseguramos que el digest generado no se pueda modificar.
$ openssl dgst -md5 -sign micert.pem -out passwd.md5 /etc/passwd

La opcin hex permite pasarle a OpenSSL el nmero en formato hexadecimal.


$ openssl prime -hex 1F12C03 1F12C03 is not prime

Para comprobar que la funcin resumen no haya sido modificada, necesitamos emplear la clave pblica del certificado, tal como muestra el siguiente ejemplo.
$ openssl dgst -md5 -verify publica.pem -signature passwd.md5 /etc/passwd Verified OK

Message Digest
Las funciones de resumen o, como se denominan en ingls, message digest permiten la creacin de una secuencia numrica que sirve para comprobar que un texto determinado no haya sido modificado, bien por error en las comunicaciones, o bien por que alguien ha interceptado y modificado el mensaje. Es importante mencionar dos caractersticas de estas funciones: en primer lugar, no son reversibles, es decir, que dado un message digest no es posible obtener el texto que lo gener; en segundo lugar, dado un texto, una mnima modificacin del mismo da lugar a un gran cambio en la cadena de verificacin. OpenSSL nos permite generar el message digest de un fichero, empleando diversos algoMUNDO

Encriptacin
Se denomina encriptacin al proceso por el cual un texto plano es convertido en un galimatas slamente comprensible por aquellos a los que est destinado gracias al proceso inverso, denominado desencriptacin, segn el cual un texto cifrado es convertido en un texto plano. Es decir, la finalidad principal de la encriptacin de un texto es la de garantizar el secreto de las comunicaciones entre dos personas. Igualmente, puede ser empleada para verificar la autenticidad de un

Como se puede apreciar en la salida del comando anterior, OpenSSL pedir que introduzcamos la contrasea, a no ser que le especifiquemos una en la lnea de comandos, usando el parmetro -k.

Linux

n106

34

www.revistasprofesionales.com

Criptografa con OpenSSL

Redes

Tabla 1. Algoritmos de cifrado simtricos


Algoritmo AES Blowfish Cast DES 3-DES DESX IDEA RC2 RC4 RC5 Bloque o flujo Bloque Bloque Bloque Bloque Bloque Bloque Bloque Bloque Flujo Bloque Parmetro aes-128-cbc, aes-128-ecb, aes-192-cbc, aes-192-ecb, aes-256-cbc, aes-256-ecb df, bf-cbc, bf-cfb, bf-ecb, bf-ofb cast, cast-cbc, cast5-cbc, cast5-cfb, cast5-ecb, cast5-ofb des, des-cbc, des-cfb, des-ecb, des-ede, des-ede-cbc, des-ede-cfb, des-ede-ofb des-ede3, des-ede3-cbc, des-ede3-cfb, des-ede3-ofb, des-ofb, des3 desx idea, idea-cbc, idea-cfb, idea-ecb, idea-ofb rc2, rc2-40-cbc, rc2-64-cbc, rc2-cbc, rc2-cfb, rc2-ecb, rc2-ofb rc4, rc4-40 rc5, rc5-cbc, rc5-cfb, rc5-ecb, rc5-ofb

Algoritmos asimtricos
A diferencia de los algoritmos simtricos, los algoritmos asimtricos emplean dos claves, una pblica y la otra privada. La clave pblica, como su nombre indica, se puede distribuir libremente entre las diferentes partes que desean cifrar sus comunicaciones. Se usa generalmente para encriptar un texto plano. La clave privada debe mantenerse secreta, pues con ella se puede desencriptar un texto cifrado con la clave pblica. De esta forma se consigue superar el problema del intercambio de claves planteado por los algoritmos simtricos. Por otra parte, el nmero de claves a repartir entre N personas en los algoritmos simtricos es de N*(N-1)/2, mientras que en los asimtricos slo se necesitan N. Dado que los algoritmos de encriptacin y desencriptacin asimtricos consumen ms recursos que los simtricos, su empleo se restringe, por norma general, a la realizacin del intercambio de claves empleadas en algoritmos simtricos. En este apartado nos ocuparemos del empleo de RSA como un ejemplo de cifrado asimtrico, aunque OpenSSL tambin permite el empleo de otros, como por ejemplo DSA y curvas elpticas.

$ openssl enc -e -des3 -k Dubl1n08! -in secreto.doc -out secreto.doc.3des

Desencriptar un archivo es tan simple como encriptarlo. Tan slo es necesario conocer el algoritmo de cifrado empleado y la contrasea. Por ejemplo, para desencriptar el fichero cifrado en el ejemplo anterior, slo necesitamos especificar el parmetro -d, que indica que se va a desencriptar.
$ openssl enc -d -des3 -in secreto. doc.3des -out publico.doc enter des-ede3-cbc encryption password: Verifying - enter des-ede3-cbc encryption password:

vector de inicializacin, que resuelve este problema. El vector de inicializacin no es ms que una secuencia aleatoria de bits que se aplica a la contrasea. Slo es posible emplear vectores de inicializacin en algoritmos de cifrado por bloques. Para indicar a OpenSSL que se ha de emplear un vector de inicializacin, se le pasar el argumento salt, tal y como se muestra en el siguiente ejemplo.
$ openssl enc -e -salt -des3 -k Dubl1n08! -in secreto.doc -out secreto.doc.3des

De nuevo vemos que OpenSSL nos solicita una contrasea. Como en el caso anterior, la contrasea puede ser introducida en la lnea de comandos empleando para ello el parmetro -k. Ya que ante una misma entrada y contrasea los algoritmos simtricos producen una misma salida, es decir, estos algoritmos son deterministas, y esto facilitara el criptoanlisis, se puede usar un tercer componente, llamado sal (salt en terminologa inglesa) o

La tabla 1 muestra los distintos algoritmos de cifrado simtricos disponibles y sus respectivos parmetros. Adems se incluye si el cifrado se realiza por bloque o por flujo. Hay que tener en cuenta que los algoritmos de encriptacin por bloques slo encriptan un bloque de texto plano de tamao fijo. Para encriptar mensajes de mayor tamao se usan distintos modos de operacin. Entre estos modos estn ECB, CBC, OFB y CFB. OpenSSL nos permite emplear estos modos, tal y como se refleja en el nombre de los parmetros mostrados en la tabla anterior.

Generacin de claves
El primer paso para usar criptografa asimtrica es generar las claves pblica y privada que se van a emplear. Dependiendo del algoritmo escogido para realizar la encriptacin, se puede realizar de una forma u otra. En caso de emplear RSA, generaremos en primer lugar la clave privada. Para ello emplearemos el comando genrsa sin ninguna otra opcin. La clave privada se mostrar en la salida estndar. Es posible especificar la longitud en bits de esta clave pasndole esta cifra como parmetro. Obviamente, cuanto mayor sea la longitud, ms fuerte ser el cifrado.
$ openssl genrsa 256 Generating RSA private key, 256 bit long modulus ..+++++++++++++++++++++++++++ .+++++++++++++++++++++++++++ e is 65537 (0x10001) -BEGIN RSA PRIVATE KEYMIGpAgEAAiEA3KySVXwPjLlzLYqrp6ctJdmuf anKdWQvf3FOlUWnUYcCAwEAAQIg b+auudyUQgcUaeakzvpOQK9ICIel1feaPm3mI LcwvWECEQDvBDhl+ktS+vvC2dw0 i3URAhEA7FqytteN/VRMJ+J7G479FwIQZmMeb cDch31wX7XHuNKMoQIQHVpKNZDh jmOIra9f0JVacwIQa41zzfGuWy7C8p6MZ1XoQ

Proceso de generacin de claves para algoritmos simtricos.

www.revistasprofesionales.com

35

MUNDO

Linux

n106

Redes

g== -END RSA PRIVATE KEY-

En general, la clave privada se redireccionar a un fichero para su uso posterior. Para ello simplemente tenemos que usar la opcin -out e indicar a continuacin el nombre del fichero.
$ openssl genrsa -out privada.txt 1024 Generating RSA private key, 1024 bit long modulus ..........++++++ ......++++++ e is 65537 (0x10001)

Openssl nos da la opcin de encriptar la clave privada empleando des, 3-des, aes 128, aes 196 o aes 256. Para ello, le pasamos el nombre del algoritmo como parmetro. OpenSSL nos pedir que introduzcamos una contrasea si no le hemos indicado una a continuacin del nombre del algoritmo de encriptacin.
$ openssl genrsa -aes256 -out privadaenc.txt 1024 Generating RSA private key, 1024 bit long modulus ....++++++ ..............................++++++ e is 65537 (0x10001) Enter pass phrase for privada.txt: Verifying - Enter pass phrase for privada.txt:

Proceso de encriptacin y desencriptacin usando algoritmos simtricos.


$ openssl rsa -in privada.txt -aes256 -out publica.txt writing RSA key Enter PEM pass phrase: Verifying - Enter PEM pass phrase:

superar el tamao de la clave. En el siguiente ejemplo vemos el error que produce OpenSSL al intentar pasarle un fichero de mayor tamao.
$ openssl rsautl -encrypt -pubin -inkey publica.pem -in /etc/passwd RSA operation error 6054:error:0406D06E:rsa routines:RSA_ padding_add_PKCS1_type_2:data too large for key size:rsa_pk1.c:151:

Encriptacin con algoritmos asimtricos


Una vez que se han generado las claves pblicas y privadas, hacer uso de la encriptacin de clave pblica es realmente sencillo. Para ello usamos el comando rsautl, seguido del parmetro -encrypt, el nombre del fichero que contiene la clave privada precedido del parmetro -inkey y los nombres de los ficheros de entrada y de salida precedidos de -in y -out respectivamente. Estos dos ltimos parmetros son opcionales y en caso de no usar ni uno ni otro, OpenSSL usar la salida o entrada estndar.
$ openssl rsautl -encrypt -pubin -inkey privada.pem -in creditcard.txt -out creditcard.rsa

La clave pblica se generar a partir de la clave privada. Para ello emplearemos el comando rsa, al cual le pasaremos como argumento el fichero que contiene la clave privada y el argumento -pubout, tal y como se muestra en el siguiente ejemplo.
$ openssl rsa -in privada.txt -pubout -out publica.txt writing RSA key

Tambin es posible firmar un fichero empleando RSA. Para ello emplearemos la clave privada, ya que la clave pblica se distribuir a aquellos que quieran verificar la firma. De nuevo tendremos en cuenta las restricciones de tamao explicadas anteriormente.
$ openssl rsautl -sign -inkey privada.pem -in creditcard.txt -out creditcard.sign

La clave pblica generada se ha guardado en el fichero publica.txt. En el caso de que la clave privada haya sido almacenada encriptada, OpenSSL nos pedir que introduzcamos la clave correspondiente.
$ openssl rsa -in privadaenc.txt -pubout -out publica.txt Enter pass phrase for privadaenc.txt: writing RSA key

Para desencriptar el fichero generado en el ejemplo anterior, necesitamos usar la clave privada correspondiente a la clave pblica empleada para encriptar el fichero. Es necesario destacar el hecho de que el fichero que contiene la clave se pasa siempre despus del parmetro -inkey. Por defecto, OpenSSL interpreta que esta es la clave privada, por ello en el ejemplo anterior especificamos -pubin para que se interprete como una clave pblica.
$ openssl rsautl -decrypt -inkey privada.pem -in creditcard.rsa 1239012831029381209 12/30 Visa

Para verificar la firma de un documento emplearemos la clave pblica. Es por ello que es necesario especificar que la clave que vamos a emplear es la pblica, usando para ello el parmetro -pubin.
$ openssl rsautl -verify -pubin -inkey publica.pem -in creditcard.sign 1239012831029381209 12/30 Visa

Ya que la salida es la misma que el fichero original, se puede decir que este no ha sido modificado. En general, esta funcin se aplica a una funcin resumen del fichero original.

Certificados digitales
En la actualidad, los certificados digitales estn ampliamente difundidos para autenticar una entidad, sea este una persona o una organizacin, ante otras. Un certificado digital no es ms que un documento electrnico que

Al igual que la clave privada, la clave pblica tambin se puede encriptar. Para ello haremos uso de las mismas opciones que en el caso de la clave privada.
MUNDO

Hay que tener en cuenta, sin embargo, que el tamao del texto a encriptar no puede

Linux

n106

36

www.revistasprofesionales.com

Criptografa con OpenSSL


$ openssl version -d OPENSSLDIR: /etc/pki/tls

Redes

incorpora una firma digital y vincula a una clave pblica a la informacin relativa a dicha entidad, como por ejemplo: su identidad, su direccin y muchas otras. En general, los certificados digitales se emplearn en conjuncin con una autoridad de certificacin (CA), independiente de las entidades que se hayan de verificar, en lo que se denomina la infrastructura de clave pblica (PKI). Un uso prctico de los certificados digitales es la autenticacin y cifrado de sitios web mediante SSL. El estndar ms popular en certificados digitales es el X.509, dentro del cual se pueden distinguir varios formatos de codificacin: CER, DER, PEM (DER codificado en base 64), PKCS#7 y PKCS#12. Entre las mltiples utilidades criptogrficas incorporadas en OpenSSL se encuentran, lgicamente, las de verificacin y generacin de certificados digitales, as como la conversin entre los distintos formatos de los mismos.

$ openssl x509 -in certificado.pem -pubkey -noout >clavepublica.pem

En ese directorio se encontrar un fichero de gran tamao llamado cert.pem que contiene todas las autoridades de certificacin conocidas por esta herramienta. Se pueden obtener los distintos atributos que componen el certificado mediante el parmetro -text.
$ openssl x509 -text -in publico.pem

Generacin de certificados
En esta seccin se explicar como generar mediante OpenSSL certificados auto-firmados, es decir, certificados firmados por nosotros mismos sin implicar una autoridad de certificacin. Para ello, le pasaremos el comando req, seguido del parmetro -x509
$ openssl req -x509 -newkey rsa:1024 -keyout micertificado.pem -out micertificado.pem Generating a 1024 bit RSA private key ...............................++++++ .........++++++ writing new private key to micertificado.pem Enter PEM pass phrase: Verifying - Enter PEM pass phrase: You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter ., the field will be left blank. Country Name (2 letter code) [GB]:IE State or Province Name (full name) [Berkshire]:Dublin Locality Name (eg, city) [Newbury]:Dublin 6 Organization Name (eg, company) [My Company Ltd]:My Company Organizational Unit Name (eg, section) []: Common Name (eg, your name or your servers hostname) []:mycompany.ie Email Address []:certs@mycompany.ie

Dada la cantidad ingente de informacin que este parmetro nos muestra, es posible configurar este parmetro para que nos presente slo aquella informacin que necesitamos. Para evitar que en la pantalla aparezca el certificado original completo, se emplear el parmetro -noout. En el siguiente ejemplo, se muestra como extraer las fechas de emisin y validez de un certificado.
$ openssl x509 -noout -in publico.pem -dates notBefore=May 19 18:43:45 2008 GMT notAfter=May 19 18:43:45 2009 GMT

Verificacin de certificados y extraccin de informacin de los mismos


Si tenemos un certificado para un sitio, podemos verificar la autenticidad del mismo con OpenSSL. Para ello, emplearemos el comando verify seguido del fichero que contiene el certificado.
$ openssl verify certificado.pem certificado.pem : OK

Tambin es posible ver el sujeto emisor, como se muestra a continuacin.


$ openssl x509 -noout -in publico.pem -subject subject= /C=IE/ST=Dublin/L=Dublin 6/CN= mycompany.ie

La instalacin estndar de OpenSSL dispone de una con una serie de ficheros que contienen informacin acerca de las distintas autoridades de certificacin que se emplean habitualmente. Para saber dnde estn alojados estos ficheros en nuestro sistema ejecutaremos el comando version seguido del parametro -d.

Otras opciones tiles son -issuer, nos muestra la entidad emisora, -email muestra la direccin de correo electrnico asociada y -purpose proporciona el propsito del certificado. Por ltimo, OpenSSL posibilita extraer la clave pblica de un certificado. Para ello emplearemos la opcin -pubkey.

Proceso de firmado digital de un fichero.

Como se puede apreciar, es necesario introducir una contrasea seguida de diversos parmetros que identifican la entidad que se desea certificar. El archivo resultante, micertificado.pem, contiene tanto la clave privada como el propio certificado para este sitio, ya que en la lnea de comandos hemos especificado el mismo fichero de salida para ambos. Si adems de la clave privada queremos que se genere una clave pblica, ser necesario pasarle el parmetro -pubkey.
MUNDO

www.revistasprofesionales.com

37

Linux

n106

Redes

$ openssl req

-days 365

-subj /C=IE/ST=Dublin/L=Dublin 6/CN=mycompany.ie\ -newkey rsa:1024 -keyout solicitud.pem -out solicitud.pem

La informacin que le pasamos a OpenSSL al crear el certificado tiene que coincidir exactamente con aquella que hemos proporcionado a la autoridad de certificacin, ya que si no el certificado no ser vlido. Se puede comprobar la informacin en la solicitud de certificado usando el argumento -text.
$ openssl req -in solicitud.pem -noout -text Certificate Request: Data: Version: 0 (0x0) Subject: C=IE, ST=Dublin, L=Dublin 6, CN=mycompany.ie Subject Public Key Info: Public Key Algorithm: rsaEncryption RSA Public Key: (1024 bit)

El certificado generado, tal y como lo muestra Firefox.


$ openssl req -x509 -pubkey -newkey rsa:1024 -keyout micertificado.pem -out micertificado.pem .......++++++ writing new private key to micertificado.pem -

Por norma general, la autoridad de certificacin nos pedir que especifiquemos esta solicitud de certificado en el formulario de creacin de certificados digitales. Es importante guardar las claves generadas en un lugar seguro, ya que las necesitaremos para el certificado que nos enviar la autoridad de certificacin.

Tambin es posible obtener un nuevo certificado, empleando una clave privada generada previamente.
$ openssl req -x509 -nodes -days 365 -key privado.pem -out micertificado.pem

Conversin entre distintos tipos de codificacin


Otro formato para la codificacin de certificados digitales ampliamente empleado es PKCS#12, usado por IIS generalmente en ficheros con extensin .pfx. Si fuese necesario convertir un certificado PEM a PKCS#12, se puede hacer sencillamente con OpenSSL, usando el comando pkcs12 seguido del parmetro -export y los nombres de los ficheros de entrada (certificado PEM) y de salida. Adems, se le puede dar un nombre mediante el parmetro -name.
$ openssl pkcs12 -export -out certificado .pfx -in micertificado.pem -name Mi Certificado

Obtencin de certificados de una autoridad de certificacin


En la seccin anterior hemos visto como obtener un certificado auto-firmado. En el caso de que sea necesario obtener un certificado de una autoridad de certificacin, como por ejemplo VeriSign, OpenSSL dispone de las herramientas necesarias para generar una solicitud de certificado, para lo que utilizaremos el comando req, pero no especificaremos que vamos a usar el formato X.509.
$ openssl req solicitud.pem -new -newkey rsa:1024 -nodes -keyout solicitud.pem -out

Se pueden pasar estos parmetros a OpenSSL desde la lnea de comandos, lo que permite incluir la generacin de un certificado dentro de un script. As, por ejemplo, al pasar el argumento -subj podemos especificar a continuacin el sujeto que se desea certificar y con el parmetro -issuer la entidad emisora.
$ openssl req -x509 -nodes -days 365 \ -subj /C=IE/ST=Dublin/L=Dublin 6/CN=mycompany.ie\ -newkey rsa:1024 -keyout micertificado.pem -out micertificado.pem Generating a 1024 bit RSA private key ............++++++

A continuacin, OpenSSL nos solicitar que introduzcamos los diversos parmetros identificativos de la entidad que se desea certificar. De forma similar a los certificados auto-firmados, podemos pasarle todos estos datos a travs de la lnea de comandos.

La conversin inversa, de PEM a PKCS#12 tambin se puede realizar fcilmente mediante OpenSSL. Para ello, emplearemos el comando pkcs12 seguido del nombre del fichero a importar y el de salida.
$openssl pkcs12 -in mycert.pfx -out mycert.pem

MUNDO

Linux

n106

38

www.revistasprofesionales.com

Criptografa con OpenSSL

Redes

S/MIME
S/MIME (Secure / Multipurpose Internet Mail Extensions) es un estndar para encriptar con clave pblica y firmado de emails encapsulados en MIME, basado en el estndar PKCS#7 y definido en el RFC 3852. Este protocolo proporciona autenticidad, integridad y no repudio mediante el empleo de firma digital y privacidad y seguridad usando encriptacin. Para emplear este protocolo, es necesario disponer de un certificado digital. Se recomienda el uso de una clave privada para la firma digital y otra para el cifrado del mensaje. A pesar de la seguridad que este protocolo proporciona a la hora de enviar y recibir correos electrnicos, no se emplea muy a menudo, ya que no todos los clientes de correo lo soportan. OpenSSL permite encriptar, desencriptar, firmar y verificar mensajes mediante el comando smime. Para encriptar un mensaje necesitamos el certificado pblico de la persona a la que vayamos a enviar el correo. Ejecutando el siguiente comando encriptaremos un mensaje que va a ser enviado.
$ openssl smime -encrypt -in mensaje. txt publico.pem

infrastructura PKI que viene integrada en OpenSSL.


$ openssl smime -verify -in mensajecifrado.txt

$ openssl s_server -accept 443 -cert micertificado.pem -WWW Enter pass phrase for micertificado .pem: Using default temp DH parameters

Este comando informar de que se ha producido un error en caso de que el mensaje haya sido manipulado en trnsito. Por ltimo, para desencriptar un mensaje usaremos el parmetro -decrypt y especificaremos el certificado que contiene la clave privada despus del parmetro -recip.
$ openssl smime -decrypt -in mensajecifrado.txt -recip privado.pem

ACCEPT

Si tecleamos la siguiente URL https://localhost en un navegador, observaremos que no se carga ninguna pgina web, pero que el certificado que hemos indicado ha autorizado la conexin cifrada.

Conclusiones
A lo largo de este artculo hemos visto las mltiples aplicaciones de OpenSSL. Esta herramienta podra ser considerada la navaja suiza de la criptografa, ya que permite utilizar desde las funciones criptogrficas ms simples, como por ejemplo las funciones de resumen, hasta las ms complejas, como pueden ser los certificados digitales. Si lo anterior no fuese suficiente, esta aplicacin nos proporciona la posibilidad de usar protocolos de comunicaciones que emplean SSL o TLS, tales como HTTPS, SMTP y S/MIME. Un aspecto que no se ha tratado en este artculo es la posibilidad de emplear en desarrollos propios las bibliotecas criptogrficas incluidas en esta aplicacin. Su uso permite incluir todas las funciones anteriormente tratadas dentro de los programas que desarrollemos. Estas bibliotecas estn disponibles para diversos lenguajes, como por ejemplo C, C++, Perl, Python o Ruby. En definitiva, OpenSSL es una herramienta imprescindible para todos aquellos que por uno u otro motivo necesiten realizar cualquier tipo de operaciones criptogrficas, con el beneficio aadido de ser una aplicacin de cdigo abierto.

Clientes y servidores seguros con OpenSSL


OpenSSL no slo nos permite tratar con operaciones criptogrficas sobre ficheros, si no que adems nos permite acceder y crear servicios de red seguros que hacen uso de SSL desde la lnea de comandos. Una de sus aplicaciones ms directas de esto es la posibilidad de descargar certificados digitales de un sitio determinado. Para ello usaremos el comando s_client seguido del parmetro -connect y, a continuacin, la direccin del servidor SSL al que nos queremos conectar. Si es necesario, el puerto precedido de dos puntos. Por ejemplo, podemos conectarnos con el sitio seguro de Google usando el siguiente comando:
$ openssl s_client -connect www.google.com:443

En el ejemplo anterior se ha usado un certificado con una clave pblica para encriptar el mensaje, empleando el algoritmo de encriptacin por defecto, RC2-40. Como este algoritmo no proporciona un cifrado muy fuerte, podemos emplear otro mtodo de cifrado especificndolo en la lnea de comando.
$ openssl smime -encrypt -des3 -in mensaje.txt publico.pem

Filtrando la salida del comando anterior con sed se puede obtener el certificado del sitio, si este est codificado en PEM, es decir, si el certificado est entre -BEGIN CERTIFICATE- y -END CERTIFICATE-.
$ openssl s_client -connect www.google .com:443 2>&1|sed -ne /-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p

Para firmar el correo, simplemente aadiremos el parmetro -sign.


$ openssl smime -encrypt -sign -des3 -in mensaje.txt publico.pem

Tambin se pueden indicar los campos MIME To, From y Subject a OpenSSL. De esta forma, si se concatena con sendmail podremos enviar el mensaje encriptado directamente.
$ openssl smime -sign -encrypt -des3 -in mensaje.txt -from test@test.com \ -to destinatario@gmail.com -subject Prueba de correo S/MIME publico.pem\ |sendmail destinatario@gmail.com

Tambin es posible conectarse con otros servicios seguros mediante este mismo comando. Para conectarnos con un servidor seguro de correo, es necesario especificar el puerto de SMTP, generalmente el 25, e indicarle a OpenSSL que comience una sesin segura para SMTP, mediante el argumento starttls smtp.
$ openssl s_client -connect mailhubwh3.whitehouse.gov:25 -starttls smtp

Referencias
La principal fuente de referencia sobre OpenSSL es, sin lugar a dudas, su sitio web, accesible en http://www.openssl.org/ Pginas de manual: asn1parse(1), ca(1), ciphers(1), config(5), crl(1), crl2pkcs7(1), dgst(1), dhparam(1), dsa(1), dsaparam(1), ec(1), ecparam(1), enc(1), errstr(1), gendsa(1), genpkey(1), genrsa(1), nseq(1), ocsp(1), openssl(1), passwd(1), pkcs12(1), pkcs7(1), pkcs8(1), pkey(1), pkeyparam(1), pkeyutl(1), rand(1), req(1), rsa(1), rsautl(1), s_client(1), s_server(1), s_time(1), sess_id(1), smime(1), speed(1), spkac(1), ts(1), tsget(1), verify(1), version(1), x509(1), x509v3_config(5) MUNDO

Verificar la firma de un mensaje es tan simple como pasarle al comand smime el parmetro -verify. En este caso, se emplea la

As, podemos alojar el certificado. En el siguiente ejemplo emplearemos el certificado digital auto-firmado creado en uno de los ejemplos anteriores. Como este certificado est encriptado, OpenSSL nos pedir que introduzcamos la clave.

www.revistasprofesionales.com

39

Linux

n106

Aplicaciones

Elementos grficos

Cliparts desde Linux


Alvaro Garcia Herrera

Cualquier usuario de informtica est tan acostumbrado a la presencia de los clip-arts que casi no sabemos diferenciarlos de otros elementos grficos como puede ser una fotografa. Aunque los clip-arts son elementos artsticos que no dependen del sistema operativo del ordenador, nuestro objetivo en el presente artculo es ver cmo podremos trabajar con estos elementos grficos sin salir de nuestra distribucin Linux.
A estas alturas, este sistema operativo y el opensource en general,ofrecen suficientes herramientas y recursos para que cualquier usuario pueda crear y gestionar su propia base de clip-arts, ya sea para insertarlo en sus documentos escritos, para formar parte de hojas publicitarias, tarjetas personales o boletines corporativos.

Qu es un clip-art?
Son muchas las definiciones que encontramos, especialmente en Internet, sobre lo que es un clipart. Empecemos diciendo que no es cualquier imagen que podamos encontrar en documentos o pgi-

nas webs, en otras palabras no son sinnimo de elemento grfico. Consideramos que un clip-art tiene estas caractersticas: Ha sido creado por un artista determinado (o un grupo) que lo hizo primero en papel o con modernas tcnicas informticas. En cualquier caso se almacenan en formato digital para poder ser luego recuperadas desde un programa especfico, como un procesador de textos e incluido en un documento. Se suelen organizar por temas, de tal manera que el usuario interesado en los mismos puede buscar fcilmente un elemento concreto para insertarlo en su trabajo. Los solemos encontrar en varios sitios: En Internet encontramos sitios Web desde donde descargar cliparts. Hay que tener cuidado pues esto no significa que sean gratuitos, normalmente hay que pagar, exceptuando algn caso que veremos con detenimiento ms adelante. Estamos hablando de www.openclipart.org que conecta directamente con la filosofa opensource. Muchas aplicaciones traen un banco de cliparts. Su posibilidad de uso va a depender de si el programa es propietario (por lo que hay que tenerlo legalmente adquirido) o de cdigo abierto. Por ejemplo Inkscape ofrece una galera de imgenes en formato .svg para su libre uso...recordemos de nuevo que este programa es del tipo opensource. En caso de usar una aplicacin de tipo propietario hay que leer las condiciones de uso...adems de haberlo comprado. Se pueden comprar colecciones de cliparts que vienen empaquetadas en CDs o DVDs.

Un clipart al microscopio
Visto de cerca un clipart puede estar compuesto de muchos elementos, por ejemplo veamos que podemos ver en el siguiente: (ver Figura 1).

Figura 1. MUNDO

Figura 2.
www.revistasprofesionales.com

Linux

n106

40

Cliparts desde Linux

Aplicaciones

Los cliparts son elementos casi omnipresentes en el mundo de la informtica


map o raster. Pero no solo son el aspecto esttico lo que los diferencia, la versin vectorial puede desagruparse y cambiar las caractersticas individuales de cada componente de la misma, veamos cmo podra quedar: (ver Figura 3). Por el contrario una imagen bitmap no se podra modificar por partes tan diferenciadas como lo que vemos en la Figura 3. Eso no quiere decir que no podamos modificar la estructura de los grficos raster, para ello tenemos programas como Krita o The GIMP. Con Inkscape o Karbon14 modificaremos los de tipo vectorial. Finalmente digamos que en el mundo del opensource los archivos .png son de tipo bitmap y los .svg vectorial.

Figura 4.

mente complejas, pero si no es as tendremos muchas posibilidades.

Vectorial o bitmap?
Figura 3.

Se trata del clip llamado earth_and_north _star_dan_o1.svg, sacado del apartdo Geography de la galera de cliparts Opencliparts, ya mencionada antes. Si la analizamos someramente tenemos: Texto normal, perteneciente a una familia Sanserif, o sin remates del tipo Arial. Una lnea recta, discontinua y acabada en punta que puede ser dibujada con las herramientas de dibujo geomtrico de, por ejemplo, Openoffice Writer. La esfera terrestre que sera una ilustracin creada de forma artesanal y luego escaneada. Finalmente hay ms elementos geomtricos de fcil creacin; como por ejemplo la flecha que cie al mundo y la figura que simula una estrella que puede ser creada fcilmente desde el apartado Estrellas, en la barra de dibujo de Swriter. As que ya tenemos a la principal idea de este artculo puesta sobre la mesa: es posible crear nuestros propios clipart usando Linux y herramientas del mundo opensource. Naturalmente si somos buenos dibujantes seremos capaces de hacer cosas ms esttica-

Aunque parezca mentira todos los millones de elementos grficos que circulan en el universo informtico pueden ser divididos en solo dos grupos: vectorial o bitmap. Conviene que el lector sepa un poco de esta dicotoma. Los grficos bitmap o raster estn construidos a partir de puntos o pxeles se unen formando una especie de mosaico gigante. Es muy fcil saber si un grfico es de este tipo. Si lo estiramos con el ratn veremos que aparecen unos antiestticos dientes de sierra en los alrededores del mismo, adems de perder nitidez. Por el contrario los grficos de tipo vectorial estn definidos por elementos geomtrico-matemticos que guardan todos los datos de sus caractersticas especficas. Si los ampliamos no pierden resolucin y necesitan menos Kb. para ser almacenados. Es fcil observar la diferencia entre ambos tipos de grficos, veamos las dos versiones de un mismo archivo: (ver Figura2). Se trata de casco_con_micrfono_arch_01 en sus versiones bitmap a la izquierda y la vectorial a la derecha. Est claro que en la parte derecha tenemos una imagen ms ntida, sin los dientes de sierra que afean a la versin bit-

Las posibilidades
Una vez descrito nuestro objeto de deseo vamos a analizar las tres grandes formas en las que podemos trabajar con cliparts. As que podemos distinguir estos apartados:

Crear un clipart de forma tradicional


Quizs la expresin tradicional sea un poco forzada, pero con ella nos referimos al proceso de dibujar sobre papel el elemento grfico, escanearlo y grabarlo en un formato digital. Aqu entra en escena el escner...y sobre todo los drivers. A estas alturas quedan muy pocas mquinas de este tipo con problemas de drivers para Linux, as que no resulta problemtico su uso bajo este sistema operativo. Mencin especial merecen dos aplicaciones especficas para la gestin del escner: Kooka y Xsane.

Hacerlo con un programa de dibujo


Como, por ejemplo, Sdraw, un magnfico programa incluido en la suite Openoffice. Veamos cmo podemos crear algunos cliparts sencillos en pocos pasos. Procedemos as: Vamos a la barra de dibujo y escogemos el apartado de Formas de smbolos. Entonces el cursor se transforma en una cruz griega pequea. Arrastramos sobre la pgina con el botn izquierdo del ratn presionado y dibujamos la figura. Por defecto, la figura aparece dibujada con una lnea negra fina y el relleno en Azul 8.
MUNDO

Figura 5.
www.revistasprofesionales.com

41

Linux

n106

Aplicaciones

Podemos dar forma a nuestra galera sin necesidad de ser unos especialistas en diseo grfico
Figura 6.

Figura 7.

Transparencia , segn queramos, y jugando con ambos atributos podemos conseguir estos efectos: (ver Figura 6). Si utilizamos otras figuras podemos obtener estos resultados: (ver Figura 7). Como vemos es fcil crear nuestra propia galera de cliparts sin salir de Sdraw. Con un poco de prctica e imaginacin daremos forma a nuestra propia galera, partiendo siempre de los llamados Customforms o elementos geomtricos de distinto formato que encontramos en la barra de herramientas de Dibujo.

Queda pues abordar la siguiente etapa: continuar modificando esta figura, con lo que proseguimos de la siguiente forma: La volvemos a marcar con el botn principal del ratn y vamos a la barra superior de comandos, en donde seguimos al ruta Modificar/Convertir/En 3D y veremos esta transformacin: (ver Figura 4). A continuacin, y con la figura marcada vemos que se activa la barra de Propiedades del objeto, que tiene estas herramientas fundamentales para nuestro trabajo: (ver Figura 5). Escogemos un filete o lnea externa invisible. Hacemos clic sobre la figura con el botn derecho del ratn y del men que se despliega elegimos la entrada rea. A continuacin se abre una pantalla con varias pestaas. Elegimos Gradiente o

Modificar uno ya creado


En el siguiente supuesto vamos a utilizar un clipart ya diseado y vamos a modificarlo para ajustarlo a nuestras necesidades o gustos. Es importante ser cuidadosos con los temas de los derechos de autor. En consecuencia es aconsejable hacerlo desde sitios gratuitos como www.openclipart.org. (ver Figura 8). Tras hacer clic en este apartado se nos abre la pantalla principal de descargas, desde donde nos podremos optar por diversas posibilidades, como bajarnos las versiones bitmap (.png) las vectoriales (en .sgv) o a ambas a la vez, sin olvidar las opciones multi-plataforma que existen. Los cliparts pueden ser usados libremente, como se especifica en la propia Web, de todas formas conviene leer las condiciones de uso que vienen en el sitio Web.

Bajaremos la versin vectorial, en formato .svg y utilizaremos Inkscape para trabajar, realizando estos sencillos pasos: Una vez descargada la biblioteca de cliparts, vamos a la carpeta Educacin y cogemos el elemento paint.svg, un formato vectorial, que se abre con Inkscape y que tiene este aspecto: (ver Figura 9). Ahora hacemos clic sobre la imagen con el botn izquierdo del ratn y dejamos resaltada la figura. Luego vamos a la barra superior de comandos y seguimos la ruta Objeto/Desagrupar. Una vez hecho esto ya procedemos a ir moviendo los objetos que forman el conjunto

Figura 9.

Figura 8. MUNDO

Figura 10.

Linux

n106

42

www.revistasprofesionales.com

Cliparts desde Linux

Aplicaciones

Figura 11.

para organizarlos en funcin del resultado final que deseamos crear. Igualmente hay que modificar dichos elementos, y los vamos a editar siguiendo estos pasos: Suponiendo que hemos dejado marcado el elemento a editar hacemos clic sobre el mismo con el botn derecho del ratn y del men que se despliega sealamos la entrada Relleno y Borde, con lo que se abre esta pantalla: (ver Figura 10). Desde la misma podemos modificar diversos aspectos como el color y grosor del trazo o el relleno interior del elemento elegido, sin olvidar la posibilidad de aadir gradientes o modificar la opacidad del conjunto. Con un poco de trabajo podemos obtener este resultado: (ver Figura 11). En pocas palabras hemos hecho estas transformaciones: Despus de desagrupar el conjunto, hemos eliminado los elementos que no nos intere-

Figura 12.

saba tener. Para ello slo hace falta elegir y pulsar la tecla Supr. Podemos cambiar directamente el color de las reas elegidas con solo pinchar sobre la barra de colores que, por defecto, se coloca en la base de la pantalla. O si queremos ser ms precisos usaremos la ficha de la ilustracin 10. Rotar los diferentes pinceles ha sido fcil. Slo debemos enganchar con el puntero del ratn las flechas que aparecen rodeando a los elementos destacados y moverlos (y redimensionarlos) a nuestro gusto.

Naturalmente haremos uso de las utilidad de Copiar y Pegar para ahorrar trabajo. Resumiendo: Con la pantalla de Relleno y Borde podemos hacer todos los cambios aplicados arriba. El resto se pueden hacer a golpe de ratn, por ejemplo rotar o redimensionar las figuras.

Organizando los cliparts


Una vez creada nuestra galera de cliparts conviene organizarlos segn nuestros criterios o apartados creados. Linux ofrece diversos visualizadores de grficos que nos pueden servir para verlos ordenados y recuperarlos si queremos. Podemos sealar dos: Gthumb, un visualizador bastante interesante y que ofrece utilidades que van ms all de la simple visualizacin de objetos. De esta forma en la entrada Herramientas podemos rotar, escalar o convertir entre los archivos .tiff,.tga,.jpg y .png. En Imagen podremos modificar la saturacin, el brillo o el contraste de la imagen seleccionada. (ver Figura 12). F-Spot, algo ms sencillo y ms orientado al mundo de la fotografa, pero tambin puede ser de gran utilidad. (ver Figura 13).

Conclusiones
Esperamos que el lector se haya convencido de que sin salir de Linux puede crear su propia galera de cliparts. Naturalmente este breve artculo no puede acoger todas las posibilidades que nos ofrecen los programas opensource en este aspecto. Por cierto no olvidemos registrar nuestras creaciones!
MUNDO

Figura 13.
www.revistasprofesionales.com

43

Linux

n106

Sorteamos el libro
Redes Inalmbricas WiFi. Diseo, Instalacin y Configuracin
En esta ocasin, sorteamos entre nuestros suscriptores tanto en la modalidad papel, como en digital, este magnfico libro escrito por uno de nuestros colaboradores.
Este libro est dirigido a quines quieran conocer las arquitecturas de las redes inalmbricas WiFi modernas, todos los dispositivos que las componen y sus diferentes configuraciones en Windows Vista; XP y 2003 as como en las diferentes distribuciones del sistema operativo Linux. Est actualizado con la ltima norma IEEE 802.11n y tambin cubre a sus predecesoras IEEE 802.11g; IEEE 802.11b e IEEE 802.11a. Si quiere aprender a instalar, diagnosticar, reparar, actualizar, expandir, escalar, configurar y asegurar redes inalmbricas WiFi, encontrar en esta obra muchsima informacin que le ayudar a realizar dichas tareas, entender qu est haciendo y tomar todas las precauciones necesarias para trabajar con las infraestructuras de comunicaciones fundamentales para el funcionamiento de las organizaciones modernas. A su vez, se estudian uno a uno los dispositivos que forman parte de las soluciones de redes e interredes inalmbricas, siendo ideal tanto como libro de estudio como de consulta. Se incluyen precauciones, factores a tener en cuenta, soluciones a los mltiples cuellos de botella tpicos de las redes WiFi y a fallas caractersticas, tablas, figuras, diagramas y listas de pasos, para llevar a cabo las tareas ms comunes y las ms complejas. Aprender a detectar las necesidades para aumentar el rendimiento de las redes inalmbricas existentes y a decidir cules son los aspectos a mejorar con precisin, con los procedimientos detallados utilizando herramientas y dispositivos de ltima generacin.
Ttulo: Redes Inalmbricas WiFi. Diseo, Instalacin y Configuracin Autor: Hillar, Gastn C. Editor: HASA Pginas: 256 Formato: 17 x 24 cm. Peso: 405.00 Grs. ISBN: 9789505283002 EAN: 978950528300-2 Cdigo HASA: HA0326

Aplicaciones

La nueva versin de un clsico

Debian GNU/Linux 4.0


Mg. Lic. Gastn C. Hillar - gaston_hillar@hasa.com.ar

Debian es una de las distribuciones libres, gratuitas y de cdigo abierto ms importantes de Linux y que forma parte de las bases de muchas otras distribuciones populares. Como muchas cosas que son importantes en la vida, Debian tiene una gran cantidad de fanticos que jams pensaran utilizar otra distribucin o bien otro sistema operativo y tambin muchos que la consideran una versin obsoleta y demasiado rgida en cuanto a sus polticas para la inclusin y modernizacin de los paquetes. Sin embargo, nadie puede discutir que es una de las ms importantes de las existentes y nos demuestra su vigencia con el esperado lanzamiento de su versin 4.0, o bien Debian GNU/Linux 4.0, tambin conocida por su nombre Etch.
Esta nueva versin se lanz en forma estable el 15 de agosto de 2007 y ya hay disponibles bastantes actualizaciones que la mantienen al da en temas de estabilidad y seguridad. La versin anterior era Debian GNU/Linux 3.1, tambin conocida por su nombre Sarge, la cual haba sido lanzada en forma estable el 6 de junio de 2005. Es por ello, que haca ms de dos aos que los fanticos de esta distribucin esperaban por una nueva versin que finalmente ha llegado, tras 21 meses de desarrollo constante, la analizaremos detalladamente a continuacin. En esta oportunidad, vamos a describir la instalacin, configuracin y los primeros pasos para esta versin de Debian. Tambin, analizaremos qu es lo nuevo que ofrece esta versin y por qu no debemos dejar de evaluarla.

La Filosofa de Debian
Antes de entrar de lleno en las caractersticas y las novedades de esta versin con respecto a las anteriores, es fundamental repasar y comprender la filoMUNDO

sofa que respalda a esta distribucin para no evaluarla errneamente, como sucede en muchos foros en Internet. Debian GNU/Linux es un sistema operativo completamente libre, desarrollado por una cantidad enorme de voluntarios que colaboran mediante Internet. Debian es una apuesta ciento por cien al software libre, por lo cual, posee un desarrollo completamente open source (de cdigo abierto). Esta aclaracin es importante debido a que en la filosofa Debian, no se aceptan impurezas, es decir, no se incluyen paquetes ni controladores (drivers) que no respeten completamente las reglas del software libre. Por lo cual, a diferencia de algunas distribuciones basadas en Debian que incorporan software y controladores (drivers) propietarios o bien que no son cien por cien software libre o bien no cumplen con todas las caractersticas de la licencia de Debian, generalmente aclarndolo durante el proceso de instalacin u ofrecindolos como componentes opcionales, Debian directamente no los incluye. Esto quiere decir que si nuestra tarjeta grfica tiene un controlador (driver) desarrollado por el fabricante para funcionar con determinadas distribuciones y versiones de Linux, pero no es software libre, no lo encontraremos en los medios de instalacin de Debian ni dentro de los paquetes disponibles para descargar de esta distribucin, en ninguna de sus versiones. Esta filosofa, extremadamente estricta y cumplida a rajatabla por aqullos encargados de preparar la distribucin y por los desarrolladores de Debian es la que muchas veces trae confusiones sobre Debian. Por ejemplo, muchos usuarios inexpertos que intentan instalar Debian en sus ordenadores por primera vez, sin conocer detalles de la filosofa de esta distribucin, determinan que la misma no aprovecha como otras distribuciones de Linux la aceleracin por hardware provista por la tarjeta grfica con un potente GPU que tienen instalada en su ordenador. Sin embargo, no es que Debian no la aprovecha, sino que el fabricante de la tarjeta grfica provee un controlador (driver) que no respeta la filosofa del software libre, y, por ende, Debian, para mantener intacta su filosofa y su integridad conceptual en cuando a licenciamiento, no los incluye en la distribucin. Ahora bien, eso no significa que el usuario no pueda descargar o conseguir en cualquier medio el controlador (driver) e instalarlo y hacerlo funcio-

Linux

n106

46

www.revistasprofesionales.com

Debian GNU/Linux 4.0

Aplicaciones

nar en Debian. Eso es totalmente posible, pero es una decisin del usuario y de esta manera, Debian mantiene su integridad conceptual intacta. Por lo tanto, antes de instalar o utilizar Debian, resulta fundamental comprender su filosofa y por qu no se incluyen controladores y otros paquetes que s pueden estar presentes en otras distribuciones ms flexibles en cuanto al software libre y propietario. Es por ello que resulta en un grave error juzgar a Debian como una distribucin obsoleta o incompleta, como hacen algunos usuarios que vienen de otras distribuciones y las comparan con Debian sin comprender su filosofa. De hecho, Debian es una de las distribuciones ms estables de las disponibles en el mundo GNU/Linux y es por ello que tiene tantos fanticos y adeptos. Pero, claro, antes de comparar, hay que establecer la lnea base claramente y as comprender la ausencia de algunos paquetes y controladores en Debian, pero que, cualquier usuario que lo considere apropiado, podr agregarlo manualmente a su distribucin Debian. Ms adelante en este mismo artculo, por ejemplo, explicaremos la solucin a un problema tpico a la hora de intentar arrancar el entorno X en Debian ejecutndolo virtualizado y, de ese modo, nos daremos cuenta de la diferencia entre Debian y otras distribuciones que se basan en ella. Tambin debemos tener en cuenta que Debian es una distribucin que, adems del software libre, prioriza la estabilidad. Por lo cual, sus desarrolladores se encargan de seleccionar las versiones de los paquetes ms estables y no intentan competir con otras distribuciones incluyendo tempranamente nuevas versiones de ciertos componentes fundamentales de las distribuciones modernas de Linux. Por ello es probable encontrarnos con que la ltima versin disponible de Debian no incluye la versin de un componente que en otras distribuciones va por versiones superiores. Debian no compite por el mejor nmero de versin, sino que busca un sistema operativo de software libre extremadamente estable. All radica una de sus mayores fortalezas y una de las principales razones por las cuales tiene tantos fanticos y adeptos. Ahora que hemos explicado la filosofa de Debian, podemos seguir adelante con los principales aspectos de esta nueva versin, sin lugar a dudas, muy esperada por la comunidad. Pues, cada nueva versin de Debian es el resultado del xito de la filosofa del software libre y por ende, deberemos brindar por ello quienes estamos apasionados por el mundo de Linux.

Figura 1. La pantalla inicial del DVD de instalacin de Debian GNU/Linux 4.0 (Etch).

Las Plataformas y los Requerimientos


Debian GNU/Linux 4.0 (Etch) est disponible para las siguientes plataformas: Alpha. x86, 32 bits. Debian la denomina Intel x86. x86, 64 bits. Debian la denomina AMD64. ARM. HP PA-RISC. Intel IA-64 (la familia de microprocesadores Itanium de Intel). MIPS (big endian). MIPS (little endian). PowerPC. IBM S/390. SPARC. Los requerimientos recomendados para que funcione correctamente para un ordenador x86 en 64 bits (AMD64) son como mnimo los siguientes (tomamos como base la versin de 64 bits, pues en la actualidad, es conveniente instalar esta versin en los ordenadores que los soportan, que ya constituyen un gran nmero): Microprocesador Intel o AMD con extensiones de 64 bits (x86-64 para AMD o EMT64 para Intel). Es conveniente utilizar un microprocesador con velocidades superiores a 1 GHz para conseguir un rendimiento apropiado. 512 MB de memoria RAM, aunque es conveniente tener 1 GB de RAM. Si la instalacin se va a llevar a cabo en un equipo virtualizado, es recomendable asignarle una cantidad de memoria RAM cercana a 1 GB para que el rendimiento sea el adecuado. 6 GB de espacio libre en el disco duro como mnimo. Con menos, nos quedaremos cortos al poco tiempo de utilizar el sistema. Una tarjeta de video y un monitor que permitan trabajar en 1024 x 768 como mnimo. Pues, debemos tener en cuenta que las

pantallas de los entornos KDE y GNOME, estn pensadas para esta resolucin o superiores y no se vern correctamente en 800 x 600, por ejemplo. Estar de acuerdo con la filosofa de Debian y del software libre. Si no fuera as, es conveniente optar por otra distribucin de Linux ms propietaria y comercial que Debian.

Iniciando la Instalacin
La forma ms sencilla de llevar a cabo la instalacin es a partir del DVD de instalacin acorde a la plataforma a utilizar, pues de este modo, evitaremos tener que ir colocando varios CD a medida que nos vaya pidiendo. Sin embargo, para los que no tengan la posibilidad de utilizar el DVD, pueden utilizar varios CD. Los pasos sern los mismos que explicaremos a continuacin, con la diferencia que el entorno de instalacin le ir pidiendo el nmero de CD a colocar a medida que los vaya necesitando. A modo de ejemplo, tomaremos la plataforma x86-64 (AMD64 para Debian), debido a que consideramos que es la ms representativa de la media del hardware moderno en los PC de escritorio o porttiles en los que instalaremos esta versin de Debian. El entorno de instalacin corre en modo texto, lo cual para algunos puede parecer extremadamente anticuado, pero, como veremos, resulta muy sencillo e intuitivo, pues detrs del aspecto hay un potente ncleo que detecta muy bien el hardware moderno que pueda tener nuestro ordenador, inclusive uno porttil. Una vez que arranc el DVD booteable correspondiente a la plataforma que hayamos seleccionado, aparecer la pantalla inicial, esta s en modo grfico con el logo de Debian (ver la Figura 1).
MUNDO

www.revistasprofesionales.com

47

Linux

n106

Aplicaciones

Figura 2. El instalador de Debian GNU/Linux 4.0 (Etch), en modo texto, solicitndonos el nombre de la mquina para configurar la red.

Figura 3. El instalador mostrndonos las diferentes opciones para el particionado de discos.

Lo primero que podemos hacer es presionar la tecla Intro (Enter) para que se cargue el ncleo y arranque el instalador en modo texto. All deberemos escoger el idioma Spanish Espaol utilizando las teclas de movimiento del cursor y presionar la tecla Intro. Nos debemos manejar con las teclas de movimiento del cursor, el tabulador y la tecla Intro en el ambiente del instalador. Luego, escogeremos el pas, la localizacin y los idiomas adicionales que deseemos instalar adems del espaol. Finalmente, el teclado y comenzar la deteccin automtica del hardware de nuestro ordenador, lo cual, tomar unos pocos segundos e ir pasando por diferentes pantallas. Luego, se configurar la red con DHCP, para lo cual, nos pedir un nombre para la mquina (ver la Figura 2) y ms adelante el dominio. Si bien la interfaz no es grfica, es lo suficientemente amigable e intuitiva para no tenerle miedo al proceso de instalacin.

Generalmente, en la parte inferior de las ventanas en modo texto, aparecen botones para ir al prximo paso (Continuar) y al anterior de la instalacin (Retroceder). Estarn presentes durante casi todo el proceso a partir de este paso. As, llegaremos a la pantalla ms temida para los que no se sienten seguros en Linux, la del particionado de los discos (ver la Figura 3). Debemos tener especial cuidado, pues como la instalacin no es grfica y ofrece poca versatilidad a la vista para el particionado, puede inducir a cometer errores involuntarios, por lo cual, hay que prestar especial atencin en este punto. Esta es la etapa que hace que muchos usuarios todava tengan miedo de realizar una instalacin de Linux por miedo a perder datos en sus discos duros. Para finalizar la instalacin, hay que cumplir con este paso y es aqu en donde debemos prestar mucha atencin para evitar cometer errores que podremos lamentar ms adelante.

El instalador nos muestra varias propuestas predefinidas y una manual. No hace un anlisis previo de las particiones como los instaladores de otras distribuciones. Este es uno de los puntos ms flojos del instalador de Debian y lo ha sido siempre, por lo cual, hay que prestar mucha atencin. Si no estamos seguros, es conveniente seleccionar la opcin Manual e ir especificando el espacio libre en el disco en el cual deseemos tener instalado Debian. Si no tenemos espacio disponible, es muy conveniente utilizar una herramienta grfica de reparticionamiento de discos fuera de la instalacin, as evitamos cometer errores. Una vez especificado el particionamiento principal, nos consultar sobre el esquema especfico de particionado para llevar a cabo la instalacin. La opcin ms conveniente depender del uso que se le d al sistema operativo y qu aplicaciones se ejecutarn as como la cantidad de usuarios diferentes que lo emplearn. Lo ms conveniente si no tenemos

Figura 4. Visualizando el progreso de la instalacin del sistema base. MUNDO

Figura 5. Seleccionado los programas a instalar para el sistema bsico.


www.revistasprofesionales.com

Linux

n106

48

Debian GNU/Linux 4.0

Aplicaciones

Figura 6. Especificando la configuracin de xserver-xorg, comenzando por las resoluciones que maneja el monitor.

Figura 7. Un error bastante comn en esta versin de Debian si se ejecuta en un entorno de virtualizacin, al intentar arrancar el entorno X.

mucha experiencia con Linux es seleccionar la opcin Todos los ficheros en una particin, para otros ser ms conveniente separar /home en una particin o bien /home; /usr; /var y /tmp. Una vez seleccionadas todas las opciones, el instalador nos mostrar un resumen de las tareas que llevar a cabo en el disco y seleccionando la opcin Finalizar el particionado y escribir los cambios en el disco, las modificaciones se harn permanentes y no tendremos vuelta atrs. Por lo cual, hay que revisar que todo est acorde a nuestras expectativas antes de ir al siguiente paso. Para que estemos realmente seguros, nos va a volver a mostrar una pantalla con el resumen, solicitndonos una nueva confirmacin de la operacin. Una vez generadas las particiones correspondientes y formateadas, pasaremos a especificar detalles como la zona horaria, la contrasea del usuario root y la creacin de cuentas de usuario y la especificacin de sus contraseas. Finalmente, arrancar la instalacin del sistema base, de la cual se nos ir mostrando el progreso (ver la Figura 4). Para complementar los programas incluidos en el DVD o CD-ROM es conveniente especificar que el instalador utilice una rplica de red, pues esto nos garantizara que contamos con las ltimas versiones que conforman esta distribucin. Sin embargo, esto har que la instalacin sea dependiente de la velocidad de conexin a Internet que dispongamos en el equipo.

podemos utilizar el gestor de paquetes de Debian en modo grfico para terminar la instalacin en detalle. Si fuera necesario, en este paso, el instalador descargar las ltimas versiones de los paquetes o bien actualizaciones de seguridad que hayan surgido desde la fecha de los ficheros que contiene el medio de instalacin que estemos empleando. Una vez finalizado todo, comenzar la configuracin, tambin en modo texto, de xserver-xorg. Lo primero que nos va a preguntar es en qu resoluciones vamos a trabajar (ver la Figura 6). Una vez finalizada la instalacin de los paquetes y la configuracin de xserver-org, llevar a cabo la configuracin del gestor de arranque GRUB y se reiniciar el sistema. Debemos tener en cuenta que por omisin, Debian arrancar con el escritorio GNOME. Sin embargo, la distribucin tambin nos ofrece todo para instalar KDE y Xfce.

Debian se pueden encontrar con este inconveniente. El error se produce siempre en un entorno virtualizado debido a que el controlador de la tarjeta de video para el modelo que muestran generalmente las aplicaciones que crean mquinas virtuales, no est presente bajo un esquema de software libre, entonces, Debian no crea la configuracin correctamente, por limitaciones en su filosofa, que ya hemos explicado detalladamente. En Mundo Linux N 93, en el artculo Visualizacin con Xen en Debian Etch con Kernel a medida para 32 y 64 bits, Jaume Sabater explic claramente las bondades de la virtualizacin en diferentes versiones de Debian. Si esto sucede, tras ese mensaje pasaremos a un login pero en modo texto. Debemos arrancar con el usuario root y ejecutar:
dpkg-reconfigure xserver-xorg

Debian Virtualizado
Si estamos instalando esta versin de Debian en un entorno virtualizado y no en un PC real, nos puede aparecer un mensaje similar al de la Figura 7: Fall al iniciar el servidor X (su interfaz grfica). Parece como si no estuviera configurado correctamente. Quiere ver la salida del servidor X para diagnosticarlo? Tambin puede presentarse ese mensaje si no existe un controlador que cumple con la filosofa de software libre de Debian para la tarjeta grfica que tiene el ordenador en el cual se est instalando. Esto tiene que ver con lo que explicamos anteriormente en este mismo artculo en el apartado La Filosofa de Debian. Muchos nuevos usuarios que la desconocen y quieren probar esta versin de

De este modo, entraremos en la configuracin en modo texto de xserver-xorg, en la cual, podremos especificar manualmente la tarjeta de video. Si no encontramos la marca necesaria, bastar con usar el servidor X vesa que nos permitir que arranque correctamente el entorno X en modo grfico y luego desde all podremos instalar el controlador correspondiente. Una vez finalizado se sobre-escribir el archivo /etc/X11/xorg.conf y podremos arrancar el entorno X escribiendo:
startx

Configurando los Paquetes


Durante la instalacin del sistema bsico, se nos permitir seleccionar colecciones predefinidas de programas, de acuerdo al uso que le vayamos a dar al equipo (ver la Figura 5). Es importante tener en cuenta que despus

De este modo, podemos solucionar un problema muy comn que, lamentablemente, debido al desconocimiento de la forma de trabajo de Debian, en algunos foros sealan como imposible de resolver, indicando errneamente que esta versin de Debian no se
MUNDO

www.revistasprofesionales.com

49

Linux

n106

Aplicaciones

Figura 8. Debian GNU/Linux 4.0 (Etch) ejecutndose con el entorno X en un entorno virtualizado en Windows.

Figura 9. La aplicacin Actualizaciones de software (Update manager) ofreciendo una lista de actualizaciones disponibles para descargar e instalar.

puede ejecutar en un entorno virtualizado. Basta con probar y nos daremos cuenta de que es perfectamente posible (ver la Figura 8). Por lo tanto, quienes tienen miedo en particionar sus discos, no tienen excusas para poder ver de qu se trata esta versin de Debian en un entorno virtualizado.

Actualizando el Sistema
Una de las grandes mejoras en esta versin es el funcionamiento preciso de las actualizaciones del sistema. En la barra de tareas, seguramente encontraremos un icono con una especie de asterisco de color blanco con fondo naranja, o bien con otra combinacin de colores. Haciendo doble click en ste, accederemos a la aplicacin Actualizaciones de software (Update manager), que nos permitir fcilmente instalar las actualizaciones disponi-

bles para que nuestro sistema quede al da. Esta aplicacin hace muy sencillo tener al da el sistema, algo que en otras distribuciones puede resultar bastante ms complicado. Por ejemplo, en la Figura 9, podemos ver la lista de actualizaciones disponibles que nos muestra esta aplicacin, junto con el tamao de la descarga. Bastar con seleccionar o deseleccionar las casillas de verificacin de las actualizaciones que se quieran descargar e instalar o no y hacer click en el botn Instalar actualizaciones. Esta aplicacin junto con Debian se encargar del resto. Accediendo a Escritorio, Administracin, Propiedades de software, se lanzar la aplicacin Preferencias de software, que nos permitir configurar los canales de soporte para la instalacin de los paquetes y la obtencin de las actualizaciones, as como la frecuencia con la cual deber buscar nuevas versiones (ver la Figura 10).

Para agregar o quitar paquetes, se puede utilizar el gestor de paquetes Synaptic, al cual se puede acceder seleccionando Escritorio, Administracin, Gestor de paquetes Synaptic (ver la Figura 11). Esta herramienta es bastante cmoda, tiene muchas facilidades de bsqueda y resuelve fcilmente las dependencias necesarias para las instalaciones. Generalmente, no tendremos inconvenientes en realizar una instalacin utilizndolo. Debemos tener en cuenta que se trata de una capa de presentacin (front-end) que en el fondo utiliza Aptitude. La versin de Synaptic incluida es la 0.57.8. Para los usuarios principiantes, esta herramienta para la gestin de paquetes es una bendicin, pues facilita mucho las tareas que para los expertos son sencillas (ver la Figura 12). Podemos afirmar que Synaptic es una herramienta ms fcil de utilizar que los mecanismos de actualizacin detallados de algunos sistemas operativos comerciales, que nos pasan por sitios en los cuales debemos prestar atencin a la barra del navegador, realizar instalaciones adicionales y otras tareas que confunden al usuario inexperto. Con esta versin de Synaptic, todo resulta muy sencillo.

Novedades Respecto a la versin 3.1 (Sarge)


Una de las primeras modificaciones es que Debian GNU/Linux 4.0 incluye la versin del ncleo de Linux 2.6.18 para todas las arquitecturas y ya no ofrece ms soporte de los paquetes del ncleo 2.4. El soporte de dos versiones diferentes de ncleos generaba bastantes confusiones en los usuarios inex-

Figura 10. Configurando las preferencias para la actualizacin y la instalacin del software. MUNDO

Linux

n106

50

www.revistasprofesionales.com

Debian GNU/Linux 4.0

Aplicaciones

Figura 11. Seleccionando un paquete para instalar en Synaptic.

Figura 12. Synaptic muestra el detalle de los cambios que se van a aplicar.

pertos en la versin 3.1, tambin conocida como Sarge. Por omisin, el ncleo ofrece soporte completo a los microprocesadores con mltiples ncleos de ejecucin dual core (doble ncleo) y quad core (cudruple ncleo), as como a los mltiples procesadores (SMP). No se requiere instalar otro ncleo para acceder a estas caractersticas, como se requera antes. Esta versin incluye 6500 paquetes nuevos con respecto a la 3.1 (Sarge). Por supuesto, se han actualizado la gran mayora de los paquetes que se incluan en la versin anterior con las nuevas versiones estables disponibles. Sin embargo, tambin hay una cierta cantidad que ya no se incluyen y se marcan como obsoletos para esta versin. Esta nueva versin cambi de XFree86 a la versin 7.1 de XOrg. El motivo de esta modificacin fue conseguir un mayor soporte para ms hardware y favorecer la autodeteccin. Por lo tanto, ahora Debian permite el uso de Compiz, un gestor de ventanas de composicin para el entorno X que aprovecha la aceleracin OpenGL por hardware o bien las bibliotecas MESA. Se incluyen las siguientes versiones de los entornos de escritorio: GNOME 2.14. KDE 3.5.5a. Xfce 4.4. Y de las aplicaciones de escritorio, ofimticas y de productividad general: Abiword 2.4.6. Evolution 2.6.3. Gaim 2.0. GNUcash 2.0.5. GNUmeric 1.6.3. KOffice 1.6. OpenOffice.org 2.0.4a.

Muchos usuarios se pueden preguntar: Por qu Debian no incluye a Mozilla Firefox?. La respuesta es muy simple, Debian incluye a Mozilla Firefox, pero lo hace cumpliendo con su filosofa. Como Firefox y Thunderbird (el cliente de correo de Mozilla), son marcas registradas y no cumplen con la filosofa de libertades de Debian, entonces aparecen con los nombres modificados. Por algo hemos incluido en este artculo una extensa explicacin sobre los principios y lo estricta que es en el cumplimiento de la filosofa de libertades. Encontraremos a Iceweasel (ver la Figura 13) en su versin 2.0.0.10, el cual no es nada menos que el navegador Web Mozilla Firefox, pero con el nombre modificado para que se cumpla con la filosofa Debian, en la cual no existen marcar registradas, hay libertades que no se pueden restringir. Todo lo que implique restricciones, no entra en Debian. Como habamos explicado anteriormente, es cuestin de comprender la filosofa y encontrarle la vuelta. Un usuario inexperto lo primero que pensara es que Debian no incluye a Firefox y desinstalara automticamente Debian si se trataba de su navegador favorito. Ahora bien, si comprende la filosofa, se involucra en el proyecto y descubre, por ejemplo, a travs de la lectura de Mundo Linux, que en Debian Firefox lo encontrar como Iceweasel y puede trabajar muy contento con su instalacin Debian. Por otro lado Icedove es nada menos que el cliente de correo Mozilla Thunderbird, con su nombre tambin modificado, por las mismas razones explicadas anteriormente. Hay ciertas aplicaciones de las cuales se incluyen versiones un tanto antiguas. Por ejemplo, El Gimp se ofrece en su versin

2.2.13. Sin embargo, es decisin de los usuarios actualizar las aplicaciones a las nuevas versiones que consideren ms adecuadas. Eso sucede en prcticamente todas las distribuciones de Linux. Sin embargo, en trminos generales, est muy actualizada. Se incluyen actualizaciones importantes a muchos programas que forman parte generalmente de las distribuciones Linux y que ya haban quedado un tanto obsoletos en la versin anterior de Debian. Entre otros, se detallan a continuacin los ms destacados: La biblioteca GNU C 2.3.6. La coleccin de compiladores de GNU 4.1. Python 2.4 y PHP 5.2. Los servidores de correo Exim 4.63 (ste es el servidor de correo predeterminado para las nuevas instalaciones); Postfix 2.3; Courier 0.53 y Cyrus 2.2. Los servidores Web Apache 2.2 y fnord 1.10. Los servidores de bases de datos MySQL 5.0.32 y PostgreSQL 8.1. Los servidores de nombres Bind 9.3 y maradns 1.2. El servidor de directorio OpenLDAP 2.3. El servidor OpenSSH 4.3. Si bien la instalacin puede presentarnos algunos inconvenientes, los cuales hemos expuesto claramente en este artculo, sin mucho esfuerzo, tenemos un sistema operativo moderno y actualizado, con una gran cantidad de aplicaciones instaladas. Claro que siempre deberemos tener en mente la filosofa de Debian y en vez de salir a buscar a Mozilla Firefox deberemos iniciar Iceweasel 2.0.0.10, por ejemplo. Para la mayora de las tareas que realizan hoy en da los usuarios comunes de ordenadores, comprendiendo los conceptos de la filosofa Debian y adaptndose a ellos, es difcil
MUNDO

www.revistasprofesionales.com

51

Linux

n106

Aplicaciones

Figura 13. El navegador Web Iceweasel (renombrado de Mozilla Firefox).

que Debian GNU/Linux 4.0 (Etch) no ofrezca una aplicacin necesaria. Por lo tanto, es una distribucin que no debemos dejar de tener en cuenta por su estabilidad, cantidad de paquetes e historia. An cuando el proceso de instalacin no sea el ms elaborado de las distribuciones modernas.

ra respeta al idioma espaol, por lo cual, encontramos nuevamente que esta versin de Debian posee una de las mejores traducciones a nuestro querido idioma.

Con respecto a la deteccin de hardware, est muy actualizada en esta versin 4.0. Sin embargo, como explicamos anteriormente en el apartado referido a la filosofa de Debian, tal vez una de las grandes desventajas desde el punto de vista de un usuario final es que en muchas ocasiones ser necesario instalar manualmente los controladores de dispositivos cuyos fabricantes no los ofrezcan bajo las mismas filosofas que adopta Debian para incluirlos en su distribucin. Los mayores problemas se presentan en las tarjetas grficas con capacidades de aceleracin, las tarjetas de redes inalmbricas WiFi y bluetooth, entre otros de menor importancia. Esto es lo que algunas distribuciones basadas en Debian, como Ubuntu, obtiene como ventaja con respecto a Debian y puede resultar un punto fuerte a la hora de decidirse para los usuarios finales que quieren finalizar una instalacin y no tener que hacer modificaciones manuales a sta. Claro est que esas modificaciones no son demasiado complejas una vez que comprendemos el funcionamiento de Debian, pues nos brinda fcil acceso a todas las herramientas necesarias para hacerlo. Es una cuestin de predisposicin. Sin embargo, un punto que suele ser problemtico para otras distribuciones, resulta ms sencillo en Debian, pues en su simple ins-

Conclusin
Sin lugar a dudas, Debian GNU/Linux 4.0 (Etch) representa un nuevo paso hacia delante en la filosofa del software libre y renueva el xito de una de las distribuciones ms emblemticas e importante de Linux. Los miembros de la comunidad deben festejar esta nueva versin que, a pesar de proveer una herramienta de instalacin en modo texto que pudiera parecer precaria en estos tiempos, es muy fcil de instalar. Hay que ser claros en este punto, hay muchos utilitarios en modo grfico que son ms difciles de utilizar y menos intuitivos que otros en modo texto, por lo cual, no debemos prejuzgar por las apariencias, como nos ensean en la vida. El proceso de instalacin en modo de texto, no tiene mucho que envidiar a otros instaladores grficos, exceptuando a la belleza del aspecto. No debemos olvidarnos que los instaladores de sistemas operativos comerciales muy populares tambin arrancan en modo de texto. Es cierto que determinadas pantallas pueden aparecer en idioma ingls, pero la mayoMUNDO

Figura 14. El monitor del sistema mostrando grficos para la carga de dos ncleos de procesamiento.
www.revistasprofesionales.com

Linux

n106

52

Aplicaciones

talador en modo de texto, nos pregunta en qu resoluciones trabajaremos con nuestro monitor y sus parmetros de funcionamiento, facilitndonos algo que en otras instalaciones da grandes dolores de cabeza. Pues, como muchas veces la autodeteccin del tipo de monitor y de sus capacidades no es precisa, luego su configuracin puede resultar tediosa, en cambio, como la instalacin lo pregunta en un punto, nos facilita resolver ese tema en el mismo momento en que estamos instalando el sistema operativo. Con respecto al particionamiento, sin lugar a dudas, el hecho de no tener una instalacin en modo grfico, puede resultar un tanto compleja para los usuarios que no son expertos en el tema. Claro que, este punto es una de las eternas complejidades de todas las distribuciones de Linux para los usuarios que ya tienen Windows u otro sistema operativo instalado y funcionando y que quieren proteger sus datos y tienen miedo de cometer algn error. Si tenemos espacio sin particionar y no debemos llevar a cabo mayores cambios, resultar sencilla. Ahora bien, si hay que hacer modificaciones, tal vez sea conveniente recurrir a un software especfico de reparticionamiento que nos permita visualizar en forma grfica los cambios que estamos llevando a cabo en el disco y de esta manera, nos sintamos ms seguros de lo que estamos haciendo. Si bien se incluyen versiones estables muy modernas de la mayora de las aplicaciones clsicas de las distribuciones Linux, faltan las que no cumplen con la filosofa Debian. Otra vez, los usuarios finales no estarn contentos con esa decisin y se encontraran con que la distribucin puede estar por debajo de sus expectativas. Sin embargo, es cuestin de buena voluntad, pues a cambio obtenemos una distribucin hper-estable y extremadamente funcional. La instalacin de paquetes de software y de actualizaciones sigue siendo de lo ms sencilla y gil, por esa misma razn a dado lugar a tantas otras distribuciones que se basan en sta y es la distribucin Linux predilecta para quines instalan y desinstalan nuevos paquetes recurrentemente. A diferencia de Debian GNU/Linux 3.1 (Sarge), esta nueva versin se distribuye en 3 DVDs (1 ms que la versin anterior), pues se agregaron muchsimos paquetes y la base de paquetes Debian sigue creciendo da a da. Otro de los puntos fuertes ms importantes de esta distribucin, pues siempre encontraremos un paquete estable de lo que estemos buscando, siempre y cuando cumpla con la filosofa de Debian. Otro de los puntos fuertes es su documentacin. Est disponible en idioma espa-

ol, muy actualizada y es abundante en cuanto foro y sitio especializado. Por lo cual, es muy difcil que a una pregunta de cmo resolver un inconveniente en Debian o cmo conseguir que determinado software funcione, no le encontremos varias respuestas, inclusive en idioma espaol. Pocas distribuciones de Linux se pueden dar ese gran lujo. Especficamente hablando de la versin 4.0 (Etch), ya encontramos muchsima documentacin sobre sta en espaol y sigue creciendo da a da. Por lo cual, es otro punto favorable para probar esta nueva versin. El soporte de 64 bits y de los microprocesadores con mltiples ncleos de ejecucin dual core (doble ncleo) y quad core (cudruple ncleo) es total y el ncleo as como las bibliotecas y los utilitarios estn bien preparados para sacarles provecho (ver la Figura 14). Es por ello que para este artculo hemos empleado como base la instalacin de la versin x86-64 (AMD64). A muchos otros sistemas operativos comerciales les cuesta muchsimo saltar la barrera de los 32

bits, mientras Debian ya se ha establecido en los 64 bits, como muchas otras distribuciones de Linux. Un punto a favor que no debemos dejar de tener en cuenta. Es un placer ver una nueva versin de Debian GNU/Linux, en este caso la tan esperada y ansiada 4.0 (Etch), pues demuestra, tras 21 meses, que esta distribucin tan querida por muchos en la comunidad, sigue evolucionando y marcando el ritmo para muchas otras que se alimentan de Debian para seguir creciendo. Como hemos mencionado en muchas oportunidades, sigue faltando que algunos fabricantes de hardware se den cuenta que en sus DVD, CD y pginas Web, deben incorporar controladores (drivers) para todas las distribuciones de Linux. Y que no se olviden que la filosofa del software libre nos ofrece productos completos y estables como Debian, a los cuales con ms controladores que cumplan con esa filosofa, lo haran crecer an ms. Y, sin lugar a dudas, venderan ms hardware, por lo cual, tendran un rdito comercial an mayor.

Referencias
Publicaciones: Mundo Linux. Sarge. Debian GNU/Linux 3.1. Un especial de Mundo Linux que incluye los 2 DVD y manual de instalacin de la versin anterior de Debian GNU/Linux. Sin lugar a dudas, un muy buen punto de referencia para luego pasar a la versin 4.0 (Etch). Libros: Debian GNU/Linux 3.1 Bible. David B. Harris y Jaldhar Vyas. Wiley. 2005. Este libro cubre todos los conceptos necesarios para sacar el mximo provecho a Debian GNU/Linux 3.1 (Sarge). Es una excelente obra recomendable para quienes vayan a trabajar con Debian. Su desventaja es que est en ingls y que por el momento no est disponible la publicacin para la versin 4.0 (Etch) que hemos analizado en este artculo. Reparacin y Actualizacin de PC, 4 Edicin. Gastn C. Hillar. Editorial HASA (www.hasa.com.ar), 2007. Este libro explica en detalle la forma de reparticionar discos duros y detalles del trabajo con virtualizacin de hardware para instalar diferentes versiones de Linux. Tambin desarrolla los temas relacionados con la configuracin del CMOS Setup para determinar el dispositivo de arranque para instalar un sistema operativo nuevo en un ordenador. En la Web: http://www.debian.org/ Pgina Web del proyecto Debian. Ofrece vnculos para poder descargar las diferentes variantes de Debian, desde un Live CD, hasta los DVDs o los conjuntos de CDs para las diferentes plataformas soportadas por Debian. La gran ventaja es que la pgina est traducida a muchos idiomas, entre ellos, por supuesto, el espaol. Es algo muy importante a tener en cuenta, pues muchas otras distribuciones muy populares no proveen documentacin abundante en idioma espaol. http://www.esdebian.org/ Pgina Web de la comunidad de usuarios Debian en espaol. En ella es posible encontrar tips, recomendaciones y soluciones a problemas relacionados con las diferentes versiones de Debian. Es muy til tambin para compartir informacin con otros en sus diferentes foros. http://guia-debian.es Pgina Web de Gua-Debian, un proyecto joven, nacido el Noviembre de 2007, constituyendo una Wiki de Debian en espaol. Si bien falta mucho por completar, es un punto de partida para acceder a documentacin muy interesante de las diferentes versiones de Debian en nuestro idioma. El proyecto busca ofrecer a los usuarios de Debian lo que tienen los usuarios de Ubuntu en Gua-Ubuntu. Sin lugar a dudas, un sitio que cualquier usuario o potencial usuario de Debian no debe dejar de visitar y aqullos con experiencia, deben aportar para que otros se beneficien de sus conocimientos y as lograr que Debian sea cada vez ms accesible a todos. MUNDO

www.revistasprofesionales.com

53

Linux

n106

Redes

Visualizando Silverlight

Moonlight: Silverlight en Linux


Mg. Lic. Gastn C. Hillar - gaston_hillar@hasa.com.ar

Moonlight (Luz de luna) es un interesantsimo proyecto en continuo desarrollo que est llevando a cabo Novell para permitir el funcionamiento de Microsoft Silverlight en Linux y en el mundo del cdigo abierto (open source) y del software libre. Moonlight permite que contemos con la posibilidad de visualizar pginas que incluyan contenido Silverlight en Linux, acceder a un Linux SDK para construir aplicaciones Silverlight y acceder a emplear su motor para aplicaciones de escritorio.
Silverlight: Cdigo cerrado y monoplataforma
A principios del ao 2007, Microsoft lanz una nueva tecnologa de presentacin Web para la creacin de RIA (Rich Internet Applications Aplicaciones de Internet con buen contenido multimedia), denominada Silverlight (tambin conocida con el antiguo nombre de cdigo WPF/E). Sin lugar a dudas, se trata de una variante al uso de Flash para la construccin de pginas Web y sitios con un fuerte contenido multimedia y con la idea de brindar a los usuarios interfaces grficas ms creativas, funcionales, atractivas e interactivas. Silverlight se contruye sobre la base de XAML (eXtensible Application Markup Language Lenguaje de marcado de aplicaciones extensible) y aparece como el

compaero de WPF (Windows Presentation Foundation), presentado en Microsoft .Net Framework 3.0. A partir de este lanzamiento, muchos sitios fueron creando contenidos basados en Silverlight. Pero, como sucede con los contenidos Flash, para poder visualizarlos correctamente, se tiene que instalar un plug-in (extensin) en el navegador Web que se est utilizando. Microsoft present a Silverlight como una tecnologa multiplataforma, preparada para trabajar con una variedad de navegadores Web (no solamente Microsoft Internet Explorer), e inclusive mencionaba la compatibilidad con Linux. Sin embargo, no hace falta aclarar que el concepto de multiplataforma de Microsoft es muy diferente al que se tiene asociado a esa palabra. Silverlight est disponible para diferentes versiones de Windows y MAC OS, para diversas versiones de los navegadores Web Internet Explorer; Mozilla Firefox y Safari. All se termin el mundo multiplataforma de Silverlight. Por otro lado, se recomienda utilizar Silverlight en la versin de 32 bits de Internet Explorer, aunque se est ejecutando un sistema operativo de 64 bits. Sin embargo, ms all de esta falta de soporte a muchas plataformas, inclusive dentro del mundo Windows, la cantidad de sitios Web que emplean Silverlight va creciendo da a da. Desde el gran estallido de Internet, nunca hubo una gran preocupacin por conseguir que las pginas con fuerte contenido de multimedia se pudieran ver correctamente en diferentes plataformas y, si bien en los ltimos aos hay mayor conciencia de esto, tampoco se va a cambiar de un da para el otro esta mala costumbre. Si visitamos un sitio Web desde cualquier navegador en Linux y no tenemos instalado Moonlight o algn otro plug-in que permita el uso de contenido Silverlight, aparecer el cartel Install Microsoft Silverlight o Instalar Microsoft Silverlight, como se

Figura 1. Un sitio Web desarrollado ntegramente en Silverlight que no se puede mostrar, pues requerimos instalar Silverlight. MUNDO

Linux

n106

54

www.revistasprofesionales.com

Moonlight: Silverlight en Linux

Redes

Izquierda: Figura 2. Resultado de intentar instalar Silverlight en Linux. Derecha: Figura 3. El instalador provisto por Silverlight es monoplataforma (un ejecutable que solamente se puede ejecutar en las diferentes versiones de Windows).

muestra en la Figura 1, en la cual intentamos visualizar el sitio http://silverlight.net/samples/ 1.0/Grand-Piano/default.html, el cual es un buen ejemplo de la clase de interaccin con el usuario que se puede conseguir con Silverlight y de la creatividad de las interfaces con el usuario de las RIA. Si hacemos click sobre la imagen Install Microsoft Silverlight o Instalar Microsoft Silverlight, nos derivar a otra pgina, en la cual nos saldr una leyenda similar a la siguiente (ver la Figura 2): Microsoft Silverlight may not be supported on your computers hardware or operating system Microsoft Silverlight puede no ser soportado por el hardware de su ordenador o su sistema operativo Pero, si seguimos visualizando esta pgina, nos encontramos con un botn que dice Click to install (Click aqu para instalar). Tambin encontramos este botn en otras pginas que tienen contenido Silverlight o en pginas que lo promocionan. Si hacemos click, nuevamente nos veremos decepcionados, pues se intentar descargar un fichero denominado Silverlight.exe (nada menos que un ejecutable para Windows) que no nos servir en una distribucin Linux (ver la Figura 3). A pesar de la descripcin de Silverlight como multiplataforma, en un claro ejemplo vimos como en el mundo de Linux, el contenido Silverlight no tiene un soporte de parte de Microsoft. Sin embargo, el pacto de cooperacin entre Microsoft y Novell para la interoperatibilidad de Windows con Linux present para Novell incentivos en determinados proyectos, como el conocido proyecto Mono, comentado en varios artculos independientes en nmeros anteriores de Mundo Linux, el cual facilita la ejecucin de .Net en Linux. De la mano de Mono, llega tambin Moonlight, el cual permite la presentacin y ejecucin de contenido Silverlight en Linux.

Moonlight tambin es uno de los componentes del proyecto Olive, encargado de brindar un conjunto de bibliotecas adicionales a Mono, como las nuevas API (Application Programming Interfaces Interfaces de programacin de aplicaciones) incorporadas en .Net 3.0 y 3.5 por Microsoft. Cuando parece que los alcances del software libre se ven amenazados por el crecimiento del uso de una tecnologa, la historia demuestra que siempre aparece un proyecto que abre las puertas para que el software libre y, ms especficamente, Linux, est cada vez ms a la vanguardia. Moonlight es un proyecto que consigue eso con respecto a Silverlight y, de esta manera, no tendremos que perdernos los nuevos sitios Web que emplean esta tecnologa de Microsoft. Cabe aclarar que, respetando el acuerdo de cooperacin entre Novell y Microsoft, Microsoft colabora en el proyecto Moonlight para que Silverlight est disponible en Linux.

Instalacin del plug-in


Para poder visualizar correctamente pginas con contenido Silverlight en un explorador Web en Linux, podemos instalar el plug-in de Moonlight. Tomaremos como base su instalacin en Mozilla Firefox (Iceweasel en Debian, Knoppix y muchas otras distribuciones basadas en estas dos). Sin embargo, debemos tener en cuenta que Moonlight tiene problemas con la beta 3 de Mozilla Firefox, por lo cual, no es conveniente su instalacin con ste. Algunas distribuciones de Linux han incluido esta beta 3, por lo cual, se recomienda revisar o bien tener en cuenta que podemos tener algunos problemas de incompatibilidad que redundarn en inconvenientes adicionales a los bugs que ya posee Moonlight en la navegacin de pginas con contenido Silverlight. Siga estos pasos: Inicie Mozilla Firefox (o Iceweasel). Navegue a la pgina http://www.gomono.com/moonlight o bien utilice el archivo correspondiente a la versin a instalar descargado previamente de sta. Si el cdigo de la pgina funciona correctamente, detectar la versin del navegador y por ende el sistema operativo con el cual estamos trabajando, si se trata de una versin de 32 bits o de 64 bits y dejar nicamente habilitados los hipervnculos a las versiones que se puedan instalar. Si no fuera as, deberemos seleccionarlo en forma manual. La versin de 32 bits descargar el plug-in novell-moonlight2.0-i586.xpi y la de 64 bits novell-moonlight-2.0-x86_64.xpi, correspondientes a los hipervnculos bajo el ttulo Moonlight 0.6 Profile: 2.0 con los ttulos Linux/i586 y Linux/x86_64, respectivamente. Haga click en el hipervnculo correspondiente y aparecer una caja de dilogo alertndonos que el complemento a instalar no est firmado (ver la Figura 4). No se trata de un software malicioso, pues la
MUNDO

Moonlight: Cdigo abierto


Moonlight es la implementacin de cdigo abierto para Silverlight, de manera tal que nos permite trabajar con esta tecnologa en Linux, ofreciendo implementaciones para 32 bits y 64 bits. Al igual que Silverlight, funciona como un complemento para el explorador Web. Moonlight va por la versin 0.6 y todava le falta mucho camino para llegar a ser una implementacin completa de Silverlight que permita visualizar y ejecutar en forma transparente todo el contenido Silverlight en sus versiones . El soporte para Silverlight 2.0 todava est en paales, pues se encuentra en una etapa pre Alpha. Aunque, la mayora de los sitios estn diseados con Silverlight 1.0 y 1.1, por lo cual, a corto plazo no es un problema. Adems, Moonlight es de cdigo abierto, por lo cual, la comunidad open source se beneficia de conocer y poder mejorar los parsers de XAML y de contar con implementaciones de 64 bits.

www.revistasprofesionales.com

55

Linux

n106

Redes

ejecucin contenido Silverlight (ver la Figura 7). Debug (Depurar). Nos mostrar una caja de dilogo con el detalle del contenido XAML en forma jerrquica, incluyendo el nombre de cada objeto y su clase. Esta opcin est muy buena para poder comprender cmo estn confeccionados diferentes componentes Silverlight y nos ayudar a desarrollar aplicaciones con esta tecnologa (ver la Figura 8). Sources (Fuentes). Nos presentar una ventana con todos los ficheros que componen el contenido Silverlight, por ejemplo, el fichero XAML y las imgenes JPG, detallando su ubicacin en Internet y el nombre del fichero que gener el navegador en su cach. Seleccionando un fichero y haciendo click en el botn Open file (Abrir fichero), podremos ver su conFigura 4. Firefox mostrando la advertencia que el plug-in correspondiente a Moonlight no est firmado.

fuente es el sitio del proyecto Moonlight, por lo cual, tenemos que esperar unos segundos hasta que se habilite el botn Instalar ahora (Install now). Una vez finalizada la instalacin, nos indicar que es necesario reiniciar Firefox para completarla y activar el nuevo complemento. Presione el botn Reiniciar Firefox. Para comprobar el funcionamiento, podemos ir a una de las pginas de ejemplos de Silverlight, como el gran piano. Navegue a la pgina http://silverlight.net/ samples/1.0/Grand-Piano/default.html y debera presentarse en pantalla un piano en el cual podemos hacer click en sus teclas escuchando las notas correspondientes a travs de la tarjeta de sonido (ver las Figuras 5 y 6). Como podemos ver

en estas figuras, se consigue el mismo resultado que la vista en Windows XP con Internet Explorer. Haciendo click con el botn secundario del ratn sobre el contenido Silverlight, accedemos a un men contextual diferente al que se presenta en Windows con Internet Explorer. Aparecern cuatro opciones: Novell Moonlight Nos mostrar una caja de dilogo con la versin de Moonlight y sus crditos. Properties (Propiedades). Nos presentar una caja de dilogo con las propiedades del objeto Silverlight, incluyendo el archivo XAML fuente, el ancho y la altura, el color de fondo, el tipo de contenido Silverlight, y los cuadros por segundo que se estn mostrando, junto con una serie de opciones para depurar en tiempo de

Figura 7. Visualizando las propiedades del objeto con contenido Silverlight a travs de Moonlight.

Figura 5. Firefox mostrando contenido Silverlight, la aplicacin de ejemplo del gran piano. MUNDO

Figura 6. La misma aplicacin del gran piano mostrndose en Windows XP, con Internet Explorer.
www.revistasprofesionales.com

Linux

n106

56

Moonlight: Silverlight en Linux

Redes

Figura 9. Visualizando los fuentes del fichero XAML en gedit, a travs de Moonlight.

Figura 8. Visualizando el contenido XAML en forma jerrquica a travs de Moonlight.

tenido. Por ejemplo, si hacemos click en el fichero GrandPiano.xaml, podremos ver el cdigo fuente XAML (ver la Figura 9). Visualizando los diferentes ficheros que entran en juego en un componente Sivlerlight nos ayuda a comprender su funcionamiento. La pgina principal de la tecnologa Microsoft Silverlight es http://silverlight.net. Visitndola, encontraremos referencias a muchos sitios Web de ejemplo que emplean componentes Silverlight. Aunque, debemos tener en cuenta que existen varias que no funcionarn correctamente con Moonlight. Pues, como explicamos anteriormente, se trata de un proyecto en continuo desarrollo y se estn solucionando bugs constantemente, por lo cual, todava no se trata de una versin estable. Pero, est ayudando a que Linux tenga acceso al contenido Silverlight y es de esperar que se vaya mejorando de manera tal que se termine alcanzando una versin estable que permita a Silverlight ser realmente multiplataforma, para el beneficio de los usuarios de la Web que empleamos Linux diariamente y no queremos perdernos contenido. Tambin, hay que tener en cuenta que todava no est disponible la funcionalidad de reproduccin de video ni de MP3 en Moonlight, por lo cual, tambin pueden existir problemas al trabajar con esta clase de

contenidos. Sin embargo, el hecho que ya exista un proyecto para que poder visualizar Silverlight en Linux es una buena medida para no eliminar a una plataforma de una parte del contenido Web, por ms que todava esta tecnologa no llegue a una gran difusin. Otro detalle a tener en cuenta es que si bien Moonlight es software libre, su licencia es restringida en caso de utilizarlo para el desarrollo de sistemas embebidos (embedded systems) comerciales.

Instalacin desde los fuentes


Hemos presentado la forma ms fcil de instalar el plug-in en FireFox, descargndolo directamente del sitio de Moonlight. Ahora bien, si queremos acceder a la ltima versin de Moonlight en desarrollo y a mayores ejemplos, funcionalidades y contenidos, podemos realizar una instalacin desde los fuentes. En este punto, es importante hacer una aclaracin, la documentacin de Moonlight es extremadamente escasa e incompleta en idioma ingls, algunas de las tcnicas de instalacin no funcionan o no se corresponden con las ltimas versiones disponibles, por lo cual, debemos tener especial cuidado a la hora de compilar desde los fuentes. La poca documentacin disponible est dirigida prcticamente a los participantes del desarrollo del proyecto y no a los que vayan a trabajar con ste. Una de las potenciales ventajas que tenemos de compilar desde los fuentes es que podremos acceder a la reproduccin de video y de MP3. Sin embargo, como todava son necesarios muchos cambios a ffmpeg para adaptarlo a Moonlight, lo cual puede hacer que otras aplicaciones que lo utilicen dejen de utilizar correctamente, no es recomendable hacerlo salvo en una instalacin en la que

sepamos los riesgos que estaremos corriendo. Hay dos opciones a la hora de instalar desde los fuentes, una es realizar la instalacin completa de Mono Olive con Moonlight, es decir, de todo el paquete de utilitarios ligados al proyecto Mono con soporte para .Net 3.0 y 3.5, WPF, Framework y Silverlight, entre otros. La otra es centrarse en Moonlight para generar el plug-in para FireFox y poder navegar por estas pginas Web. Vamos a centrarnos en esta segunda opcin, que nos tomar menos tiempo. Para hacerlo, siga estos pasos (vamos a tomar como base Ubuntu, y las distribuciones basadas en sta para el procedimiento de instalacin, sin embargo, se puede aplicar a todas las distribuciones modernas): Primero, tenemos que asegurarnos de cumplir con ciertas dependencias. Si no estamos acostumbrados a compilar desde los fuentes, es muy probable que nos falten muchas de las bibliotecas y compiladores esenciales, por lo cual, tardaremos un tiempo ms en instalar todos los pre-requisitos. Debemos tener en cuenta que, dependiendo de la clase de ordenador en el cual llevemos a cabo esta tarea, puede tomar bastante tiempo, desde decenas de minutos a horas. Abra una consola (terminal). En muchos casos, los paquetes los puede instalar utilizando la herramienta provista por la distribucin en vez de emplear los comandos de consola. Tomando los nombres como referencia, no tendr inconvenientes en llevarlo a cabo de ese otro modo. Instale los paquetes g++, libgtk2.0-dev, pkg-config, autoconf, automake, subversion, libtool y libasound2-dev; libavformat-dev, libavcodec-dev, librsvg2-dev, build-essential y bison:
MUNDO

www.revistasprofesionales.com

57

Linux

n106

Redes

sudo apt-get install g++ sudo apt-get install libgtk2.0-dev sudo apt-get install subversion sudo apt-get install pkg-config sudo apt-get install autoconf sudo apt-get install automake sudo apt-get install libtool sudo apt-get install libasound2-dev sudo apt-get install libavformat-dev sudo apt-get install libavcodec-dev sudo apt-get install librsvg2-dev sudo apt-get install build-essential sudo apt-get install bison

com/pub/mono/sources/moon/moon0.6.tar.bz2. Una vez descargado el fichero, tenemos que copiarlo dentro de la carpeta moonfuentes. Y all ejecutar (reemplazar moon-0.6.tar.bz2 por el nombre del fichero descargado si fuera otra versin):
bunzip2 moon-0.6.tar.bz2 tar xzf moon-0.6.tar mv moon-0.6 moon

Ahora, tenemos que ir a la carpeta plugin e indicarle que termine de generar las bibliotecas para el plug-in de FireFox, de esta manera:
cd plugin sudo make test-plugin

En la ltima lnea cambiamos el nombre de la carpeta a moon, as servir cualquiera de las dos opciones escogidas en los pasos anteriores, seguimos con los mismos pasos.
cd moon

Ahora, hay que instalar el paquete de desarrollo XULRunner SDK de Mozilla y las bibliotecas para las versiones ms nuevas de FireFox, para poder generar el plug-in:
sudo apt-get install libxul-dev sudo apt-get install firefox-dev

Si queremos generar el plug-in con soporte para reproduccin de video y MP3, podemos ejecutar esta lnea:
sudo ./autogen.sh enable-user-plugin with-mono=no

Casi con seguridad, va a estar ubicado en la carpeta home correspondiente a su usuario. Vamos a crear una nueva carpeta denominada moonfuentes
mkdir moonfuentes cd moonfuentes

Cabe aclarar que todava est inestable y existen algunos problemas, dependiendo de la versin. Si tenemos inconvenientes, nos conviene inhabilitarlo hasta que se encuentre estable y le indicamos que no habilite este mdulo:
sudo ./autogen.sh enable-user-plugin with-mono=no with-ffmpeg=no

Si todo funcion correctamente obtendremos el resultado que se muestra en el Listado 2. La forma ms segura de que funcione correctamente en las diferentes versiones de Moonlight que podemos llegar a descargar, debido a que se trata de un proyecto en permanente evolucin, es generar un fichero con extensin xpi de instalacin del plugin. Hay otras maneras, pero, dependiendo de la versin de Moonlight y la de Firefox, podemos estar mucho tiempo sin encontrar explicaciones de por qu no funcionan. Es conveniente tomar el camino ms seguro. Ya estamos dentro de la carpeta plugin, vamos a la install y construimos el instalador con extensin .xpi, es decir, el fichero novell-moonlight.xpi.
cd install sudo make

Ahora vamos a traer la ltima versin del sistema de control de versiones subversion de ffmpeg:
svn co svn://svn.mplayerhq.hu/ffmpeg/ trunk ffmpeg

En ambos casos utilizamos la opcin with-mono=no, pues queremos solamente Moonlight, pero no Olive ni nada adicional del proyecto Mono, en este caso. Para cualquiera de los dos casos, debemos compilar con las siguientes lneas:
sudo make sudo make install

Vamos a ir a la carpeta ffmpeg que se cre como resultado de traer su ltima versin y vamos a compilar las bibliotecas:
svn checkout svn://svn.mplayerhq.hu/ ffmpeg/trunk ffmpeg cd ffmpeg sudo ./configure sudo make sudo make install cd ..

Si todo sali bien, deberamos tener un resultado en pantalla similar al que se muestran en el Listado 1.

Como resultado de ello, vamos a tener un fichero moonlight.xpi, en la carpeta install, dentro de plugin y de la carpeta moon que habamos creado al principio. Ahora, simplemente, basta con abrir un Navegador de ficheros y abrir moonlight.xpi utilizando Mozilla Firefox. Inicialmente, no vamos a tener la extensin asociada a Firefox, por lo cual, tenemos que hacer click con el botn secundario del ratn y escoger la opcin Abrir con otra aplicacin, seleccionar Navegador Web Firefox (ver la Figura 10) y hacer click en el botn Abrir. Aparecer una advertencia similar a la explicada al principio y mostrada en la Figura 4. Hay que hacer click en el botn

En este punto tenemos dos opciones. Una es obtener la ltima versin disponible de Moonlight, con la siguiente lnea (se crear la carpeta moon):
svn co svn://anonsvn.mono-project.com/ source/trunk/moon

O bien, descargando la version ms estable publicada por el proyecto. Por ejemplo, la versin 0.6, desde ftp://ftp.novell.
MUNDO

Figura 10. Abriendo el instalador del plugin con Firefox.


www.revistasprofesionales.com

Linux

n106

58

Moonlight: Silverlight en Linux

Redes

Instalar ahora y reiniciar el navegador Web (ver la Figura 11). Pruebe con la pgina de ejemplo mencionada anteriormente el funcionamiento de Moonlight con contenido Silverlight. Un detalle que debemos tener en cuenta es que el plugin tiene bastantes bugs y por lo tanto, a veces tenemos que reiniciar varias veces el navegador para que comience a funcionar Silverlight. Pero, como se trata de un proyecto muy activo, en el cual se estn solucionando bugs permanentemente, es bueno ir actualizando la versin instalada y seguramente se irn mejorando estos problemas. Sin Moonlight, el mundo del cdigo abierto quedara totalmente afuera del contenido Silverlight, por lo tanto, se trata de un primer paso.

El problema del nombre del navegador Web


Un proyecto de Silverlight en la Web tiene como mnimo los siguientes cuatro ficheros: Un fichero HTML que aloja a la instanacia del plug-in de Silverlight (Moonlight).

Figura 11. Una pgina con contenido Silverlight en Iceweasel.

Listado 1

Los ltimos mensajes tras ejecutar make install, indicndonos sobre la generacin del plug-in.

---------------------------------------------------------------------Libraries have been installed in: /usr/local/lib/moon/plugin If you ever happen to want to link against installed libraries in a given directory, LIBDIR, you must either use libtool, and specify the full pathname of the library, or use the `-LLIBDIR' flag during linking and do at least one of the following: - add LIBDIR to the `LD_LIBRARY_PATH' environment variable during execution - add LIBDIR to the `LD_RUN_PATH' environment variable during linking - use the `-Wl,--rpath -Wl,LIBDIR' linker flag - have your system administrator add LIBDIR to `/etc/ld.so.conf' See any operating system documentation about shared libraries for more information, such as the ld(1) and ld.so(8) manual pages. ---------------------------------------------------------------------make[4]: se sale del directorio `/home/mundolinux/moon/moon/plugin/firefox/ff2' make[3]: se sale del directorio `/home/mundolinux/moon/moon/plugin/firefox/ff2' make[2]: se sale del directorio `/home/mundolinux/moon/moon/plugin/firefox' Making install in install make[2]: se ingresa al directorio `/home/mundolinux/moon/moon/plugin/install' make[3]: se ingresa al directorio `/home/mundolinux/moon/moon/plugin/install' make[3]: No se hace nada para `install-exec-am'. make[3]: No se hace nada para `install-data-am'. make[3]: se sale del directorio `/home/mundolinux/moon/moon/plugin/install' make[2]: se sale del directorio `/home/mundolinux/moon/moon/plugin/install' make[1]: se sale del directorio `/home/mundolinux/moon/moon/plugin' make[1]: se ingresa al directorio `/home/mundolinux/moon/moon' make[2]: se ingresa al directorio `/home/mundolinux/moon/moon' make[2]: No se hace nada para `install-exec-am'. test -z "/usr/local/lib/pkgconfig" || /bin/mkdir -p "/usr/local/lib/pkgconfig" /usr/bin/install -c -m 644 'moon.pc' '/usr/local/lib/pkgconfig/moon.pc' make[2]: se sale del directorio `/home/mundolinux/moon/moon' make[1]: se sale del directorio `/home/mundolinux/moon/moon'

Listado 2

Resultado de ejecutar sudo make test-plugin en la consola.

mkdir -p ~/.mozilla/plugins rm -f ~/.mozilla/plugins/libmoon.so ~/.mozilla/plugins/libmoonplugin.so ~/.mozilla/ plugins/moonlight.exe ~/.mozilla/plugins/libmoonloader.so cp .libs/libmoonloader.so ~/.mozilla/plugins

El fichero silverlight.js, encargado de averiguar informacin del navegador Web y de verificar si est instalada la versin de Silverlight necesaria para el sitio. Un fichero XAML que interpretar y mostrar Silverlight. Un fichero JavaScript que ofrecer soporte al HTML. Un problema con el cual podemos encontrarnos que impedir el correcto funcionamiento del contenido Silverlight con Moonlight es si la deteccin del navegador Web llevada a cabo por el cdigo de silverlight.js le hace pensar que no est soportado para Silverlight, pues consulta con el agente de usuario (User agent). Esto nos puede suceder en algunas versiones de Firefox y en mayor medida en Iceweasel. Para solucionar este inconveniente, una solucin es instalar el plugin User Agent Switcher (Intercambiador de agente de usuario). Lo cual se puede hacer visitando https://addons.mozzila.org/es-ES/firefox/ addon/59 desde Firefox tanto como desde Iceweasel. Aparecer la misma caja de dilogo que explicamos para Moonlight indicando que el elemento no est firmado, pero podemos instalarlo con seguridad. Tras reiniciar el navegador Web, entrando en el men Herramientas aparecer un nuevo sub-men User Agent Switcher, del cual podremos seleccionar alguna de las siguientes opciones para que el navegador informe (ver la Figura 12): Internet Explorer 7 (Windows Vista). Netscape 4.8 (Windows Vista). Opera 9.25 (Windows Vista).
MUNDO

www.revistasprofesionales.com

59

Linux

n106

Redes

Figura 12. El men del plugin User Agent Switcher (Intercambiador de agente de usuario) en Iceweasel.

Por supuesto que la opcin ms apropiada para que nos habilite correctamente Silverlight es Internet Explorer 7. Otra alternativa, especialmente para los usuarios de Iceweasel, que en algunos sitios pueden encontrar ms inconvenientes que los de Firefox, es modificar el nombre informado como useragent manualmente ingresando about:config como direccin Web a navegar, luego tipeando useragent en el cuadro de texto Filtro y modifique el valor del nombre de la preferencia general.useragent.extra.firefox de Iceweasel a Firefox (solamente cambiamos la parte del nombre, la / y el nmero de versin que le sigue deben quedar iguales). Para ello hay que hacer click con el botn secundario del ratn sobre esta preferencia y seleccionar cambiar Modificar (ver la Figura 13). Y, finalmente, haga click en Aceptar. Reinice el explorador y la mayora de los sitios que tenan inconvenientes en Iceweasel funcionarn. Igualmente, es ms recomendable el uso del User Agent Switcher. El problema en realidad se debe a la forma en la cual se identifica el explorador. Pues, si se consultara el atributo product, que es la cadena Gecko tanto en Firefox como en Iceweasel, no habra inconveniente. Pero, lamentablemente, como en todas las actividades comerciales (la ingeniera del software no es la nica que hace esto), se priorizan los beneficios de determinadas empresas a la funcionalidad. Y por ello, algunas cosas que deberan funcionar rpidamente, debemos buscarles solucin. Por suerte, siempre tenemos alguna alternativa y solucin.

Figura 13.

o bien ninguno en caso que todo funcione correctamente. Visitando algunos de estos sitios, especialmente aqullos que estn marcados como funcionamiento correcto, podremos ver la clase de RIA que se pueden conseguir visualizar con Moonlight. Siempre, debemos tener en cuenta que todava Moonlight no es un proyecto totalmente estable, por lo cual, podemos tener problemas. Pero, como es muy activo y se estn resolviendo bugs todo el tiempo, es de esperar que se vayan mejorando los niveles de compatibilidad. Por ejemplo, cuando el proyecto Mono comenz, solamente era posible generar una aplicacin que mostrara el clsico texto Hola mundo, pero, en la actualidad, ofrece un muy buen grado de compatibilidad con las primeras versiones de .Net y est avanzando hacia .Net 3.0 y 3.5.

slo para Windows y MAC OS es una excelente noticia para los usuarios de la Web y de las aplicaciones que se desarrollen utilizando esta tecnologa. Seguramente, guindonos por el crecimiento sostenido que tiene el proyecto Mono y Olive, Moonlight seguir mejorando y se lograr la compatibilidad con Silverlight 2.0. Por lo cual, vale la pena estar atentos a sus progresos.

Referencias
En la Web: http://www.mono-project.com/Moonlight Pgina Web principal del proyecto Moonlight en espaol. Ofrece una descripcin de los avances del proyecto, las nuevas versiones y detalles sobre su licencia para uso en sistemas embebidos. En esta pgina podemos encontrar una buena cantidad de hipervnculos a pginas Web desarrolladas con Silverlight y el detalle de su nivel de compatibilidad con Moonlight. http://www.go-mono.com/moonlight Pgina Web desde la cual se pueden descargar las diferentes versiones de Moonlight. http://www.mono-project.com Pgina Web del proyecto Mono, dentro de la cual se pueden descargar las ltimas versiones para las diversas plataformas soportadas, encontrar una gran cantidad de documentacin y detalles de su avance. http://www.mono-hispano.org Pgina Web del proyecto Mono y todos sus integrantes en espaol. Si bien ofrece las ltimas novedades del proyecto mono y algo de documentacin, es escasa para la magnitud del proyecto.

Conclusin
La documentacin de Moonlight es muy escasa, est incompleta y desactualizada, lo cual dificulta mucho el proceso de aprendizaje, de configuracin y de instalacin. Sin embargo, Moonlight marca un punto de partida en no dar lugar a la aislacin del contenido Web RIA generado con Silverlight por parte de la comunidad Linux y del software libre. Moonlight todava tiene muchas incompatibilidades y bugs por resolver, pero el hecho que sea posible que Silverlight no sea

Comprobando el funcionamiento
Entrando en la direccin http://go-mono.com/ moonlight/MoonlightStatus.aspx encontraremos hipervnculos a una serie de sitios Web con componentes Silverlight que se utilizan para comprobar el funcionamiento de Moonlight y cuales son los inconvenientes a resolver que se presentan en cada uno de ellos,
MUNDO

Linux

n106

60

www.revistasprofesionales.com

ARCHIVADOR DE CDs Y ARCHIVADOR DE REVISTAS POR SOLO

euros

Consigue por slo 3 euros un archivador de revistas valorado en 5,41 euros y un archivador de cds valorado en 4,20 euros. Haz tu pedido llamando al telfono 91 304 87 64, por fax al 91 327 13 03 o por correo electrnico a rpsuscripciones@revistasprofesionales.com, indicando tus datos personales y la forma de pago (giro postal, domiciliacin bancaria, tarjeta de crdito o contrareembolso*).

REVISTAS PROFESIONALES - C/ Valentn Beato, 42 - 3 plta. - 28037 Madrid


*en opcin contrareembolso se cobrar un suplemento de 5 euros por gastos de envo En opcin domiciliacin bancaria, se ruega aporten los datos completos de la entidad bancaria (nombre, direccin y nmero de cuenta completo)

Aplicaciones

Haz tu Currculum con Openoffice Writer


M Angela Ruiz de Adana Garrido

No cabe duda de que, en nuestros das, elaborar y entregar un CV es una de las actividades ms comunes ente la gente, especialmente si somos jvenes y nos tenemos que abrir camino en un mercado laboral cada vez ms competitivo.
Hay varias formas de afrontar este tema: desde bajarse modelos que encontramos en Internet, copiar el realizado por otros o crear un documento en bruto al que se le dar un formato ms vistoso en una imprenta. En este artculo vamos a proponer el uso de Swriter como una buena herramienta para nuestros propios currculos, lo que en principio tiene las siguientes ventajas: Este procesador de textos permite al usuario incluir muchos elementos como fotos, dibujos o grficos geomtricos. Sin olvidar la amplia gama de posibilidades que nos ofrece sus herramientas tipogrficas. Al poderse grabar el documento en cualquier soporte es posible modificarlo o aadirle entradas nuevas. Incluso puede darse el caso de no necesitar imprimir el documento, que puede ser enviado va email a su destinatario y encima en formato .pdf. Dado la amplia difusin de este tipo de documentos resulta altamente aconsejable personalizar los CV que podamos crear nosotros, para diferenciarnos en la medida de los posible de lo que hacen los dems. Openoffice Writer puede responder a estas consideraciones aadiendo otra gran ventaja: la portabi-

lidad. Esto quiere decir que, por ejemplo, podemos disear un documento desde nuestra distro Linux y enviarlo por correo a alguien que trabajo con otro sistema operativo. Swriter permite grabar documentos en la mayora de los formatos universalmente aceptados en el mercado como .pdf.

Primer paso: Preparamos el modelo


Antes de ponernos manos a la obra con el ordenador, es necesario tener en cuenta algunos detalles como: A quin va dirigido el currculo. De esta manera nos veremos obligados desde el principio a darle una forma determinada al conjunto del documento que vamos a elaborar. Es conveniente visitar la Web de la empresa u organismo al que vamos a enviar nuestra solicitud. De esta forma conoceremos mejor las caractersticas fundamentales de la organizacin a la que vamos a enviar el CV. Y ya puestos podemos cerciorarnos sobre si hay algn departamento o seccin que trate sobre el particular, por ejemplo si hay modelos establecidos por la empresa para estos casos, con lo que la redaccin de nuestro CV se adaptara en la medida de lo posible a lo que la empresa destinataria considera como documento modelo. Conviene hacer un esbozo en papel con la estructura del documento, para ir dando forma a la manera en que distribuiremos los espacios, el texto o las posibles imgenes. Especial importancia tendr la tipografa. Hay que ofrecer variedad de tipos pero sin abusar en su utilizacin. Demasiada variacin en los tipos de letra puede llevar a transmitir una sensacin de dispersin y de falta de estructura en el documento. Si el lector est interesado en ahondar en estos aspectos, que pueden ser considerados como previos (pero importantes) puede visitar varios sitios Web en donde puede obtener ms ideas y/o modelos para empezar a trabajar, por ejemplo http:// www.cv-resume.org/curriculumvitae/ (ver Figura 1). Se trata de una completsima Website en la que podemos encontrar gran cantidad de consejos sobre el CV, con multitud de modelos gratuitos clasificados segn su estructura o formato general; existen tres grandes modelos: Cronolgico, en el que el solicitante va exponiendo sus capacidades, experiencia etc. segn las fue consiguiendo a lo largo de su vida.

Figura 1. MUNDO

Linux

n106

62

www.revistasprofesionales.com

Haz tu Currculum con Openoffice Writer

Aplicaciones

Figura 4.

Figura 5.

destina al texto. Si las dos reglas no aparecen en la pantalla es fcil ponerlas, para ello vamos a la barra superior de comandos y hacemos clic sobre Ver. A continuacin elegimos la entrada Reglas.

Figura 6.

El encabezado
Figura 2.

Figura 3.

Funcional, que trata de buscar la mayor claridad y concisin a la hora de exponer los datos. Combinado, se trata de una mezcla de los dos. Dejamos que el lector explore esta magnfica pgina, aunque no nos resistimos sealar que incluso ofrece un glosario de trminos relacionados con el tema o un banco de consejos generales muy interesantes. Otras direcciones tiles seran: www.convega.com/laboral/curriculum.htm www.micvweb.com/ www.oficinaempleo.com/Manualcv1.htm

Segundo paso: dando forma al documento


A continuacin veremos a ver cmo podemos dar forma a dos modelos diferentes ; uno que podramos considerar como tradicional y otro ms atrevido. Veamos cmo lo hacemos.

Modelo tradicional
Que podra ser este: (ver Figura 2).

Damos forma a la pgina


Lo primero que haremos ser delimitar la parte de la pgina destinada a texto. Para ello vamos a la regla superior: (ver Figura 3). Luego movemos los topes hacia la derecha, con lo que se restringir el espacio total que se

Que se puede colocar fcilmente con estos sencillos pasos: Vamos a la barra de dibujo que se coloca, por defecto, en la base de la pantalla y hacemos clic sobre Entonces el cursor del ratn se transforma en una pequea cruz, con la figura de un cursor debajo. Manteniendo pulsado el botn izquierdo del mouse, lo arrastramos sobre la pgina en blanco, con lo que se crea automticamente un rectngulo. Llegados a este momento, vemos como parpadea el cursor en la esquina superior izquierda. A continuacin empezamos a escribir el texto. Luego presionamos cualquier botn del ratn y el texto quedara fijado. Es importante sealar que , por defecto, este marco de texto aparece sin su lnea perimetral. Si el usuario quiere establecerlas, lo cual puede ser incluso aconsejable, deber seguir estos pasos: Hacemos clic sobre el texto con el botn principal o izquierdo del ratn. Entonces aparecen ocho cuadraditos verdes delimitando su superficie. Al mismo tiempo, vemos que se activa la barra de herramientas Propiedades objeto de dibujo. Tdo est en la parte superior de la pantalla, debajo de la barra superior de comandos. En dicha barra encontramos dos interesantes grupos de herramientas: Esta parte controla las caractersticas del contorno, y que de izquierda a derecha son: el tipo de lnea, su anchura y su color: (ver Figura 4). El siguiente grupo sirve para modificar el relleno de este marco de texto. De esta forma podemos aplicar Color, Gradiente, Bitmap, y Trama. Luego tenemos la paleta de colores: (ver Figura 5).

Figura 7.

De esta forma podemos crear, en pocos pasos, este elegante marco de texto: (ver Figura 6). Para hacer esto: Sombreamos el fragmento textual y en la barra de Propiedades objeto de diseo hacemos clic sobre A continuacin se abre una ficha con tres solapas: Fuente, Posicin y Efecto de fuente, la abrimos y elegimos Color de fuente. (ver Figura 7). Aplicaremos un color blanco a las letras para que resalten sobre el fondo oscuro del marco de texto. De esta forma la etiqueta o rtulo Curriculum Integrado, quedar colocada al principio del documento y no se ver afectada por ninguna modificacin que hagamos a posteriori. En cualquier caso se trata de una forma original de rotular el documento.

Adornos geomtricos
Las lneas que adornan parte de la pgina, y que le quitan aridez al conjunto, han sido creadas dando estos pocos pasos: Vamos a la barra Dibujo y hacemos clic sobre el icono Lnea. Entonces el cursor del ratn se convierte en una cruz acompaada de una pequea lnea.

Con Openoffice Writer es factible crear currculos formalmente originales y atractivos a la vista
63
MUNDO

www.revistasprofesionales.com

Linux

n106

Aplicaciones

Figura 8.

Figura 10.

Figura 9.

Arrastramos sobre la pantalla con el botn izquierdo del ratn pulsado y se va dibujando la lnea en el lugar deseado. Un truco: si mantenemos pulsada la tecla Shift del teclado la lnea de dibujar completamente recta. Ahora queda modificar aspectos como su anchura o color. Para ello seleccionamos la lnea y observamos que, automticamente se activa la barra de Propiedades de objeto de diseo, que ya vimos antes. Usaremos las mismas herramientas descritas anteriormente.

De esta forma se desplegar un men con las entradas necesarias para el formateo del texto. Comentario especial requieren los prrafos que aparecen con vietas o bullets. Se aplican de esta forma: Sealamos el texto y vamos a Formato/Numeracin y vietas. Entonces se abre esta pantalla: (ver Figura 8). Slo nos queda aplicar la vieta deseada. Una vez que hemos acabado de escribir el texto pulsamos la tecla Enter y se abre automticamente otro prrafo debajo del anterior precedido por la vieta o el estilo de numeracin que hemos elegido anteriormente. Repetimos que esta es la parte ms fcil de llevar a cabo, Swriter es un programa diseado especficamente para crear y editar texto.

Alinear, que nos permitir colocar el grfico de forma automtica en la izquierda o el centro de la pgina. Anclaje, esta opcin permitir vincular la foto con , por ejemplo un prrafo o una pgina. Ajuste, quizs el ms importante pues nos permite colocar el grfico de forma ms precisa en la pgina. Por ejemplo si elegimos En el fondo, podremos poner la imagen en cualquier parte de la pgina, sin que interfiera con el texto u otras fotos. En resumen, hemos visto como hemos organizar estos cuatro elementos: el texto en s mismo, las lneas geomtricas, el ttulo principal y la insercin de la imagen. Todos estos contenidos se insertan y editan en pocos pasos, sin grandes dificultades.

Modelo moderno
Usamos la expresin moderno en el sentido de que deseamos dar a nuestro documento un aspecto diferente al que generalmente se ofrece. Esta puede ser una buena idea si presentamos nuestro currculo a organizaciones que tengan un perfl determinado, como entidades de tipo ldico . Este sera el aspecto que proponemos: (ver Figura 9). Como vemos el formato de este documento cambia radicalmente. Los apartados parecen flotar y no sirven tanto para presentar los contenidos sino para sealarlos. Veamos cmo se hace.

El texto
Pues esta es la parte ms sencilla del trabajo. Al tratarse Swriter de un Word processor vamos introduciendo los fragmentos textuales a nuestro gusto. Para modificar su tamao, familia tipogrfica o color, procedemos como sigue: Escribimos el fragmento y lo resaltamos como siempre, barriendo el rea textual con el ratn, y manteniendo siempre la tecla izquierda presionada. Entonces podremos realizar los cambios o bien usando los iconos de la barra Formato o haciendo clic sobre el texto sombreado y presionando sobre el botn derecho del ratn.
MUNDO

La imagen
Por ltimo queda ver como hemos introducido la foto. Procedemos as: Sin preocuparnos de donde est el cursor del ratn vamos a la barra superior de comandos y hacemos clic sobre Insertar. Seguimos la ruta Imagen/ A partir de archivo, con lo que se abre una pantalla desde la que buscaremos e importaremos el elemento grfico. Una vez insertado la imagen debemos ajustar su posicin. Para ello hacemos clic sobre la imagen con el botn derecho y se despliega un men que tiene estas tiles entradas: Organizar, con lo que colocaremos la imagen delante o detrs del texto.

El ttulo principal
Lo vemos girado y colocado a la izquierda de la pgina, lo hemos hecho con Fontwork, un

Linux

n106

64

www.revistasprofesionales.com

Haz tu Currculum con Openoffice Writer

Aplicaciones

Crear nuestro propio CV con el ordenador conlleva cierto tiempo de planificacin y organizacin de los datos
pequeo taller tipogrfico incorporado a Openoffice Writer desde la versin 2.0, all por el verano del 2005. Para crear este efecto, daremos estos sencillos pasos: Hacemos clic sobre el icono que encontramos en la barra Dibujo. Entonces se abre esta pantalla: (ver Figura 10). Elegimos un modelo y aparece la palabra Fontwork y como fondo observamos un cursor parpadeante sobre el que se escribir el texto. Posteriormente podemos modificar la forma del texto creado usando las herramientas que encontramos en la barra de Propiedades del objeto de diseo. Ya solo queda hace clic sobre para girar el conjunto.

galera escogemos Llamada de flecha a la derecha. Arrastramos con el ratn y dibujamos la flecha. Le daremos el formato deseado usando la ya conocida barra de Propiedades del objeto de diseo. En nuestro caso le quitaremos el relleno, engrosaremos la lnea y la coloreamos de rojo. Para aadir el texto slo es necesario hacer doble clic sobre la figura y comenzar a parpadear un cursor. Ya solo resta escribir el texto, que podr ser modificado siguiendo el sistema ya visto antes. Es decir sombreamos el texto y elegimos las herramientas necesarias de la barra de Formato. A continuacin slo falta insertar un cuadro de texto que contendr la informacin correspondiente a cada apartado. Las vietas y el formateo del texto se har de la misma forma que hemos descrito anteriormente.

Figura 12.

Detalles finales: el fondo de la pgina


Podemos pensar en dotar a nuestro documento con algo que nadie suele hacer: con un fondo, filigrana o marca de agua que sirva de decorado al texto principal. Es fundamental hacerlo con habilidad, pues hay que evitar que dicho fondo le reste protagonismo al mensaje principal. Por ejemplo veamos esta propuesta: (ver Figura 11). Observamos como la pgina queda ocupada por una marca de agua con motivos geomtricos sobre la que fluir el texto. Veamos como lo hacemos: Nos dirigimos a la barra superior de comandos y seguimos la ruta Formato/Pgina. Entonces se abre esta pantalla: (ver Figura 12). En la entrada Como tenemos dos opciones: Color e Imagen. Nos decantamos por la segunda y buscamos la imagen, foto, etc. que vamos a insertar. Entonces se nos preguntar sobre la forma en que pondremos la imagen: Posicin (determinada), mosaico o rea completa de la pgina. Gracias a esto se repetir el motivo de forma automtica en todas las pginas que vayamos creando. Tambin es posible asignar al fondo de la pgina un color. Naturalmente habra que escoger con cuidado, para no

Las flechas con el texto


Se trata de una manera original de colocar los distintos apartados que conforman el documento. Lo haremos de la siguiente forma: Vamos a la barra de dibujo y elegimos el icono correspondiente a Flechas , de cuya

empeorar el resultado final. Por ejemplo, un amarillo poco fuerte o un gris ligero. Otra posibilidad sera la de utilizar los pies y encabezamientos del documento para personalizarlo. Para ello procedemos como sigue: Vamos a la barra superior de comandos y seguimos la ruta Insertar/Pie de pgina. Entonces se activa un rectngulo en la base de la pgina que corresponde el rea del documento. Ya solo resta rellenar ese espacio con texto o figuras geomtricas, como vemos a continuacin. (ver Figura 13). Observamos cmo este pie de pgina est formado por: Dos lneas horizontales paralelas de color rojo con grosor de 0,10 cm. El nombre del solicitante va de forma destacada a la derecha del conjunto. Hemos escogido una familia tipogrfica de tipo artstico. Las siglas centrales han sido creadas usando Fontwork. La flecha de la derecha ha sido tomada de la galera de Customforms o figuras geomtricas que encontramos en la barra de herramientas de Dibujo.

Concluyendo
Esperamos haber convencido al lector sobre lo til que Openoffice Writer puede ser a la hora de dar forma a los documentos curriculares que se necesiten. La gran ventaja es que se pueden personalizar bastante el documento, diferencindolo del resto de los que pululan por la Red de redes. Adems es posible incluir gran cantidad de elementos grficos y textuales a nuestro documento, lo que le dar riqueza y variedad...y lo mejor: no hace falta tener grandes conocimientos de diseo o autoedicin para crear currculos atrayentes e incluso impactantes.

Figura 11.
www.revistasprofesionales.com

Figura 13.

65

MUNDO

Linux

n106

CD ROM

Contenido CD-Rom Debian GNU/ Linux 4.0 Etch


Debian es una de las distribuciones libres, gratuitas y de cdigo abierto ms importantes de Linux y que forma parte de las bases de muchas otras distribuciones populares. Como muchas cosas que son importantes en la vida, Debian tiene una gran cantidad de fanticos que jams pensaran utilizar otra distribucin o bien otro sistema operativo y tambin muchos que la consideran una versin obsoleta y demasiado rgida en cuanto a sus polticas para la inclusin y modernizacin de los paquetes. Sin embargo, nadie puede discutir que es una de las ms importantes de las existentes y nos demuestra su vigencia con el esperado lanzamiento de su versin 4.0, o bien Debian GNU/Linux 4.0, tambin conocida por su nombre Etch. Debian GNU/Linux 4.0 (Etch) est disponible para las siguientes plataformas: Alpha. x86, 32 bits. Debian la denomina Intel x86. x86, 64 bits. Debian la denomina AMD64. ARM. HP PA-RISC. Intel IA-64 (la familia de microprocesadores Itanium de Intel). MIPS (big endian). MIPS (little endian). PowerPC. IBM S/390. SPARC.

Tambin incluido en el CD-Rom


Nmero 104 de Mundo Linux en formato pdf.

MUNDO

Linux

n106

66

www.revistasprofesionales.com

You might also like