Guacamole é uma aplicação web HTML5 que fornece acesso a ambientes de desktop usando protocolos de desktop remoto (como o VNC ou RDP). Escrito em JavaScript e usando apenas HTML5 e outros padrões, a parte do cliente do Guacamole requer nada mais do que um navegador moderno ou dispositivo habilitado para web ao acessar qualquer um dos desktops. Historicamente, Guacamole era um cliente de VNC HTML5, e antes disso, um cliente Telnet JavaScript chamado RealMint ( “RealMint” é um anagrama para “terminal”). Neste post utilizaremos o Debian 8 64 bits e servidor tomcat 7.
Neste post realizaremos a baixa do pacote diretamente do site do projeto, assim como, sua instalação e configuração. Acompanhe os passos abaixo.
Instalação
Inicialmente precisamos instalar o servidor tomcat7, segue comando de instalação.
# apt-get install tomcat7 |
Após instalar o servidor Apache Tomcat, baixaremos o source do Guacamole Server.
# wget -c http://sourceforge.net/projects/guacamole/files/current/source/guacamole-server-0.9.9.tar.gz |
Descompactando o arquivo baixado, com o comando abaixo:
# tar -xzvf guacamole-server-0.9.9.tar.gz |
Agora instalaremos as dependências necessárias:
# apt-get install build-essential libfreerdp-dev libpango1.0-dev libssh2-1-dev libtelnet-dev libvncserver-dev libpulse-dev libssl-dev libvorbis-dev libwebp-dev libossp-uuid-dev |
Após instalar as dependências, entre na pasta do Guacamole Server que foi descompactada:
# cd guacamole-server-0.9.9 |
Iniciaremos agora a configuração, compilação e instalação do Guacamole Server :
# ./configure --with-init-dir=/etc/init.d/ |
Finalizamos por aqui o Guacamole Server.
Guacamole Cliente
Ao concluir a instalação do Guacamole Server, partiremos para a configuração do Guacamole cliente, onde temos dois métodos de configurar:
Método 01
Para começar baixe o source do Guacamole cliente:
# wget -c http://sourceforge.net/projects/guacamole/files/current/source/guacamole-client-0.9.9.tar.gz |
Descompacte o arquivo baixado com o comando abaixo:
# tar -xzvf guacamole-client-0.9.9.tar.gz |
Acesse o arquivo descompactado:
# cd guacamole-client-0.9.9 |
Agora para compilar será necessário instalar a ferramenta de compilação para projetos java, o Maven e também o Java JDK. Execute o comando abaixo:
# apt-get install maven openjdk-7-jdk |
Após a instalação do Mave, execute o comando abaixo para iniciar a compilação.
# mvn package |
Após a compilação, copie o arquivo guacamole-0.9.9.war, gerado pela compilação para a pasta webapps do Tomcat. Execute o comando abaixo:
# cp guacamole/target/guacamole-0.9.9.war /var/lib/tomcat7/webapps/ |
Método 02
No primeiro método precisamos compilar o source do Guacamole cliente para gerarmos o binário guacamole-0.9.9.war, agora neste método baixaremos a aplicação web guacamole-0.9.9.war disponibilizado pelo projeto. Execute o comando abaixo para realizar o download.
# wget -c http://sourceforge.net/projects/guacamole/files/current/binary/guacamole-0.9.9.war |
Copie ou mova o arquivo baixado para a pasta Webapps do Tomcat, segue comando:
# cp guacamole-0.9.9.war /var/lib/tomcat7/webapps/guacamole.war |
Pronto! Esse foi o segundo método, fácil não? Agora precisamos criar a pasta de configurações do Guacamole, execute o comando abaixo:
# mkdir /etc/guacamole |
Acesse a pasta criada e crie o arquivo guacamole.properties, onde definiremos: Porta, Localização dos jars e arquivo xml de permissão de acesso.
# cd /etc/guacamole/ |
Abra o arquivo:
# vim /etc/guacamole/guacamole.properties |
E adicione o conteúdo abaixo:
# Hostname and port of guacamole proxy |
Precisamos criar uma pasta oculta chamada .guacamole em que linkaremos com o arquivo de configuração guacamole.properties para que o tomcat tenha acesso as configurações. Segue os comandos:
# mkdir /usr/share/tomcat7/.guacamole/ |
Agora configuraremos o acesso de usuários e conexões remota aos hosts. Crie o arquivo user-mapping.xml com o comando abaixo:
# touch /etc/guacamole/user-mapping.xml |
Abra o arquivo criado:
# vim /etc/guacamole/user-mapping.xml |
E adicione o conteúdo abaixo:
<user-mapping> |
Observe no conteúdo adicionado anteriormente, temos na segunda linha o usuário e senha que terá acesso pelo navegador e na TAG
# ln -s /usr/local/lib/libguac.so\* /lib |
E por fim, inicie o Tomcat e o Guacamole:
# /etc/init.d/tomcat7 start |
Acesse agora o Guacamole pelo navegador http://ipdoseuservidor:8080/guacamole/, troque o ipdoseuservidor conforme ip do seu servidor, mas mantenha a porta 8080. Ao acessar será solicitado o usuário e senha, que foram definidos no arquivo user-mapping.xml.
Veja na imagem abaixo as conexões existentes:
Quando conectado um vez, um thumbnail ficará disponível nas conexões recentes (Acho muito legal isso!). Para adicionar mais hosts, adicione-o no arquivo user-mapping.xml fornecendo uma nova tag <conection name="host">
Bom pessoal é isso, caso tenha alguma dúvida deixe nos comentários. Para conhecer mais sobre o projeto e novas funcionalidades acesse http://guacamole.incubator.apache.org.