En informática , SPICE (el protocolo simple para entornos informáticos independientes ) es un sistema de visualización remota creado para entornos virtuales que permite a los usuarios ver un entorno informático de "escritorio" , no solo en su máquina servidor de computadora, sino también desde cualquier lugar del Internet : utilizando una amplia variedad de arquitecturas de máquinas .
Autor (es) original (es) | Qumranet |
---|---|
Desarrollador (es) | sombrero rojo |
Lanzamiento estable | |
Escrito en | C , C ++ |
Sistema operativo | Linux , Windows , Android (cliente) |
Tipo | Servidor, cliente |
Licencia | GPL , LGPL y BSD |
Sitio web | spice-space.org |
Qumranet desarrolló originalmente SPICE utilizando un código base de código cerrado en 2007. Red Hat, Inc adquirió Qumranet en 2008, y en diciembre de 2009 lanzó el código bajo una licencia de código abierto y convirtió el protocolo en un estándar abierto. [4] [5]
Seguridad
Una conexión de cliente SPICE a un servidor de escritorio remoto consta de varios canales de datos, cada uno de los cuales se ejecuta a través de una conexión de socket TCP o UNIX independiente. Se puede designar un canal de datos para que funcione en modo de texto sin cifrar o TLS , lo que permite al administrador compensar el nivel de seguridad con el rendimiento. El modo TLS proporciona un cifrado sólido de todo el tráfico transmitido en el canal de datos.
Además del cifrado, el protocolo SPICE permite una selección de esquemas de autenticación. El protocolo SPICE original definía un esquema de autenticación basado en tickets utilizando un secreto compartido. El servidor generaría un RSA par de claves pública / privada y envía su clave pública al cliente. El cliente cifraría el ticket (contraseña) con la clave pública y enviaría el resultado al servidor, que descifraría y verificaría el ticket. El protocolo SPICE actual también permite el uso del protocolo de autenticación SASL , lo que permite el soporte para una amplia gama de mecanismos de autenticación configurables por el administrador, en particular Kerberos .
Implementaciones
Si bien solo existe una implementación de servidor, varios programadores han desarrollado nuevas implementaciones del lado del cliente de SPICE desde el código abierto de SPICE.
- protocolo de especias
- El módulo de protocolo de especias [6] define los formatos de protocolo de cable de SPICE. Está disponible bajo la licencia BSD y es portátil en las plataformas Linux y Windows.
- especia
- El módulo de especias [7] proporciona la implementación de referencia para el lado del servidor del protocolo SPICE. El servidor se proporciona como una biblioteca dinámica que se puede vincular a cualquier aplicación que desee exponer un servidor SPICE. Como de 2013 [actualizar], QEMU utiliza esto para proporcionar una interfaz SPICE para máquinas virtuales. El código base de especias está disponible bajo la licencia LGPL v2 +.
- Una parte del cliente de la base de código de especias llamada spicec se eliminó en diciembre de 2014.
- spice-gtk
- El módulo spice-gtk [8] implementa un cliente SPICE usando el sistema de tipos GObject y el kit de herramientas del widget GTK . Esto comprende una biblioteca de bajo nivel, spice-client-glib, que implementa el código de protocolo del cliente, y un conjunto de widgets de alto nivel que proporcionan una capacidad gráfica de cliente usando GTK. Está disponible bajo la licencia LGPLv2 + y es portátil en las plataformas Linux, OS X y Windows.
- spice-html5
- El módulo spice-html5 [9] implementa un cliente SPICE que usa JavaScript y está diseñado para ejecutarse dentro de un navegador web compatible con HTML5 . Si bien implementa el protocolo SPICE, no puede comunicarse directamente con un servidor SPICE normal. Debe conectarse al servidor indirectamente a través del proxy WebSocket . [10] Está disponible bajo una combinación de las licencias GPLv3 + y LGPLv3 +.
Aplicaciones
El protocolo SPICE se originó para proporcionar capacidades mejoradas de escritorio remoto en una bifurcación de la base de código KVM.
- QEMU / KVM
- Los mantenedores de QEMU fusionaron el soporte para proporcionar capacidades de escritorio remoto SPICE para todas las máquinas virtuales de QEMU en marzo de 2010. Los enlaces binarios de QEMU a la biblioteca del servidor de spice para proporcionar esta capacidad e implementa el dispositivo framebuffer paravirtualizado QXL para permitir que el sistema operativo invitado aproveche los beneficios de rendimiento que ofrece el protocolo SPICE. El sistema operativo invitado también puede utilizar una tarjeta VGA normal, aunque con un rendimiento degradado en comparación con QXL.
- Xspice
- El controlador del servidor X.Org para el dispositivo framebuffer QXL incluye un script de envoltura [11] que hace posible iniciar un servidor Xorg cuya pantalla se exporta a través del protocolo SPICE. Esto permite el uso de SPICE en un entorno de escritorio remoto, sin necesidad de virtualización QEMU / KVM.
- virt-viewer
- El
virt-viewer
programa usa la biblioteca cliente spice-gtk para conectarse a máquinas virtuales usando SPICE, como una alternativa a su soporte anterior para VNC . - oVirt
- SPICE está integrado en el software de administración de nube privada oVirt , lo que permite a los usuarios conectarse a máquinas virtuales a través de SPICE.
Ver también
- Virtualización de Red Hat
- Software de gráficos remotos de HP
Referencias
- ^ Lureau, Marc-André (3 de julio de 2017). "ANUNCIO: lanzamiento del protocolo de especias 0.12.13" . spice-devel (lista de correo).
- ^ Fergeau, Christophe (22 de agosto de 2018). "Anunciando especias 0.14.1" . spice-devel (lista de correo).
- ^ Lureau, Marc-André (31 de julio de 2017). "ANUNCIO: spice-gtk v0.34 lanzado" . spice-devel (lista de correo).
- ^ "SPICE de fuentes abiertas de Red Hat" . Red Hat . Consultado el 25 de octubre de 2013 .
- ^ "Sitio web del proyecto" . spice-space.org . Consultado el 25 de diciembre de 2019 .
- ^ "repositorio GIT de protocolo de especias" . cgit.freedesktop.org . Consultado el 25 de octubre de 2013 .
- ^ http://cgit.freedesktop.org/spice/spice/ repositorio GIT de especias
- ^ "repositorio GIT spice-gtk" . cgit.freedesktop.org. 2013-10-10 . Consultado el 25 de octubre de 2013 .
- ^ "repositorio GIT spice-html5" . cgit.freedesktop.org . Consultado el 25 de octubre de 2013 .
- ^ https://github.com/kanaka/websockify Servidor proxy WebSockify
- ^ "XSpice README" . cgit.freedesktop.org . Consultado el 25 de octubre de 2013 .
enlaces externos
- Página web oficial
- Protocolo SPICE