User Tools

Site Tools


virtualisation:guacamole-x11vnc

Guacamole: X11VNC

Guacamole est une application Web HTML5 qui permet d'accéder à un bureau à l'aide de protocoles de bureau à distance. Un serveur centralisé agit comme un tunnel et un proxy, permettant d'accéder à plusieurs bureaux via un navigateur Web. pas de plugins nécessaires. Le client ne nécessite rien de plus qu'un navigateur Web prenant en charge HTML5 et AJAX.

Installer des paquets

sudo aptitude install guacamole-tomcat
sudo aptitude install libguac-client-ssh0 libguac-client-rdp0
cd /etc/guacamole
sudo cp user-mapping.xml user-mapping.xml.orig

Modifier le fichier user-mapping.xml

user-mapping.xml

<user-mapping>
    
    <! - Utilisateur avec une seule connexion ->
    <authorize username="USERNAME" password="PASSWORD">
        <protocol>vnc</protocol>
        <param name="hostname">localhost</param>
        <param name="port">5900</param>
        <param name="password">VNCPASS</param>
    </authorize>
    <! - Un autre utilisateur, mais utilisant md5 pour hacher le mot de passe
         (l'exemple ci-dessous utilise le hash md5 de "PASSWORD"),
         Et fournissant deux connexions ->
    <authorize 
            username="USERNAME2"
            password="319f4d26e3c536b5dd871bb2c52e3178"
            encoding="md5">
                <connection name="VNC Desktop 1">
                    <protocol>vnc</protocol>
                    <param name="hostname">localhost</param>
                    <param name="port">5901</param>
                    <param name="password">VNCPASS</param>
                </connection>
                <connection name="VNC Desktop 2">
                    <protocol>vnc</protocol>
                    <param name="hostname">localhost</param>
                    <param name="port">5902</param>
                    <param name="password">VNCPASS</param>
                </connection>
	<connection name="RDP Desktop">
	  <protocol>rdp</protocol>
	  <param name="hostname">localhost</param>
	  <param name="port">3389</param>
	  <param name="domain"></param>
	  <param name="username"></param>
	  <param name="password"></param>
	  <!-- <param name="initial-program">explorer.exe</param> -->
	  <param name="color-depth">32</param><!-- 8,16,24 or 32 -->
	  <param name="width">1024</param>
	  <param name="height">768</param>
	</connection>
        <connection name="Unique Name">
          <protocol>ssh</protocol>
          <param name="hostname">localhost</param>
          <param name="port">22</param>
        </connection>
    </authorize>
</user-mapping>

Générer le mot de passe md5

echo -n 'PASSWORD' | md5sum

Redémarrer le démon Guacamole

sudo service guacd restart

Installer le serveur VNC sur le client Guacamole

sudo aptitude install vnc4server

Lancer la VM avec un mot de passe vnc

kvm image -vnc ${dpy},password -monitor stdio
(qemu) set_password vnc password

guacamole.properties

#    Guacamole - Clientless Remote Desktop
#    Copyright (C) 2010  Michael Jumper
#
#    This program is free software: you can redistribute it and/or modify
#    it under the terms of the GNU Affero General Public License as published by
#    the Free Software Foundation, either version 3 of the License, or
#    (at your option) any later version.
#
#    This program is distributed in the hope that it will be useful,
#    but WITHOUT ANY WARRANTY; without even the implied warranty of
#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#    GNU Affero General Public License for more details.
#
#    You should have received a copy of the GNU Affero General Public License
#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
# Hostname and port of guacamole proxy
guacd-hostname: localhost
guacd-port:     4822
# Auth provider class (authenticates user/pass combination, needed if using the provided login screen)
auth-provider: net.sourceforge.guacamole.net.basic.BasicFileAuthenticationProvider
basic-user-mapping: /etc/guacamole/user-mapping.xml
virtualisation/guacamole-x11vnc.txt · Last modified: 2025/02/19 10:59 by 127.0.0.1