You are on page 1of 28

DVD de dos caras con Fedora Linux 11. Ms info.

en pginas 6 y 7

Comandos

Introduccin a la magia de la terminal p84

LINUX MAGAZINE

NMERO 52

NMERO 52 P.V.P 0,00

Tuning de Mquinas Virtuales

TUNING VIRTUAL
Optimiza tus mquinas virtuales p18 Control de redes con NagVis p33 Los secretos del cloud EC2 de Amazon al descubierto p24 Clusters de alto rendimiento con PelicanHPC p28

eBooks
Lectores de libros electrnicos para netbooks p37

EC2 de Amazon

FreeIPA
Administracin de identidades integradas p43

PelicanHPC

NagVis

Lectores de eBooks

Boo

FSniper
Clasifica automticamente tus ficheros entrantes p74

FSniper

Samba4Wins

Phidgets
Robtica, sensores y servos con Squeak p81
WWW.LINUX- MAGAZINE.ES

Multicasting

Zim

Adonde vayas...

Lee Linux Magazine desde cualquier sitio con nuestra subscripcin digital. Accede a todos los nmeros en PDF entrando en nuestro sitio. Encuentra lo que buscas con un sencillo formulario de bsqueda. Mantn tu propia biblioteca de artculos y leelos desde cualquier dispositivo.

... Linux Magazine va contigo.


http://www.linux-magazine.es/digital

EDITORIAL

INFLEXIN
ay momentos en los que la historia toma otro rumbo. Un individuo o un colectivo pequeo hacen algo que deriva el devenir de las cosas por otros derroteros. Estos puntos de inflexin son fciles de identificar a posteriori. Son un poco como aquello tan trillado de estar en el momento justo en el sitio adecuado: el entorno tiene que ser favorable y algunos de los jugadores han de dar los pasos correctos para que la inflexin, es decir el cambio, se produzca. Tomemos como ejemplo el ascenso de Microsoft al status de imperio. En 1980, IBM se puso en contacto con Bill Gates interesndose por CP/M, sistema operativo que pensaban servira para sus nuevos PCs. Sin que sirviera de precedente, Gates hizo lo correcto e indic al Gran Azul que deba hablar con Digital Research, la empresa fabricante del sistema. Las dos empresas no llegaron a un acuerdo, e IBM volvi a contactar con Microsoft a ver si podan llenar el hueco. Esta vez Gates aprovech la ocasin y se hizo con QDOS (Quick and Dirty Operating System) de Seattle Computer Products, vendindole la moto (que no el software) a IBM. El pelotazo estaba en el contrato entre las dos empresas: Gates introdujo una clusula que le permita vender copias del sistema operativo al margen de IBM e IBM, en un acto de miopa que hoy da consideraramos casi suicida, pensando que el futuro de la informtica pasaba por el hardware y que el software era algo accesorio, accedi al cambio. Y ese fue el punto de inflexin. Existen una serie de casualidades en el relato anterior que hacen parecer el xito de Microsoft como algo altamente improbable: Si IBM hubiera desarrollado su propio sistema operativo Si Digital Research e IBM hubieran llegado a un acuerdo Si Gates no hubiera introducido la famosa clusula y si IBM no hubiera accedido a su inclusin Si Si Si Smese a lo anterior que toda la rocambolesca historia se desarroll en

menos de un ao, y tenemos un claro caso de pelotazo por suerte. De no haberse dado todas esas casualidades y los protagonistas no haber tomado una sola de aquellas decisiones, el presente sera completamente diferente. En ese universo paralelo, donde Microsoft es slo un jugador ms en el mundo de la informtica, en vez de su mayor aliado, IBM es la mayor amenaza para el Software Libre. En contraste, el movimiento del software libre es todo menos fruto de la casualidad. El camino hacia el estado actual de las cosas, en retrospectiva, ms parece una denodada carrera de fondo que una sucesin de felices coincidencias. La situacin que vivimos hoy es el producto de una evolucin natural sobrevenida por la disconformidad con una anterior percibida como injusta y que se hubiera dado de todas maneras, aunque Richard Stallman hubiera dedicado ms tiempo a los bailes folclricos que a la informtica, o que Linus Torvalds hubiera insistido en conservar su propia licencia original (que permita, entre otras cosas, compartir el cdigo pero no utilizarlo con fines comerciales), en vez de decantarse por la GPL. Por supuesto que la historia del software libre ha estado plagada de hitos, muchos de ellos protagonizados por los dos monstruos arriba citados, pero tambin lo ha estado de derrotas. El destino de Microsoft se sell en diez meses y con un golpe de suerte. El software libre est a punto de cumplir 25 aos y an se est peleando por su plena aceptacin, por lo que es impreciso hablar de punto de inflexin. Ms preciso sera describirlo como segmento. A pesar de la dificultad de identificar algo as desde dentro, las seales parecen estar ah: el descontento de los proveedores y usuarios con las dos ltimas versiones de Microsoft, Vista y 7; la adopcin de GNU/Linux y software libre en general por parte de importantes

Nos sentimos orgullosos de nuestros orgenes como publicacin, que se remonta a los primeros das de la revolucin Linux. Nuestra revista hermana, la publicacin alemana Linux Magazine, fundada en 1994, fue la primera revista dedicada a Linux en Europa. Desde aquellas tempranas fechas hasta hoy, nuestra red y experiencia han crecido y se han expandido a la par que la comunidad Linux a lo ancho y largo del mundo. Como lector de Linux Magazine, te unes a una red de informacin dedicada a la distribucin del conocimiento y experiencia tcnica. No nos limitamos a informar sobre el movimiento Linux y de Software Libre, sino que somos parte integral de l.

jugadores, como Google y Nokia; la fusin de empresas tradicionalmente grandes con otras que tienen como principal modelo de negocio la explotacin de sistemas abiertos, como la adquisicin del especialista en implementaciones Linux en dispositivos mviles Wind River por parte de Intel; indican sin duda un lento y gradual, pero inexorable cambio en el ecosistema. Seguimos oyendo cmo GNU/Linux es un sistema de nicho, pero el analista que tome como parmetro las instalaciones en sistemas de escritorio para medir su xito, o est completamente ciego, o es un torpe manipulador: Los equipos de escritorio y porttiles constituyen un nfimo subconjunto de todos los dispositivos que pueden llevar un SO en ejecucin dentro. No contar los electrodomsticos, routers, servidores, mandos a distancia, clusters, superordenadores, PDAs y, por fin, el mayor grupo de todos, el de los mviles, es ignorar ms del noventa por ciento del mercado. En todos y cada uno de los grupos anteriores, el punto de inflexin en el que GNU/Linux u otros SOs abiertos han pasado a ser dominantes, lleg hace tiempo.

Paul C. Brown Director

WWW.LINUX- MAGAZINE.ES

Nmero 52

CONTENIDOS Linux Magazine n 52

PORTADA
17 Centro De Datos
El espacio del servidor est cambiando, generando nuevas oportunidades para una administracin ms gil. Si planea crear un nuevo centro de datos, ms le vale tener lista una buena caja de herramientas. Este mes estudiamos las herramientas y tcnicas para centros de datos y entornos de servidor.

DESARROLLO
33 Vistas Personalizadas
NagVis, una sencilla herramienta para visualizar el estado de nuestras redes, nos advierte de potenciales problemas.

54 La Hora de Boo
Enganchado a la cmoda sintaxis de Python? Enamorado de la arquitectura .NET pero al mismo tiempo agradecido al tipado fuerte de C#? Boo ofrece lo mejor de tres mundos.

EVALUACIN
37 Recin Impreso
Un netbook y un buen lector de ebooks es cuanto necesitamos para extraer la riqueza de los ebooks libres que se vislumbran en las profundidades de la web.

18 Ms Rpido
Afinar el rendimiento de un entorno virtual es similar a hacerlo en un entorno ordinario, pero no exactamente igual.

59 Velocidad de Ejecucin
En lugar de CPUs ms potentes, podemos usar trucos de programacin para aumentar la velocidad de un programa. Los profilers pueden descubrir cuellos de botella que necesitan ms TLC por parte del desarrollador.

24 Cdigo de Altura
Mostramos algunas tcnicas para aprovechar las ventajas de la tecnologa nube.

PRCTICO
43 Comprobacin de Identidad
FreeIPA ofrece una gestin integrada de identidad y buenas ideas para el futuro.

28 De Caos a Clster
Manejando nmeros enormes con nuestro propio clster computacional de alto rendimiento.

ADMINISTRACIN
63 Nmbralo!
A menudo se utiliza el editor vi para editar los datos de zona de su servidor de nombres, lo que no es muy elegante, ya que un simple error mecanogrfico puede producir problemas en el DNS. Afortunadamente, NicTool le ayudar a realizar esta tarea.

47 Control del Trfico


Mostramos cmo WebHTB permite gestionar el ancho de banda de una red a travs de una interfaz de navegador conveniente.

LINUX MAGAZINE
03 06 08 12 16 93 95 95 98 Editorial DVD Linux Magazine Inseguridades Kernel Noticias Subscripciones Eventos Informacin de Contacto Prximo Nmero

DESARROLLO
50 Jython a la Carga
Despus de mucho tiempo, Jython vuelve al escenario. Su versin 2.5 pone al da este intrprete de Python que ha salvado del tedio a ms de un programador Java.

64 Mucho Pblico
Mostramos el lado prctico del multicasting, incluyendo una configuracin de ejemplo que hace uso de la suite libre del protocolo de enrutamiento XORP.

Nmero 52

WWW.LINUX- MAGAZINE.ES

ADMINISTRACIN
69 Al Filo de la Ventana
Samba4Wins permite configurar un servidor WINS para la resolucin de nombres NetBIOS en Linux.

LINUX USER
81 Phidgetlab
Cmo atravesar la frontera desde el mundo de Squeak al mundo real de los objetos fsicos?

84 Magia Terminal

LINUX USER
74 Muvete!
Cada da los ordenadores se inundan con cientos de ficheros. Fsniper da la bienvenida a las nuevas llegadas y las procesa de acuerdo a las reglas que definamos.

Lejos de ser un anacronismo, la lnea de comandos es una parte indispensable del moderno escritorio libre.

DVD DVD de de dos dos caras caras con con Fedora Fedora 11 11 de de 32 32 y y 64 64 bits bits Instalacin Instalacin transparente transparente y y automatizada automatizada de de codecs codecs y y reproductores reproductores de de medios medios Mejor Mejor integracin integracin con con sistemas sistemas Windows Windows Soporte Soporte nativo nativo para para sistema sistema de de ficheros ficheros ext4 ext4 Gnome Gnome 2.26, 2.26, KDE KDE 4.2.2, 4.2.2, OpenOffice OpenOffice 3.1.0, 3.1.0, Firefox Firefox 3.1, 3.1, etc. etc.

COMUNIDAD
87 Konsultorio
Si tienes algn problema de configuracin, o simplemente quieres conocer mejor cmo funciona Linux, pregntale a Klaus Knopper, el creador de Knoppix. Este mes: WFI, mdem UMTS, Particiones y Drivers de Impresora.

90 Linux Legal
Jose Mara Lancho, presidente de HispaLinux, resuelve las dudas legales de los lectores. Este mes: Cmo casa la interoperabilidad con GNU/Linux?

76 Organizador
El administrador de informacin Zim ofrece mucho ms que notas digitales con la explotacin de opciones de datos de redes.

92 No Funciona!
Ayuda al personal de apoyo que nos ayuda: Recopile informacin antes de llamar.

78 Tomo Nota
Te ayudaremos a organizar datos con Chandler, una aplicacin que nos permite reunir informacin y decidir luego cmo usarla.

WWW.LINUX- MAGAZINE.ES

Nmero 52

LINUX MAGAZINE EN LNEA

An hay ms! Vistanos en la red en linux-magazine.es para enterarte de las noticias del mundo del software libre, leer artculos, descargar software, consultar nuestro calendario de eventos, seguir nuestro streaming y ver vdeos.

ARCHIVOS
Buscas un artculo? Necesitas saber cmo utilizar, configurar o programar una aplicacin? Tienes ms de 600 artculos a tu disposicin en nuestro archivo abierto y gratuito y muchos ms en la zona de subscriptores digitales.

VDEOS
Quieres conocer las opiniones de los expertos en sus propias palabras? Necesitas un vdeo tutorial para aprender como funciona una aplicacin? No pudiste acudir a un evento o te perdiste una charla que te interesaba? Screencasts, entrevistas y nuestro archivo de grabaciones de eventos te esperan. Consulta nuestra videoteca!

TWITTER
Mantente al da de lo que hacemos con nuestro feed en Twitter. Sguenos en twitter.com/linux_spain.

OFERTAS
Libros, gadgets y servicios, o gratis o muy rebajados. Consigue el chollo de tu vida en nuestro repositorio de ofertas de Linux Magazine: http://www.linux-magazine.es/digital/ofertas.

EVENTOS
Enterate de lo que ocurre cerca de ti y cmo y cundo puedes registrarte. Todos los eventos estn en http:/www.linux-magazine.es/Readers/Events.

LISTADOS
Evita tecleos y errores cuando copias de la revista descargndote los listados de los artculos desde http://www.linux-magazine.es/ Magazine/Downloads.

Y MUCHO MS!
Siempre estamos actualizando nuestra web con nuevos contenidos y servicios. Muy pronto, los blogs de los gurs del software libre, RSS, whitepapers y mucho ms. Visita linux-magazine.es y conecta con la red de informacin Linux ms extensa del mundo.

Nmero 52

WWW.LINUX- MAGAZINE.ES

Data Centers PORTADA

Herramientas inteligentes para rack y nube

CENTRO DE DATOS
El espacio del servidor est cambiando, generando nuevas oportunidades para una administracin ms gil. Si planea crear un nuevo centro de datos, ms le vale tener lista una buena caja de herramientas. Este mes estudiamos las herramientas y tcnicas para centros de datos y entornos de servidor. POR JOE CASAD
l centro de datos est en un estado de continua re-invencin. Los actuales son enormes complejos deslocalizados a los que estn migrando, y funcionando, miles de mquinas virtuales invisibles. Pero por muy futuristas que estas nuevas instalaciones puedan parecer, son realmente una extensin de una antigua frmula: eficiencia a travs de la concentracin geogrfica y economa de gran escala. Tanto si obtienes ciclos de una sala de servidores tradicional, como si lo haces de una gran superficie virtual, encontrars mucho que pensar con el nmero de este mes. Comenzamos con algunos consejos sobre mejoras de rendimiento para entornos virtuales. La mayora de los administradores opinan que junto con la virtualizacin se incurre en algn coste sobre el rendimiento, pero cunto realmente? Y qu medidas se pueden adoptar para reducir al mnimo la prdida de eficiencia? Echamos una mirada objetiva a los misterios del rendimiento virtual. En la carrera por abrazar las maravillas de la nube, muchas organizaciones han subido sus infraestructuras sin dete-

nerse a considerar los beneficios de rendimiento adicionales disponibles a travs de un uso ms eficiente de los servicios de la nube. Nuestro segundo artculo analiza algunos ejemplos que describen cmo escribir aplicaciones web que se aprovechan de las sutiles diferencias entre los servicios de la nube y los servicios de entornos web convencionales. Tambin examinamos PelicanHPC, una distribucin Linux diseada para la creacin de clusters de alto rendimiento,

y, para aquellos que an mantienen la custodia de sus equipos, finalizamos comprobando cmo mapear una red con el ingenioso suplemento de visualizacin para Nagios, NagVis. Tanto si eres un administrador de la nueva era como si perteneces a la vieja guardia, puedes estar seguro de que aprenders algo nuevo en la seccin de portada de este mes. I

EN PORTADA
Rendimiento Virtual . . . . . . . . . . . . . . .18 Tcnicas de Cloud . . . . . . . . . . . . . . . . .24 PelicanHPC . . . . . . . . . . . . . . . . . . . . . . .28 NagVis . . . . . . . . . . . . . . . . . . . . . . . . . .33

WWW.LINUX- MAGAZINE.ES

Nmero 52

17

NagVis PORTADA

Joerg Humpe, Fotolis

Visualizacin de redes Nagios con NagVis

VISTA PERSONALIZADA
Si necesitamos una posicin dominante desde la que advertir posibles problemas, quiz NagVis, una sencilla herramienta para visualizar el estado de nuestras redes, sea lo que estamos buscando. POR JAMES MOHR

agios es una popular herramienta de monitorizacin de cdigo abierto que nos asiste en la organizacin del estado de las mquinas y servicios de una red. Si todos los servicios van bien, probablemente baste con la vista que nos muestra la herramienta. Pero cuando se trata de redes de gran tamao, o cuando la red es proclive a sufrir problemas ocasionales, puede que sea preferible disponer de una representa-

cin grfica de la situacin. La renderizacin grfica de una red supone un mtodo rpido de diagnstico para los problemas que se pudieran estar produciendo. Adems, un director suele preferir unas vistosas imgenes y la conveniencia de un resumen visual. NagVis [1] es un til add-on de Nagios que permite visualizar los sistemas de una red. La idea es que el administrador se cree sus propias imgenes de fondo (denominadas mapas )

y luego integre en dichas imgenes unos iconos representativos de las mquinas y servicios de la red. Cada icono muestra el estado actual de la mquina o servicio que representa. Este diseo simple pero flexible permite la explotacin de NagVis de muy diversos modos. Por ejemplo, se puede crear un mapa geogrfico de una habitacin y colocar en l las ubicaciones fsicas de los servidores que sta contiene. Un mapa podra servir tambin a modo de vista esquemtica de un servidor nico con iconos para representar cada uno de los servicios que ste ofrece. NagVis soporta incluso sub-mapas, permitiendo de este modo la representacin flexible de grandes redes. Por ejemplo, un mapa puede representar

WWW.LINUX- MAGAZINE.ES

Nmero 52

33

PORTADA NagVis

un edificio, y los sub-mapas en l pueden representar los habitculos de dentro de ese edificio.

Mapas
Un mapa de NagVis se elabora a partir de una imagen de fondo y una serie de smbolos representando mquinas y servicios. Adems de las ventajas obvias derivadas de poder ver un mapa representativo de la geografa de la red, otro modo posible de implementar los mapas de NagVis es creando un diagrama de la estructura lgica. Por ejemplo, se podran dividir los sistemas en grupos en base a su funcionalidad: primario, middleware, bases de datos Cada servicio o mquina de Nagios viene representado por un icono, y el icono cambia su apariencia en funcin de su estado. Si un servicio se encuentra en estado crtico, el aviso advirtiendo del problema es inmediato, simplemente a travs de un cambio en el icono.

posible, por ejemplo, ejecutar una instancia de NagVis en un servidor externo y Nagios en uno interno. En cierta ocasin, proporcionamos a unos clientes acceso a Nagvis sin permitirles el acceso a la instancia latente de Nagios. NagVis se suele distribuir en forma de archivo comprimido con gzip, disponible desde SourceForge a travs del sitio de NagVis [1]. El archivo se descomprime en un directorio cuyo nombre depende del nmero de versin (por ejemplo, nagvis-1.3.2), que debemos mover al directorio compartido de Nagios y renombrar a nagvis . Por ejemplo del modo siguiente:
mv ./nagvis-1.3.2 U /usr/local/nagios/share/nagvis

06 07 08 09

;dateformat=Y-m-d H:i:s ;mostrar cabecera o no (0/1) ;displayheader=1 ;tiempo de refresco de las pginas 10 ;refreshtime=60

NagVis por Dentro


NagVis es una aplicacin en PHP/ AJAX construida sobre Nagios. Adems del propio Nagios, tenemos que asegurarnos de tener instalados en el sistema NDO ( Nagios Data Out ) y NDOutils (NagVis obtiene toda la informacin sobre estados de la base de datos NDO). Para la elaboracin de este artculo se ha usado la versin 3.0.6 de Nagios, as como NDOutils 1.4b7. Adems, se da por hecho que ya se encuentra en ejecucin Nagios 3.x con NDO y que se tiene cierta soltura con Nagios y NDO. NagVis es una aplicacin web, por lo que son tambin necesarios un servidor web y PHP 4.2 o superior, as como una serie de paquetes que se pueden consultar en el cuadro titulado Paquetes Necesarios para NagVis. Ntese que NagVis no tiene por qu ejecutarse en la misma mquina que Nagios. Es

Si se cre un alias a este directorio al instalar Nagios, no es necesario volver a crear un alias para NagVis. Todo lo que necesitamos hacer es definir los permisos, igual que para el archivo INSTALL incluido. El directorio etc , que podemos encontrar bajo el directorio principal de NagVis, contiene un archivo de configuracin de ejemplo. El mtodo ms sencillo pasa por copiar este archivo de muestra a nagvis.ini.php y hacer luego los cambios necesarios. Este archivo est hecho como los archivos .ini tpicos de Windows. Los bloques de configuracin se definen entre corchetes y cada entrada tiene el formato parmetro=valor . Por ejemplo, el bloque global predeterminado presenta el siguiente aspecto:
01 [global] 02 ; seleccin de idioma (english,german,french,...) 03 language=spanish 04 ; dateformat para las marcas de mostradas en nagvis (consultar la documentacin s 05 de PHP)

Slo Mapas
NagVis hace uso del archivo de configuracin de Nagios, /usr/local/nagios/etc/

htpasswd.users, por lo que se aplican las mismas reglas de acceso. De todas formas, es
posible especificar archivos diferentes para conjuntos de usuarios diferentes (por ejemplo, ../share/nagvis/etc/.htaccess). De este modo, es posible proporcionar acceso a usuarios especficos a determinados mapas de NagVis, sin tener que dejarles acceder directamente a Nagios.

A travs del archivo de configuracin, podemos ver que la mayora de los parmetros estn comentados por defecto. NagVis es autoexplicativo, adems de que disponemos de valores predeterminados para los distintos parmetros. Los parmetros de la base de datos de Nagios se definen en el bloque correspondiente al backend . Un backend de NagVis es simplemente una fuente de datos. El tipo de backend predeterminado, ndomy , significa que NagVis obtiene los datos a travs de una base de datos NDO MySQL. Actualmente es la nica opcin soportada. Hemos de asegurarnos de cambiar los parmetros dbuser (usuario) y dbpass (contrasea) para que reflejen los parmetros apropiados. Aunque podemos usar el mismo usuario que Nagios, no hay problema en crear un usuario especfico para NagVis mientras pueda leer la base de datos. De forma predeterminada, slo disponemos de un backend, definido como [backend_ndomy_1]; pero se pueden definir ms. Por tanto, es factible mostrar informacin desde mltiples instancias de Nagios ubicadas en diferentes mquinas. Todo lo que hay que hacer es especificar los parmetros necesarios en la definicin del backend. Ntese que es necesario incluir backend_ en la definicin para que NagVis la pueda reconocer. Si NagVis no funcionase en un primer momento y la pantalla de mensajes de error no fuese de utilidad, siempre podemos mirar en /var/log/messages . Este archivo suele proporcionar informacin adicional sobre el motivo real causante del problema. Uno de los problemas ms comunes se da en el acceso a la base de datos, cuyo mensaje de error tiene la forma de Could not open data sink!

Configurando NagVis
Una vez instalado Nagios, se puede apreciar que hay varios servicios configurados de forma predeterminada para

34

Nmero 52

WWW.LINUX- MAGAZINE.ES

NagVis PORTADA

blemente conservemos los mapas durante algn tiempo, no es mala idea hacerlos ms agradables estticamente. Cuando tengamos la imagen, la copiamos a ../ nagvis/nagvis/images/maps (el hecho de que nagvis aparezca dos veces no es un fallo). Comenzamos la configuracin dirigiendo el navegador hacia http:// NOMBREDELAMFigura 1: La pgina de inicio de Nagios proporciona una vista inicial QUINA/nagios/nagde nuestros sistemas. vis . Esta direccin nos lleva a la localhost (la mquina en que se est pgina de inicio de NagVis (Figura 1). ejecutando Nagios). Estos servicios Al pulsar sobre una de las miniaturas, son comnmente conocidos, por lo accedemos al correspondiente mapa en que cuando ejecutamos NagVis, ste escala completa (Figura 2). En cuallos reconoce y muestra automticaquier momento, podemos pulsar sobre mente. Edit current map para entrar en modo Llegados a este punto, podra el lecedicin. Luego, pulsamos con el botn tor sentirse tentado a ponerse a confiderecho sobre el mapa para hacer apagurar su mapa inmediatamente, pero le recer el men contextual. La primera pasara desapercibido un punto clave: opcin, Open Map, abre el mapa selecla imagen de fondo. cionado en el editor de NagVis. Con Dicha imagen no tiene por qu ser Open in NagVis se abre en modo de complicada o extravagante. Un simple slo lectura. En Options podemos condiagrama de lneas puede valer y figurar el mapa actual. cualquier herramienta grfica capaz La opcin Configuration de Nagvis de guardar en formato PNG puede sirve para configurar el propio NagVis. servir igualmente. An as, a menudo A menos que se el propsito de los mapas como ste hayan hecho cames servir de gancho para los directobios directamente res, por lo que quiz s que convenga sobre el archivo de elaborar el mapa de forma algo ms configuracin, se detallada. Adems, dado que probapuede ver que todos los campos aparecen en blanco con la Paquetes Necesarios para configuracin predeNagVis terminada. mysql-devel
php5 php5-common php-gd php-mysql php5-mbstring php5-session php5-xml graphviz (para automap)

existente. En la parte superior del formulario (Figura 3), introducimos el nombre del mapa. Luego, introducimos los nombres de los usuarios que tienen acceso de lectura ( allowed_user ) y los de los que tienen permiso para cambiar la configuracin del mapa ( allowed_for_config ). Estos usuarios son los mismos que reconoce el servidor web, pero NagVis no realiza ninguna comprobacin en este punto. Por tanto, hay que estar seguros de que los usuarios se definen correctamente. Ntese que, en caso de dejar en blanco alguno de los campos relativos a los usuarios, aparece un aviso. Por defecto, debemos incluir al menos nagiosadmin o el nombre que corresponda al administrador principal de Nagios. Si la seguridad es un punto importante, se puede usar un usuario diferente. Adems, podemos definir este parmetro como EVERYONE , sin listar los usuarios explcitamente, de forma que cualquier usuario autenticado podra ver el mapa. Luego, seleccionamos la imagen de fondo desde el men desplegable map_image. En este caso, el mapa creado debe encontrarse en el sistema. NagVis no ampla ni reduce las imgenes, por lo que cabe la posibilidad de que la imagen resulte demasiado grande o demasiado pequea para un monitor en particular. Si fuese necesario, se tendra que escalar con la ayuda de una herramienta grfica externa.

Configuracin de los Mapas


Seleccionando Manage | Maps desde el men podemos crear un mapa o realizar funciones administrativas, como renombrar o eliminar un mapa

Figura 2: Incluso un mapa simple de NagVis puede resultar muy til.

WWW.LINUX- MAGAZINE.ES

Nmero 52

35

PORTADA NagVis

Luego, sobre Icon para elegir Host, Service , Hostgroup , Servicegroup y Map . Uno de los aspectos tiles de Nagvis es Las primeras cuatro opciones no neceque slo reacciona ante estados persissitan explicacin (Mquina, Servitentes. Es decir, si un servicio presenta cio, Grupo de Mquinas y Grupo de Servicios, respectivamente). El una dificultad breve y deja de estar icono Map nos permite crear un enlace disponible por un perodo de tiempo a otro mapa. breve, normalmente no se observarn Enlazar diferentes mapas sirve para cambios en el mapa. Si se prefiere ver crear una jerarqua de mapas de edifitodos los cambios de estado, se debe cios, servidores o gabinetes de servicambiar el parmetro only_hard_states dores. Adems, podemos definir icoa no al configurar la mquina. nos para mquinas o servicios que enlacen con una URL completamente Si se dispone de varios mapas con ajena a Nagvis o Nagios. Por ejemplo, una jerarqua profunda, se puede usar si se est monitorizando la disponibiel parmetro show_in_lists para orgalidad de un sitio web, es posible enlanizarlos. Un valor de 0 evita que Nagzar al sitio mismo para verificar su Vis muestre el mapa en el men desestado. plegable o la pgina de inicio. Al seleccionar la opcin de aadir un El campo Map Iconset define el juego objeto, el cursor adopta la forma de de iconos que se usarn al mostrar los una cruz. Moviendo y pulsando el estados. De forma predeterminada, ratn se pueden ubicar los iconos. Al NagVis usa tres juegos de iconos hacerlo, aparece una ventana que per(grandes, medianos y pequeos), que mite introducir informacin de residen en ../nagvis/nagvis/images . Si configuracin para la mquina o servise quiere, es posible editar la imagen cio que se aadir. existente para ajustarla a las necesidaDel mismo modo que Nagios, Nagdes propias, o crear un juego de iconos Vis emplea el campo use para definir propio. El juego se configura para el plantillas de configuracin que son mapa completo, pero tambin es posiaccesibles para todos los servicios y ble definir un icono para un servicio o mquinas del mapa. Luego slo queda una mquina en concreto. Para obteconfigurar las opciones especficas de ner ms detalles acerca de cmo crear cada plantilla. un juego propio, consultar la docuAl editar un icono, no hay que pulmentacin en el sitio web de NagVis sar sobre l necesariamente para reali[1]. zar los cambios. Al posicionarnos Al pulsar sobre Save volvemos a la sobre uno, pasados un par de segunventana del mapa. dos se abre una ventana con la configuracin del icono y un enlace Aadiendo Objetos al Mapa que permite editar dicha Llegados a este punto, el mapa slo configuracin. Si se prefiere un existe en forma de imagen de fondo. mtodo no interactivo, se pueden conPor tanto, es necesario aadir los icofigurar los iconos para mostrar texto nos que representarn las distintas en vez de esperar a un evento del mquinas y servicios. En primer lugar, ratn. pulsamos con el botn derecho sobre Cuando configuramos una el mapa y seleccionamos Add Object . mquina, NagVis slo muestra de forma predeterminada el estado de la propia mquina. El parmetro recognize_services indica a NagVis que debe incluir los servicios en la mquina indicada. Normalmente no es necesario incluir los iconos de servicio ni los Figura 3: El formulario de creacin de mapas de NagVis. de mquina en un

Estados Persistentes

Figura 4: Creacin de un servicio en el formulario de configuracin de servicios de Nagios..

mismo mapa pero, an as, con mapas de ms alto nivel, puede resultarnos til combinar esta informacin. Cabe destacar que no se est limitado tan slo a servicios y mquinas individuales. NagVis soporta tanto grupos de servicios como grupos de mquinas, los cuales aparecen en el men de configuracin junto con las mquinas y servicios. Debido a que las mquinas y servicios pertenecientes a grupos determinados tienen diferentes prioridades, Nagvis muestra el estado con mayor prioridad.

Eso No Es Todo
NagVis nos permite visualizar nuestro entorno Nagios en mapas personalizados. Una vez instalados los mapas con la configuracin bsica, ya podemos probar con opciones ms avanzadas para ver cmo encajan en nuestro I entorno.

RECURSOS
[1] NagVis: http://www.nagvis.org

36

Nmero 52

WWW.LINUX- MAGAZINE.ES

FreeIPA PRCTICO

Gestin Integrada de Identidad con FreeIPA

COMPROBACIN DE IDENTIDAD
FreeIPA ofrece una gestin integrada de identidad y buenas ideas para el futuro. POR THORSTEN SCHERF

os sistemas Linux empresariales emplean un conjunto de herramientas estndar para la gestin de identidades, auditora y seguridad. Estas herramientas funcionan bien de forma independiente, una vez que se tengan bien configuradas, pero cuando hay que integrarlas, los administradores a menudo tienen que improvisar. Caractersticas tales como la gestin centralizada de registros de auditora de mltiples mquinas, as como la posibilidad de distribuir los mdulos de poltica SELinux en mltiples mquinas, se encuentran con frecuencia controlados por scripts de andar por casa. Aunque hay diversas soluciones propietarias, normalmente son caras y poco flexibles. El proyecto FreeIPA [1] es un esfuerzo por combinar diversos proyectos populares de cdigo abierto en un sistema unificado comn. IPA son las siglas de Identidad, Poltica y Auditora, pero los desarrolladores normalmente utilizan esta abreviatura teniendo en cuenta posibles objetivos futuros. El nfasis actual se centra en la gestin de la identidad, con soporte para Kerberos y LDAP. Prximas versiones ofrecern la gestin y configuracin centralizada de certificados, as como gestin de polticas y auditoras. La Figura 1 muestra los componentes individuales de FreeIPA versin 1 y cmo funcionan. La combinacin de LDAP y Kerberos

hacen que la integracin de FreeIPA con el sistema de Directorio Activo de Microsoft sea sencilla. Aunque el mundo de Linux ofrece otras opciones para la integracin con el Directorio Activo (como Samba o Likewise [2]), el Directorio Activo por s mismo es slo una parte de la solucin para una herramienta de

auditora y seguridad completamente integrada. Por ejemplo, no ofrece nada con respecto a la gestin de las polticas o las auditoras para los sistemas Linux, de este modo se fuerza a los administradores a que utilicen otras fuentes para cubrir

El Camino por Recorrer


El objetivo de la versin 1 actual de FreeIPA consiste en la gestin de las identidades de los usuarios y los grupos. La migracin de las soluciones existentes de NIS a FreeIPA para tener un entorno LDAP con contraseas Kerberos es fcil. La versin en desarrollo ya ofrece un servicio de sincronizacin con un servidor de Directorio Activo existente; de hecho, la integracin con el Directorio Activo debera estar disponible en la versin oficial de FreeIPA en el momento de la publicacin de este nmero. La versin 2, cuyo lanzamiento se prev para el prximo ao, aadir ms funcionalidades. La caracterstica de gestin de identidades se extender para que pueda manejar cuentas de mquinas. Otra caracterstica prevista es el soporte de CA (Certificate Authority) para proporcionar certificados de usuario y de servicios. Por supuesto, los dos componentes de IPA inexistentes, Polticas (P) y Auditoria (A), an tienen que incluirse. El componente de polticas no manejar la gestin de conjuntos de reglas SELinux. La hoja de ruta de desarrollo tambin incluye la gestin centralizada de configuraciones PAM, con pam_access, pam_time y pam_limits. Tambin ser fcil asignar privilegios de usuario por medio de sudo, ya que los administradores podrn gestionar estas configuraciones de forma centralizada con FreeIPA. Los componentes de auditoras accedern fundamentalmente a las funciones de los servicios de auditora ms populares para asegurarse la compatibilidad con las polticas de identidades existentes. Desde luego, un sistema de reglas de auditoras central incluir la coleccin de eventos de auditoras en mquinas individuales. Estos eventos de auditora sern registrados en el servidor FreeIPA para generar informes y para su evaluacin.

WWW.LINUX- MAGAZINE.ES

Nmero 52

43

PRCTICO FreeIPA

estas funciones. Muchos usuarios de Linux deben considerar tambin si es una buena idea ubicar su infraestructura de seguridad en las manos de una tecnologa propietaria como es el Directorio Activo de Microsoft. FreeIPA es an un trabajo en desarrollo; los desarrolladores an no han alcanzado el potencial completo de esta herramienta tan prometedora (vase el cuadro titulado El Camino por Recorrer). La versin actual, sin embargo, proporciona soporte para LDAP y Kerberos, as como otras caractersticas interesantes. En este artculo vamos a mostrar la forma de comenzar con FreeIPA.

Instalacin del Servidor


Antes de comenzar con la instalacin del servidor, hay que asegurarse de que todas las mquinas soportan la resolucin de nombres DNS. Aadindole un par de registros de servicio (SRV) al servidor DNS existente, se simplificar la posterior configuracin de los clientes, permitiendo que por medio de una solicitud DNS se obtenga el servidor responsable y el dominio de Kerberos. Cuando se instala el servidor FreeIPA, se crear un fichero de zona DNS de ejemplo con todas las entradas necesarias, el cual se puede utilizar como extensin del servidor DNS (Listado 1). Para instalar el servidor FreeIPA en un sistema Fedora slo hay que teclear yum -y install ipa-server. El servidor y todos los paquetes necesarios estn disponibles en los repositorios estndar desde que apareci Fedora 8. Tras la instalacin, hay que ejecutar ipa-server-install para configurarlo. Si se prefiere crear directamente un fichero de zona DNS, se puede llamar a la herramienta con el

parmetro --setup-bind. En este paso se crea un fichero de zona en el directorio tmp. Al llamar a la rutina de configuracin se instalarn los siguientes componentes en la mquina: NTP Servicio de Directorio Fedora Figura 1: Las herramientas de cdigo abierto ms popula MIT Kerberos res ejecutndose bajo el paraguas comn de FreeIPA. Apache/TurboGears SELinux-targeted policy para FreeIPA Login Shell: /bin/sh El programa de instalacin solicitar al usuario Login: tscherf que introduzca los datos necesarios (por ejemplo, el LDAP Base DN, el dominio Kerberos y Si se necesita ms informacin de atributos el nombre del servidor); un par de minutos LDAP, se puede, por supuesto, configurar una ms tarde, el servidor y todos sus componenconexin autenticada por Kerberos al servidor tes estarn listos. A continuacin hay que LDAP y consultar los atributos que se deseen teclear kinit admin y solicitar un ticket de (Listado 2). usuario para admin con el propsito de comLa herramienta klist muestra el ticket del probar que el servidor Kerberos est funcioservicio transferido para el servidor LDAP: nando adecuadamente. La siguiente llamada aade un usuario [root@devel-srv1 ~]# klist -5 nuevo al directorio/Kerberos del servidor: Ticket cache: FILE:/tmp/krb5cc_0
# ipa-adduser U -f Thorsten -l Scherf tscherf Password: Password (again): tscherf successfully added Default principal: U admin@VIRT.FOO.DE Valid starting Expires U Service principal 09/19/08 13:57:28 09/20/08 U 13:57:26 krbtgt/VIRT.FOO.DE@U VIRT.FOO.DE 09/19/08 13:57:42 09/20/08 U 13:57:26 ldap/devel-srv1.U virt.foo.de@VIRT.FOO.DE

Si la contrasea introducida cumple las polticas definidas para las contraseas, ipa-finduser encontrar la cuenta del usuario, que ahora ya existir en el directorio del servidor:
# ipa-finduser tscherf Full Name: Thorsten Scherf Home Directory: /home/tscherf

Tambin se encuentra disponible una interfaz web para gestionar todas estas tareas (Figura 2), pero habr que configurar el navegador web. Firefox muestra la configuracin actual

Listado 1: Extensiones DNS


01 $TTL 86400 02 @ IN SOA devel-srv1.virt.foo.de. root.devel-srv1.virt.foo. de. ( 03 ; Dont forget to increment the serial number 04 2003040100 ;serial number 05 1H ;refresh slave 06 5M ;retry refresh 07 1W ;expire zone 08 5M ;cache time-to-live for negative answers 09 ) 10 ; Name server resource records ( NS ) 11 ; owner TTL CL type RDATA 12 @ IN NS devel-srv1.virt.foo.de. 13 14 15 ; Internet address resource records( A ) 16 ; owner TTL CL type RDATA 17 devel-srv1 IN A 192.168.122.100 18 19 ; ldap servers 20 ldap._tcp IN SRV 0 100 389 devel-srv1.virt.foo.de. 21 22 ;kerberos realm 23 kerberos IN TXT VIRT.FOO.DE 24 25 ; kerberos servers 26 kerberos._tcp IN SRV 0 100 88 devel-srv1.virt.foo.de. 27 kerberos._udp IN SRV 0 100 88 devel-srv1.virt.foo.de. 28 kerberos-master._tcp IN SRV 0 100 88 devel-srv1.virt.foo.de. 29 kerberos-master._udp IN SRV 0 100 88 devel-srv1.virt.foo.de. 30 kpasswd._tcp IN SRV 0 100 464 devel-srv1.virt.foo.de. 31 kpasswd._udp IN SRV 0 100 464 devel-srv1.virt.foo.de. 32 33 ;ntp server 34 ntp._udp IN SRV 0 100 123 devel-srv1.virt.foo.de.

44

Nmero 52

WWW.LINUX- MAGAZINE.ES

FreeIPA PRCTICO

que hacer es llamar a ipa-client-install para comenzar la instalacin del cliente. Gracias a la entrada dns_lookup_realm = true del fichero /etc/krb5.conf, el cliente le solicitar a su servidor DNS toda la informacin de configuracin necesaria (Listado 3). Para probar la conexin con el servidor, se puede utilizar kinit admin en el cliente; si todo funFigura 2: La interfaz web facilita la incorporacin de nue- ciona, el siguiente paso consistir vos usuarios al directorio. en definir un host principal para el cliente en la base de datos de Kercuando se introduce about:config. Los siguienberos y almacenar la contrasea localmente tes comandos son los que se necesitan para la en el lado cliente: personalizacin:
network.negotiate-U auth.trusted-uris .virt.foo.de network.negotiate-auth.U delegation-uris .virt.foo.de network.negotiate-auth.U using-native-gsslib true # ipa-addservice host/U devel-client.virt.foo.de # ipa-getkeytab host/U devel-client.virt.foo.de -k U /etc/krb5.keytab Keytab successfully retrieved U and stored in: /etc/krb5.keytab

Introduciendo echo SECURE_NFS = yes > /etc/sysconfig/nfs se activan todos los servicios NFS requeridos tras ejecutar el comando service nfs start. Ahora hay que configurar el servicio principal para el servicio NFS en la base de datos de Kerberos y exportarlo al fichero del servidor keytab:
# ipa-addservice U nfs/devel-srv1.virt.foo.de # ipa-getkeytab U nfs/devel-srv1.virt.foo.de -k /etc/krb5.keytab Keytab successfully retrieved U and stored in: /etc/krb5.keytab

Tras abrir una conexin https al servidor FreeIPA, se podr crear o consultar la cuenta de un usuario fcilmente por medio de la interfaz web.

Servicios Kerberos
El siguiente paso consiste en configurar un servicio para que funcione con Kerberos. Primero, considrese el ejemplo de un servidor NFS al que las mquinas cliente puedan acceder por medio del protocolo NFSv4 con autenticacin por Kerberos. El servidor se asegurar de la integridad de los datos y de la privacidad. Para que esto suceda, hay que configurar un recurso compartido NFS en el servidor IPA:
# cat /etc/exports /data gss/krb5U (rw,fsid=0,subtree_check) /data gss/krb5pU (rw,fsid=0,subtree_check) /data gss/krb5iU (rw,fsid=0,subtree_check)

Configuracin del Cliente


Fedora, Red Hat Enterprise Linux (RHEL) y distintas variantes de UNIX, incluyendo a Solaris, AIX, HP-UX y Mac OS X, tienen disponible un cliente FreeIPA. Instalarlo en Fedora es tan sencillo como ejecutar el siguiente comando yum:
yum install ipa-client U ipa-admintools

La configuracin del cliente es bastante similar. Si se siguen los mismos pasos para crear un servicio principal NFS y se almacenan localmente en el fichero /etc/krb5.keytab, el comando ipa-findservice indicar si est en funcionamiento o no. Este comando ipa-findservice listar todos los equipos y servicios principales del fichero keytab. Para asegurarse de que los servicios NFS cliente requeridos, rpcgssd y rpcidmapd, se ejecutan correctamente, hay que aadir una entrada SECURE_NFS = yes al fichero /etc/sysconfig/nfs. Ahora ya estar listo para montar de forma segura NFSv4:
# mount -v -t nfs4 U -o sec=krb5p devel-srv1:/ U /mnt/nfs4

Si posteriormente se transfiere el fichero de configuracin de Kerberos /etc/krb5.conf desde el servidor al cliente, lo nico que hay

Tngase en cuenta que FreeIPA almacena la configuracin completa de Kerberos en LDAP (Figura 3). Como las herramientas nativas de Kerberos como kadmin o kadmin.local no ofrecen una interfaz LDAP nativa, no se pueden utilizar para gestionar la base de datos de Kerberos. Por otro lado, los administradores siempre necesitarn utili-

Listado 2: Consultando el Servidor


01 [root@devel-srv1 ~]# ldapsearch -Y GSSAPI uid=tscherf -LLL 02 SASL/GSSAPI authentication started 03 SASL username: admin@VIRT.FOO.DE 04 SASL SSF: 56 05 SASL installing layers 06 dn: uid=tscherf,cn=users,cn=accoun ts,dc=virt,dc=foo,dc=de 07 08 09 10 11 12 13 14 15 16 17 uid: tscherf objectClass: top objectClass: person objectClass: organizationalPerson objectClass: inetOrgPerson objectClass: inetUser objectClass: posixAccount objectClass: krbPrincipalAux objectClass: radiusprofile loginShell: /bin/sh gidNumber: 1002 18 19 20 21 22 23 24 25 gecos: tscherf sn: Scherf homeDirectory: /home/tscherf krbPrincipalName: tscherf@VIRT.FOO.DE givenName: Thorsten cn: Thorsten Scherf uidNumber: 1100 memberOf: cn=ipausers,cn=groups,cn=accou nts,dc=virt,dc=foo,dc=de

WWW.LINUX- MAGAZINE.ES

Nmero 52

45

PRCTICO FreeIPA

zar las herramientas FreeIPA para las tareas administrativas.

/tmp/replica-info-devel-U srv2.virt.foo.de

Datos de Alta Disponibilidad


Tras completar la configuracin bsica del servidor, se deberan replicar los datos del servidor de directorios en una segunda mquina. Como FreeIPA almacena la configuracin completa de Kerberos y la base de datos de Kerberos en LDAP, esta replicacin proporciona un segundo servidor maestro en un momento. En el caso de que el servidor maestro falle, el servidor maestro secundario poseer todos los datos, en el cual incluso se podrn editar los mismos. Una vez que el servidor maestro primario vuelva a estar en lnea, los datos modificados se replicarn en l. El uso de al menos dos servidores es tambin una buena idea para propsitos de balanceo de carga. Si se almacenan los datos en dos localizaciones geogrficas diferentes, podra considerarse la configuracin de ms servidores y montarlos como rplicas para evitar el uso de una conexin WAN cuando se vaya a consultar o cambiar el directorio. El servidor maestro principal posee un fichero de configuracin con toda la informacin que se necesita para crear un servidor secundario:
# ipa-replica-prepareU devel-srv2.virt.foo.de

Suponiendo que el programa de instalacin se complete sin ningn error, se podr empezar con la rplica de la base de datos LDAP. Si se ha asignado un fichero de zona DNS separado para la rplica, se tendrn dos servidores independientes. Con el uso de ipa-replica-manage, se podr ver y modificar cualquier parmetro de replicacin que se haya establecido de esta forma.

Sincronizacin con el Directorio Activo


Los administradores pueden utilizar ipa-replica-manage para sincronizar los datos entre un servidor Windows con Directorio Activo y un servidor FreeIPA. La versin en desarrollo actual de FreeIPA ya implementa esta caracterstica. Para ello, se necesita un certificado TLS/SSL en el servidor Windows; esto es obligatorio para la sincronizacin de los datos entre el servidor del Directorio Activo y FreeIPA. La Wiki de Fedora posee un HOWTO [3]. Ahora hay que copiar el certificado CA utilizado aqu al servidor FreeIPA para verificar el certificado TLS/SSL del servidor del Directorio Activo. Cuando se ejecuta el programa ipa-server-install, el plugin Windows Sync se instala automticamente. Sin embargo, el plugin no se utiliza a menos que se realice una replicacin de datos entre un servidor Windows y un servidor FreeIPA con ipa-replica-manage. La herramienta posee varias opciones nuevas: winsync define la replicacin de datos entre un servidor Windows y un servidor FreeIPA. binddn define la cuenta de usuario para conectarse al Directorio Activo. Este usuario necesita una serie de privilegios (lectura,

Figura 3: FreeIPA almacena la base de datos de Kerberos en un contenedor LDAP.

Ahora slo hay que copiar el fichero creado en este ltimo paso al equipo que replica y ejecutar la instalacin all:
# scp /var/lib/ipa/replica-U info-devel-srv2.virt.foo.de U root@devel-srv2:/tmp/ # ipa-replica-install U

escritura, bsqueda, cambio de contraseas, DirSync). bindpw especifica una contrasea para la cuenta de un usuario especfico. cacert define una ruta al certificado CA ASCII/PEM-encoded que se utiliza para firmar el certificado TLS/SSL del servidor Windows. Esta configuracin se almacena posteriormente en el repositorio de certificados de FreeIPA. Tras introducir los datos necesarios, el contenedor del usuario del Directorio Activo se sincroniza con el servidor FreeIPA. Todos los clientes IPA Unix/Linux podrn entonces acceder a esta informacin por medio de una interfaz nativa. Como el proceso de sincronizacin es unidireccional, los nuevos usuarios que posean cuentas tanto en los clientes Windows como Linux deben crearse primero en el Directorio Activo.

Conclusiones
FreeIPA unifica diversas herramientas bajo un mismo paraguas. La versin 1 se centra en el almacenamiento de las identidades. Aunque componentes como certificados, auditoras y gestin de polticas an no se encuentran disponibles, es fcil ver hacia dnde se dirige el I producto.

Listado 3: Instalacin Cliente


01 [root@devel-client ~]# ipa-client-install 02 Discovery was successful! 03 Realm: VIRT.FOO.DE 04 DNS Domain: virt.foo.de 05 IPA Server: devel-srv1.virt.foo.de 06 BaseDN: dc=virt,dc=foo,dc=de 07 08 Continue to configure the system with these values?[y/N]: y 09 10 11 12 13 14 Created /etc/ipa/ipa.conf Configured /etc/ldap.conf LDAP enabled nss_ldap is not able to use DNS discovery! Changing configuration to use hardcoded server name: devel-srv1.virt.foo.de Kerberos 5 enabled NTP enabled Client configuration complete.

RECURSOS
[1] FreeIPA: http://www.freeipa.org [2] Likewise: http://www. likewisesoftware.com [3] HOWTO Windows Sync: http:// directory.fedoraproject.org/wiki/ Howto:WindowsSync

15 16 17

46

Nmero 52

WWW.LINUX- MAGAZINE.ES

Educacin: Phidgets LINUX USER

Robtica en el aula

PHIDGETLAB

Cmo atravesar la frontera desde el mundo de Squeak al mundo real de los objetos fsicos? POR MXIMO PRUDENCIO

l proyecto PhidgetLab es una atractiva muestra de las grandes posibilidades de trabajo en el aula con Squeak que, como dicen sus autores, permite atravesar la frontera desde el mundo de Squeak al mundo real de los objetos fsicos. Con Phidgetlab es posible obtener informacin a partir de sensores de diferente tipo (de fuerza, temperatura, luminosidad, tctiles, rotacin, vibraciones, deslizadores, ) y controlar y programar el funcionamiento de dispositivos externos, tales como motores, rels, diodos, transistores, ..., o mediante las entradas registradas por los sensores, controlar objetos del mundo de Squeak. El Software Architecture Group del Instituto Hasso Plattner de la Universidad de Postdam, dirigido por el Dr. Robert Hirschfeld, ha desarrollado un conjunto de mtodos y herramientas destinadas a mejorar la comprensin y el diseo de complejos sistemas mediante el acceso a Phidgets, utilizando Squeak como herramienta de programacin de diversos dispositivos conectados al puerto usb de un ordenador personal.

serie de placas usb, de bajo coste, diseadas para ser controladas desde cualquier ordenador y sistema operativo. Los Phidgets se distribuyen con una serie de interfaces de programacin de aplicaciones (APIS) disponibles para la mayora de las plataformas [1]. El origen de la palabra proviene de los gadgets o widgets, pequeas aplicaciones ejecutadas por un motor de widgets (Widget Engine). El objetivo de estas miniaplicaciones es muy diverso, princi-

palmente la de dar fcil acceso a funciones usadas frecuentemente y proveer de informacin visual. Son widgets aquellas aplicaciones que habitualmente aadimos a nuestro panel o escritorio y que nos proporcionan servicios tales como relojes en pantalla, calculadoras, calendarios, agendas, juegos, ventanas de informacin del tiempo, etc. Los Phidgets son widgets que traspasan la barrera de lo virtual a lo real. Un Phidget es una representacin o imple-

Qu Son los Phidgets?


El trmino Phidget es un acrnimo de Physical Widget. Los Phidgets son una
Figura 1: Control de dispositivos externos mediante Squeak-PhidgetLab.

WWW.LINUX- MAGAZINE.ES

Nmero 52

81

LINUX USER Educacin: Phidgets

Instalacin de PhidgetLab
Para proceder a la instalacin de PhidgetLab deberemos, en primer lugar, enchufar al puerto usb del ordenador el Phidget y los sensores y operadores que se vayan a utilizar. El PhidgetInterfaceKit 8/8/8, utilizado por el Software Architecture Group, es una placa de bajo coste que incluye 8 entradas analgicas, 8 entradas digitales y 8 salidas digitales. A continuacin ser necesario descargar e instalar el software necesario para su uso con Squeak. El proceso consiste en: Descargar el driver Phidget 21, para la arquitectura utilizada, que contiene la interfaz de programacin de aplicaciones (API ). Hay libreras disponibles para Linux y otros sistemas operativos [6]. Instalar la librera Phidget 21. Descargar la librera del plugin Phidget (Phidgetplugin.dll) y copiarla en el directorio en el que tengamos instalada la mquina virtual de Squeak [7]. Descargar e instalar los archivos sar, por este orden, Core [8] y Etoys [9]. Para instalar los archivos sar, Core y Etoys, utilizando la imagen de Squeak de Squeakpolis [10] deberemos estar en modo experto, pulsar el botn Escape, seguir la secuencia abrir > lista de archivos, localizar sucesivamente los archivos Phidget-Core.sar y Phidget-Etoys.sar en nuestro disco duro y pulsar, en cada caso, el botn Instalar.

Figura 2: Tarjeta Phidget 8/8/8, incluye 8 entradas analgicas, 8 entradas digitales y 8 salidas digitales.

mentacin fsica de un widget. Los Phidgets son sistemas de componentes electrnicos, plug and play, econmicos con sensores y operadores que se pueden controlar por un ordenador personal utilizando el puerto serie universal (USB) [2] [3]. Para que el Phidget pueda acceder al sistema se requiere una interfaz de programacin de aplicaciones (API), generalmente escrita en lenguaje C, y se pueden programar usando un amplia variedad de software.

Proyecto PhidgetLab
Un grupo de estudiantes del Software Architecture Group (formado por Lysann Kessler, Stephanie Platz, Thomas Klingbeil, Philipp Tessenow, and Frank Schlegel), como proyecto de curso, han desarrollado recientemente PhidgetLab, una interfaz de programacin de aplicaciones (API) para Squeak y su integracin en los Etoys [4] [5]. El trabajo ha consistido en la creacin de una interfaz de programacin de aplicaciones (API) que permite acceder a Phidgets desde Squeak. El fundamento de la interfaz de programacin de aplicaciones (API) es un plugin (PhidgetPlugin) para la mquina virtual de Squeak, escrito en Slang y C, que posibilita la comunicacin entre la mquina virtual de Squeak y la interfaz de programacin de aplicaciones (API) del Phidget, as como la integracin del acceso y control de los Phidgets en el entorno grfico.

El proyecto consiste en dos paquetes, denominados Phidget-Core y PhidgetEtoys. El paquete Phidget-Core es la interfaz de programacin de aplicaciones (API) para Squeak. En tanto que Phidget-Etoys es el encargado de integrar esta funcionalidad en los Etoys, lo que permite su control desde el entorno grfico de Squeak. Ambos paquetes se distribuyen como archivos *.sar. Un archivo .sar (SqueakARchive) es, en realidad, un archivo zip que puede tener cualquier contenido, incluso otro .sar, y que se puede usar para instalar cdigo en una imagen de Squeak, implementando nuevas funcionalidades. En este caso, los archivos PhidgetCore.sar y Phidget-Etoys.sar trabajan conjuntamente. El archivo Phidget-Core adapta la interfaz de programacin de aplicaciones (API) Phidget a Squeak y el paquete PhidgetEtoys.sar integra esta funcionalidad en los Etoys, de modo que sea accesible fcilmente desde el Figura 3: Catlogo de Objetos de Squeak con la categora Phidgets entorno grfico.
incorporada.

82

Nmero 52

WWW.LINUX- MAGAZINE.ES

Educacin: Phidgets LINUX USER

desencadenarn al activarse. La pgina del proyecto PhidgetLab ejemplifica, mediante un vdeo incrustado [11], el control de un sencillo e ilustrativo juego de un laberinto flotante con agujeros, a travs del cual hacen evolucionar una bola, y al que se han conectado dos servomotores a travs del Phidget y su programacin con Squeak.

Reconocimientos
Queremos agradecer expresamente al Software Architecture Group, a los profesores Michael Haupt, Michael Perscheid y Robert Hirschfeld del Instituto Hasso Plattner de la Universidad de Postdam, y al equipo de estudiantes, formado por Lysann Kessler, Stephanie Platz, Thomas Klingbeil, Philipp Tessenow, Frank Schlegel, autores del proyecto PhidgetLab, toda la ayuda prestada para la elaboracin de este artculo y la utilizacin de algunas de I las imgenes contenidas en su web.

Figura 4: Objetos de la categora Phidgets.

Por ltimo, guardar la imagen modificada de Squeak que integrar Phidgets, como nueva categora, en el Catlogo de objetos.

Funcionamiento
Utilizando la imagen de Squeak con PhidgetLab se obtiene pleno control sobre los Phidgets conectados a puertos usb desde la imagen de Squeak. Por el momento, los objetos de la categora PhidgetLab permiten acceder a varios Phidgets que controlan dispositivos fsicos. Una vez realizada la instalacin de PhidgetLab, el Catlogo de objetos de la imagen modificada de Squeak contendr una nueva categora, denominada Phid-

gets, con tres nuevas clases de objetos, Accelerometer, InterfaceKit y Servo 1Motor. Mediante el visor del objeto de cada uno de ellos se puede acceder a las opciones de configuracin de su comportamiento. El acelermetro permite obtener informacin de la aceleracin de un objeto, Servo 1-Motor controlar motores y el InterfaceKit incluye el control de varios sensores, servo motores, acelermetros de tres ejes, el Kit RFID y el Kit LV Motor. La programacin de estos objetos sigue los mismos patrones de la programacin grfica de objetos en Squeak, arrastrando y soltando guiones sobre el mundo y configurando las acciones que

RECURSOS
[1] Pgina oficial de Phidgets: http:// www.phidgets.com/ [2] ILOP. Distribuidor en Espaa de Phidgets: http://www.ilop.es/ [3] Presentacin de Phidgets por el distribuidor en Youtube: http://www. youtube.com/watch?v=nIzPlwmaoQU [4] Pgina de PhidgetLab: http://www. hpi.uni-potsdam.de/hirschfeld/ projects/phidgetlab/ [5] Descripcin del proyecto PhidgetLab: http://www.hpi.uni-potsdam.de/ hirschfeld/projects/phidgetlab/media/ PhidgetLab.pdf [6] Librera Phidget 21: http://www. phidgets.com/drivers.php [7] Plugin Phidget para Linux: http:// www.hpi.uni-potsdam.de/hirschfeld/ projects/phidgetlab/media/source/ PhidgetPlugin [8] Sar Core: http://www.hpi. uni-potsdam.de/hirschfeld/projects/ phidgetlab/media/source/ Phidget-Core.sar [9] Sar Etoys: http://www.hpi. uni-potsdam.de/hirschfeld/projects/ phidgetlab/media/source/ Phidget-Etoys.sar [10] Portal de Squeakpolis: http://squeak. educarex.es/Squeakpolis [11] Vdeo funcionamiento PhidgetLab: http://www.youtube.com/ watch?v=hTcxoIYwpBs

Figura 5: Control de dos servomotores en funcin de los valores de dos sensores analgicos.

WWW.LINUX- MAGAZINE.ES

Nmero 52

83

Ms del 30% de descuento respecto al precio de portada: Consigue 12 nmeros por 5490 Euros y todos los DVDs Gratis!

A diferencia de otras publicaciones, Linux Magazine no llenar tu buzn de recordatorios para que renueves tu subscripcin. sta se renovar automticamente cada ao. Recibirs una confirmacin aproximadamente 30 das antes del final de tu periodo de subscripcin, pero no se requiere que hagas nada para seguir suscrito.

No te pierdas Linux Magazine nunca ms! La subscripcin te asegura que recibas los conocimientos Linux de ms alta calidad en tu domicilio cada mes.

Si por cualquier motivo decides dejar de leer Linux Magazine, puedes cancelar tu subscripcin en cualquier momento. Te abonaremos el precio de todos los nmeros que no hayas recibido. Sin preguntas, sin fechas de cancelacin, sin problemas.

Linux Magazine es algo ms que una revista de Linux. Patrocinamos grupos, congresos, proyectos y eventos relacionados con el Software Libre. Suscribindote a Linux Magazine garantizas que podamos seguir apoyando al Software Libre all donde haga falta.

EVENTOS

Presentacin CREA
Fecha: 18 Sep Lugar: Mlaga, Espaa Web: www.forman.es

Fisol 2009
Fecha: 02 - 03 Oct Lugar: Tapachula, Mxico Web: www.fisol.org

Fesoli 2009
Fecha: 14 Nov Lugar: Lima,Per Web: fesoli.cosolig.org

Calendario de Eventos Espaa e Hispanoamrica Evento Presentacin CREA Feria de CREA de Empresas de Soft.Libre Jornadas Lat. Am.y Caribe usuarios gvSIG Festival Internacional de Software Libre Jornadas Regionales del Software Libre Fesoli 2009 MOSKittDay 2009 Resto del Mundo Evento Software Freedom Day 2009 LinuxCon 9th Annual Linux Kernel Summit LUGRadio Live 2009 Plone Conference 2009 FSOSS 2009 USENIX LISA '09 Linux Found. End User Summit SCALE 8x

Fecha 17 Sep 17 Sep 30 Sep - 02 Oct 02 - 03 Oct 07-09 Oct 14 Nov 1 Dic Fecha 19 Sep 21 - 25 Sep 18 - 20 Oct 24 Oct 28 - 30 Oct 29 - 30 Oct 01 - 06 Nov 09 - 10 Nov 19 - 21 Feb,2010

Ciudad Mlaga,Espaa Mlaga, Espaa Buenos Aires, Argentina Tapachula,Mxico Santiago,Chile Lima,Per Valencia,Espaa Ciudad Mundial Portland,EE.UU. Tokyo, Japn Wolverhampton,R.U. Budapest,Hungra Toronto,Cnada Baltimore,EE.UU. Jersey City,EE.UU. Los ngeles,EE.UU.

Sitio Web www.forman.es www.forman.es gvsig.org/web/community/events/ www.fisol.org www.opencommunity.cl fesoli.cosolig.org www.moskitt.og Sitio Web softwarefreedomday.org events.linuxfoundation.org events.linuxfoundation.org www.lugradio.org/live/ plone.org/events/conferences/2009 fsoss.senecac.on.ca/2009 www.usenix.org/events/lisa09/ events.linuxfoundation.org scale7x.socallinuxexpo.org

Informacin de Contacto
Director Paul C. Brown Coolaboradores Paul C. Brown, Mximo Prudencio, Jos Mara Ruz, AOliver Frommel, Klaus Knopper, Jose Mara Lancho Traductores Paqui Martn Vergara, Lucas Gonzlez, Vctor Tienda Maquetacin Miguel Gmez Molina Diseo de Portada Pinball info@pinball-werbeagentur.de Porsche Carrera GT por Luciano Loureno http://luciano.kurumin.com.br Free Art License Publicidad www.linux-magazine.es/pub/ Para Espaa Marketing y Comunicaciones anuncios@linux-magazine.es Tel.: (+ 34) 952 020 242 Fax.: (+ 34) 951 235 905 Carmelo Medina cmedina@linux-magazine.es Tel.: (+ 34) 952 020 242 Fax.: (+ 34) 951 235 905 Para el Resto del Mundo Hubert Wiest ads@linux-magazine.com Tel.: Fax.: Director Editorial Paul C. Brown Jefe de Produccin Miguel Gmez Molina Subscripciones: www.linux-magazine.es/magazine/subs Precios Subscripcin Espaa: 54,90 Europa: 64,90 Resto del Mundo - Euros: 84,90 subs@linux-magazine.es Tel.: (+34) 952 020 242 Fax.: (+34) 951 235 905 Linux Magazine Linux New Media Spain, S.L. Edfco. Hevimar, Planta 2, Ofic. 16 C/Graham Bell n 6 29590 - Mlaga ESPAA info@linux-magazine.es Tel.: (+34) 952 020 242 (+34) 951 235 904 Fax.: (+34) 951 235 905 www.linux-magazine.es - Espaa www.linux-magazine.com - Mundo www.linux-magazine.co.uk - Reino Unido www.linux-magazine.com.br - Brasil www.linux-magazine.pl - Polonia (+49) 8999 34 11 23 (+49) 8999 34 11 99 Si bien se toman todas las medidas posibles para garantizar la precisin del contenido de los artculos publicados en Linux Magazine, la editorial no se hace responsable de imprecisiones aparecidas en la revista. Asimismo, Linux Magazine no comparte necesariamente las opiniones vertidas por sus colaboradores en sus artculos. El riesgo derivado del uso del DVD y el material que contiene corren por cuenta del lector. El DVD es estudiado escrupulosamente para confirmar que est libre de virus y errores. Copyright y Marcas Registradas 2009 Linux New Media Spain, S.L. Linux New Media Spain S.L. prohbe la reproduccin total o parcial de los contenidos de Linux Magazine sin su permiso previo y por escrito. Linux es una Marca Registrada de Linus Torvalds. Impreso en Alemania Impresin: F&W Mediencenter Distribucin: SGEL Depsito Legal: MA-116-2005 ISSN edicin impresa: 1576-4079 ISSN edicin online: 1699-2237

WWW.LINUX- MAGAZINE.ES

Nmero 52

95

Hazte con tus ejemplares atrasados!


#41 #42 #43

#44

#45

#46

#47

#48

#49

W W W. L I N U X - M A G A Z I N E . E S / AT R A S A D O S

pdelos ya!

el REPOSITORIO

de conocimientos LINUX ms COMPLETO No esperes a que se agoten!


#50 #51

W W W. L I N U X - M A G A Z I N E . E S / AT R A S A D O S

PRXIMO NMERO

DISPOSITIVOS
l enorme abanico de hardware perifrico para PCs, combinado con la poca predisposicin de algunos proveedores de suministrar drivers para Linux de sus productos, ha obligado a la comunidad de creadores de software libre a desarrollar su creatividad. El mes que viene mostramos algunas herramientas y tcnicas para soportar dispositivos en Linux. Vemos el estado del desarrollo de drivers en Linux y algunos de los obstculos que ha de superar cualquier programador que quiera iniciarse en este campo. Continuamos nuestro recorrido examinando las libreras necesarias para desarrollar cdigo para aparatos multimedia. A continuacin analizamos varios trucos que nos harn la vida ms fcil, permitindonos, entre otras cosas, escribir en ficheros de slo lectura. Y, por ltimo, aprendemos a mantener datos a salvo con cifrado sobre dispositivos de almacenamiento USB. Manten todos tus perifricos en perfecto funcionamiento con el nmero 53 de Linux Magazine

ZFS en Linux
A pesar de que Linux ha desplazado en muchos casos a Solaris de la salas de mquinas corporativas, existe al menos un rea donde los sistemas de Sun siguen superando tcnicamente a los de GNU: El sistema de ficheros Z (o ZFS) dispone de funcionalidades avanzadas, como alta tolerancia ante fallos de disco, soporte para tipos de datos de 128 bits, soporte RAID integrado, compresin online, y mucho ms. Aunque no est integrado en el kernel de Linux, no es imposible hacer funcionar ZFS en el sistema. El mes que viene te enseamos cmo hacerlo.

En la Punta de los Dedos


Mantenerse al tanto de inventarios, historial de mantenimiento y peticiones de soporte de los usuarios es una autntica pesadilla logstica. Un fallo o descuido puede resultar en montaas de trabajo adicionales para su resolucin o, incluso, prdida de clientes y volumen de negocio No sera agradable almacenar todos estos detalles en una nica base de datos a la cual pudiramos acceder a travs de una interfaz unificada y amigable? Es justo lo que te traemos en el nmero de octubre de Linux Magazine.

A LA VENTA: OCTUBRE 2009


98
Nmero 52
WWW.LINUX- MAGAZINE.ES

You might also like