Está en la página 1de 5

PORTADA Virtual Box con LDAP

Cambiando la forma de autenticacin de VirtualBox de PAM a LDAP

UN PORTERO DIFERENTE
Los administradores especializados en la virtualizacin centralizada de escritorios llevan tiempo frustrados con la carencia de mecanismos de autenticacin sofisticados para VirtualBox. El nuevo proyecto vrdp-ldap ofrece ahora autenticacin basada en LDAP para las instancias de VirtualBox en la red. POR MICHAEL KROMER Y MARKUS FEILNER

irtualBox [1], una herramienta diseada para los usuarios finales de los escritorios Linux, Windows, FreeBSD y Solaris, est cambiando sus miras para convertirse en un sistema de virtualizacin basado en servidor. En la versin 3.1, Sun present la migracin en vivo de mquinas virtuales, llamndolas Teleportacin.

Ahora que Sun ha sido absorbida por Oracle y ha salido la versin 3.2, Oracle VM VirtualBox tambin virtualiza Mac OS X en mquinas que no son de Apple (vase el cuadro titulado Mac OS sin un Mac). Adems, la versin 3.2. ofrece cach de E/S configurable y NAT, conexin de CPU en caliente, aceleracin de vdeo RDP (Remote Destk-

top Protocol) desafortunadamente slo funciona para clientes Windows 7 as como mltiples vistas. La virtualizacin de escritorios remotos basadas en servidor utiliza la versin de VirtualBox del protocolo RDP, familiar en entornos de servidores de terminal. Por desgracia, RDP slo est disponible en la versin comercial de

Mac OS sin un Mac


A partir de VirtualBox 3.2, puede virtualizar el sistema operativo Apple con cualquier hardware en una ventana de Linux. Esto es posible emulando el entorno de arranque Extensible Firmware Interface (EFI), como con KVM (Figura 1). Una advertencia: Los Trminos de Uso de Apple prohben la instalacin de Mac OS en hardware que no sea Apple, aunque la compaa de Steve Jobs venda OS X sin hardware en sus tiendas. (Si esta prohibicin le llevar o no a los tribunales del pas donde reside es una cuestin diferente). VirtualBox hace ms fcil virtualizar Apple creando una mquina nueva, seleccionando Mac OS Server y definiendo un controlador de disco duro tipo ICH6. Para arrancar Leopard, ahora necesita el comando correcto VBoxManage (y la clave del dispositivo SMC de Internet). El usuario tambin necesita deshabilitar las funciones de administracin de energa de Apple para que el sistema operativo se ejecute bien. En el transcurso del trabajo de desarrollo de Red Hat Enterprise Virtualization (RHEV), Red Hat ha lanzado ms redes paravirtualizadas y drivers de almacenamiento para ejecutar sistemas Windows en KVM [4]. Adems, la versin 5.3 de Red Hat Enterprise Linux (RHEL) o superiores cargan automticamente los controladores KVM paravirtualizados, eliminando la necesidad de atencin manual del administrador. Gracias a los drivers virtuales de E/S en el sistema invitado, el rendimiento es ligeramente inferior a la velocidad de acceso al host nativo, mientras que los drivers emulados ralentizan considerablemente el sistema. De paso, los sistemas invitados Windows XP no soportan bloques de drivers paravirtualizados (virtio block driver), slo drivers de red.

18

Nmero 66

WWW.LINUX- MAGAZINE.ES

PORTADA Virtual Box con LDAP

Figura 1: KVM se mantiene al da; una versin antigua del sistema operativo de Apple.

Figura 2: Tras configurar vrdp-ldap, puede configurar cada mquina virtual para que VirtualBox autentique los clientes VRDP mediante LDAP.

VirtualBox, pero afortunadamente, la licencia de uso personal y evaluacin (PUEL) [2] permite a los usuarios privados y a los centros educativos la oportunidad de usar la versin propietaria sin tener que pagar las licencias. Uno de los problemas con la virtualizacin basada en servidor de VirtualBox surge cuando se utiliza el protocolo de escritorio remoto de VirtualBox (VRDP) para la autenticacin contra una mquina virtual activa. La solucin comn basada en la autenticacin PAM slo permite la autenticacin de un usuario en un host especfico, y ste tiene que ser el usuario que ejecut la mquina virtual en el servidor del VirtualBox. Si el usuario se cambia a otro ordenador cliente RDP, la autenticacin PAM no funcionar. Los administradores que deseen abstraer a sus usuarios de los hosts, tendrn que desactivar PAM e intentar restringir el acceso al puerto VRDP con el cortafuegos. Las deficiencias de esta solucin piden a gritos un mtodo alternativo. El proyecto vrdp-ldap [3] surgi en julio para implementar un mdulo de autenticacin de VirtualBox basado en LDAP (Lightweight Directory Access Protocol). Vrdp-ldap extiende un esquema existente LDAP aadindole una clase objeto y una propiedad que soporte la autenticacin orientada al usuario por medio de la UUID del equipo. Como vrdp-ldap utiliza los atributos de directorios existentes de PAM, la solucin vrdp-ldap proporciona un mtodo de autenticacin transparente contra servicios de directorio existentes con las credenciales de conexin del usuario.

Paso a Paso
En [4] se encuentran disponibles los paquetes RPM listos para instalarse de openSUSE 11.2 y SUSE Linux Enterprise Server (SLES) 11. Los administradores de otros sistemas tendrn que compilarlos desde el cdigo fuente con configure/make/make install . La compilacin manual actualmente implica disponer de los paquetes libHX, pam-devel, openldap2devel y pkg-config (casi todas las distribuciones ms conocidas proporcionan estos paquetes). El procedimiento para configurar una mquina virtual con autenticacin VRDP basada en LDAP consta de cinco pasos en el sistema host VirtualBox: 1. Instalar el plugin vrdp-ldap. 2. Configurar una librera VRDP para VirtualBox. 3. Modificar el esquema LDAP. 4. Modificar la mquina virtual. 5. Extender las cuentas de usuario LDAP aadindole el identifica dor nico universal (UUID) para las mquinas virtuales de los usuarios que vayan a acceder. El plugin se instala fcilmente en openSUSE 11.2:
zypper ar U http://repo.medozas.de/U medozas/SUSE-11.2/U medozas.repo zypper in VirtualBox-vrdp-ldap VBoxManage setproperty U vrdpauthlibrary/usr/lib/U virtualbox/vrdp-ldap

En sistemas de 64-bits, hay que ser root y teclear lo siguiente desde la lnea de comandos:
VBoxManage setproperty s vrdpauthlibrary U /usr/lib64/virtualbox/vrdp-ldap

El nombre del mdulo no tiene extensin de fichero como .so o .dll, que viene bien porque la autenticacin VRDP le permitir utilizar la misma configuracin en diferentes hosts y sistemas operativos. Aunque actualmente no existe un mdulo para Windows de vrdp-ldap, se espera que est disponible en unos meses. El Listado 1 muestra el fichero de configuracin de vrdp-ldap, que necesita el administrador para modificarlo de modo que coincida con el servidor local de LDAP. El siguiente paso consiste en extender el servidor LDAP aadiendo /usr/share/doc/ packages/VirtualBox-vrdp-ldap/ vbox-vrdp.schema. El cuarto paso, modificar las mquinas virtuales, es fcil si se sigue la captura de pantalla de la Figura 2.

Listado 1: /etc/vrdpldap.conf
01 CHECK_UUID=yes 02 CHECK_PAM=yes 03 PAM_SERVICE=sshd 04 LDAP_URI=ldap://localhost/ 05 BASE_DN=dc=company,dc=com 06 #BIND_DN= 07 #BIND_PW=

20

Nmero 66

WWW.LINUX- MAGAZINE.ES

PORTADA Virtual Box con LDAP

Una Entrada por Usuario


Para el sistema host, el esquema del Listado 2 muestra un usuario estndar en LDAP que proporciona acceso VRDP a dos instancias virtuales. Necesita una entrada LDAP separada para cada usuario e invitado. Los desarrolladores estn pensando implementar una especie de soporte comodn, donde el asterisco (*) permite al usuario acceder a cualquier mquina virtual. El escoger la herramienta LDAP para crear el usuario es una cuestin de gustos, siempre y cuando se pueda consultar el esquema esto es, identificar el VBoxVRDP como una clase objeto y VBoxVRDPUUID como una propiedad. Tanto GQ [5] como LDAP Admin [6] son dos buenas opciones. El VBoxVRDPUUID mostrado en el Listado 2 representa el UUID del equipo para la mquina virtual. Lamentablemente, slo puede ver el UUID del equipo en los ficheros XML para la VM o llamando a VBoxManage list no en la GUI. Una peticin caracterstica para ver el UUID en la GUI de VirtualBox ya se ha publicado en [7].

apague ( VBoxMaListado 2: Usuario LDAP con Acceso VRDP nage controlvm 01 dn: uid=mkromer,ou=users,dc=linux-magazin,dc=de savestate). 02 cn: mkromer Cuando reinicie, el sistema de eva03 uid: mkromer luacin inmedia04 mail: medozas@medozas.de tamente le propor05 objectClass: top cionar a los usuarios sus 06 objectClass: person entornos, asu07 objectClass: inetOrgPerson miendo que no ha 08 objectClass: posixAccount habido cambios 09 objectClass: VBoxVRDP en la configuracin de 10 VBoxVRDPUUID: la mquina virtual {3f7d197f-072a-4bf9-9528-aebefdfa2a2e} (tarjetas de red, 11 VBoxVRDPUUID: etc.) desde que el {af4bed3e-f94e-48f8-ba1e-6c7c504b38ca} sistema se ha reiniciado. vrdp-ldap, el nuevo portero para entorPara configurar el script inicial necenos LDAP, implica que VirtualBox est sita crear un usuario y hacer que dicho ms preparado que nunca para los usuario sea miembro del grupo vboxuentornos de servidor. I sers . Tambin necesita aadir el nombre de la mquina virtual definida, incluyendo el nmero del puerto RECURSOS VRDP y la prioridad del proceso (valor [1] Oracle VM VirtualBox: http:// nice), para el fichero autostart . El Lisvirtualbox.org tado 3 muestra los comandos para [2] VirtualBox Personal Use y Licencia openSUSE.

Script Init
El equipo de virtualizacin formado por LDAP y VirtualBox le permite a los usuarios utilizar Rdesktop o cualquier otro terminal RDP para configurar una conexin utilizando sus credenciales de registro:
rdesktop -u LDAP-user -p U password_or_-_for_prompt U VirtualBox-Host-IPU:VRDP-Port

Contagioso
Oracle lanza una nueva versin de VirtualBox una vez al mes. Sobre la base de las nuevas caractersticas aadidas desde la versin 3.1 y los resultados positivos de los test de E/S [9], es casi seguro que Oracle est intentando hacer un hbrido entre virtualizacin de escritorios y servidores con capacidad de asumir la carga de operaciones que funcionan 24 horas al da los 7 das de la semana. Unas cuantas cuestiones requieren atencin, tales como el driver USB para la Blackberry o la gestin de interrupciones en sistemas con mltiples ncleos (la comunicacin IO/APIC de algunos invitados hace que la carga de CPU suba [10]). Pero sobre todo, VirtualBox est tomando posiciones y

Con el material presentado hasta el momento puede configurar su propio servidor VirtualBox con vrdp-ldap. Es una buena idea utilizar un script de inicio especial [8]. El script congela todas las mquinas virtuales definidas en el fichero autostart a fin de salvar el estado actual para cuando el host se

de Evaluacin: http://www. virtualbox.orgwiki/VirtualBox_PUEL [3] vrdp-ldap: http://vrdp-ldap.sf.net [4] Paquetes SUSE RPM: http://repo. medozas.de/medozas [5] GQ: http://sourceforge.net/projects/ gqclient/ [6] LDAP Admin: http://ldapadmin. sourceforge.net [7] Solicitud para ver el UUID en la GUI de VirtualBox: http://virtualbox.org/ ticket/6989 [8] Script Init: http://dev.medozas.de/ files/VirtualBox [9] Tests de E/S con imgenes de disco VirtualBox antes y despus de la versin 3.2: http://virtualbox.org/ ticket/4392 [10] Corrupcin de datos bajo una gran carga de E/S: http://virtualbox.org/ ticket/2524

Listado 3: Enlanzando con el Script Init


01 useradd -c VirtualBox User -d /virt -m -r -g vboxusers virt 02 wget http://dev.medozas.de/files/VirtualBox/virtualbox.init.suse -O /etc/init.d/virtualbox 03 chmod a+x /etc/init.d/virtualbox 04 wget http://dev.medozas.de/files/VirtualBox/virtualbox.autostart.suse -O /virt/autostart 05 insserv virtualbox on

22

Nmero 66

WWW.LINUX- MAGAZINE.ES

También podría gustarte