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. INSTALAÇÃO Inicialmente precisamos instalar o servidor tomcat7, segue comando de instalação. https://opensourcesolution.com.br/ 1
# 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- https://opensourcesolution.com.br/ 2
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/ # make && make install # ldconfig Finalizamos por aqui o Guacamole Server. https://opensourcesolution.com.br/ 3
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: 1º MÉTODO 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: https://opensourcesolution.com.br/ 4
# 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 https://opensourcesolution.com.br/ 5
/var/lib/tomcat7/webapps/ 2º MÉTODO 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? https://opensourcesolution.com.br/ 6
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/ # touch /etc/guacamole/guacamole.properties Abra o arquivo: # vim /etc/guacamole/guacamole.properties E adicione o conteúdo abaixo: https://opensourcesolution.com.br/ 7
# Hostname and port of guacamole proxy guacd-hostname: localhost guacd-port: 4822 # Location to read extra.jar's from lib-directory: /var/lib/tomcat7/webapps/guacamole/web- INF/classes # Authentication provider class auth-provider: net.sourceforge.guacamole.net.basic.basicfileauthenticationpro vider # Properties used by BasicFileAuthenticationProvider basic-user-mapping: /etc/guacamole/user-mapping.xml 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/ https://opensourcesolution.com.br/ 8
# ln -s /etc/guacamole/guacamole.properties /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> <authorize username="jackson" password="123"> https://opensourcesolution.com.br/ 9
<!-- First authorized connection --> <connection name="vnc"> <protocol>vnc</protocol> <param name="hostname">192.168.1.110</param> <param name="port">5901</param> <param name="password">123456</param> </connection> <!-- Second authorized connection --> <connection name="rdp"> <protocol>rdp</protocol> <param name="hostname">192.168.1.111</param> <param name="port">3389</param> <param name="password">123456</param> </connection> </authorize> </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 <conection name= > os hosts que será acessado remotamente. Precisamos das bibliotecas na pasta /lib, execute o comando abaixo para criar links de acesso: https://opensourcesolution.com.br/ 10
# ln -s /usr/local/lib/libguac.so* /lib # ln -s /usr/local/lib/libguac-client-vnc.so* /lib/ E por fim, inicie o Tomcat e o Guacamole: # /etc/init.d/tomcat7 start # /etc/init.d/guacd 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. https://opensourcesolution.com.br/ 11
abaixo as conexões existentes: Veja na imagem 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 https://opensourcesolution.com.br/ 12
fornecedo 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. Ajude-nos a manter o site, realize uma doação clicando no botão abaixo: Gostou? Então compartilhe! https://opensourcesolution.com.br/ 13