Suporte Remoto com o VNC e UltraVNC

Publicado por mpperes em 06-Mar-2007 22:00 (27454 leituras)

A maioria das aplicações de tecnologia e informática, requer eventualmente suporte técnico corretivo ou de forma programada o suporte técnico preventivo com o VNC. Mas o tempo de deslocamento ao local juntamente com o tempo necessário a manutenção, muitas vezes acaba prejudicando outras atividades. Os recursos de informatica a um bom tempo permitem de forma simples resolver esta questão através de conexões remotas. Existem vários sistemas no mercado, dependendo do sistema operacional e do tipo de conexão disponível.

Imagine a situação onde estamos elaborando o projeto de um sistema de CFTV em uma determinada região e temos um outro cliente situado em uma cidade a 120 km de distância com problemas no seu sistema previamente instalado.

O que fazer? Interromper a nova instalação se deslocar até o local para atender o cliente com problemas? Acionar outra pessoa para atender o cliente? Agendar uma visita para o próximo horário disponível? Normalmente está seria a opção mais indicada, porém em muitos casos vários problemas simples podem ser facilmente resolvidos através de uma conexão remota.

Até mesmo nos problemas mais comuns, que nos deparamos ao tentar ajudar um cliente, via telefone ou messenger, é difícil entender o que realmente está acontecendo. O usuário prontamente nos dá informações do tipo “meu PC está travando”, “Não está funcionando”, “Não estou conseguindo abrir o programa”, que normalmente não ajudam muito. O usuário muitas vezes não se dá conta que não estamos visualizando a tela do seu monitor e por isso fica difícil entender exatamente o problema e buscar uma solução. Normalmente seria necessário o deslocamento fisico até o local para solução do problema, desta necessidade surgiram os softwares de conexão remota (terminais), que permitem o acesso a computadores e servidores remotos a partir de uma conexão de internet ou até mesmo discada. Outro exemplo seria quando estamos em viagens e precisamos acessar alguma maquina remota para suporte ou execução de alguma tarefa.

Existem diversos aplicativos comerciais para administração remota, como o PCAnywhere, Radmin, Logmein, entre outros, mas um dos mais populares é o VNC, que permite o acesso a um computador remoto, disponibilizando a visualização da tela e controle do teclado e mouse, tendo a grande vantagem de ser gratuíto. O VNC pode ser usado tanto para acessar PCs ligados em uma rede local, quanto via Internet. O VNC será o objeto deste nosso artigo.

Obviamente nem todos os problemas poderão ser resolvidos através de conexões remotas, principalmente se relacionados a hardware ou a componentes da rede, mas muitos outros problemas mais simples como configurações alteradas, parâmetros incorretos, atualizações, desbloqueios poderão ser perfeitamente solucionados. Além disso, nada melhor que acessar o servidor do cliente e fazer um análise prévia do problema que está ocorrendo, antes do deslocamento. Desta forma é possível ter uma preparação adequada de forma a visitar o cliente devidamente equipado com os drivers, programas, atualizações e ferramentas necessárias. Assim como ter a oportunidade de pesquizar possíveis soluções para o problema, na internet ou consultando o suporte técnico do fornecedor, preparando-se mesmo antes do deslocamento ao local.

 

O que é o VNC?

Virtual Network Computing (Computação Virtual em Rede ou somente VNC) é um protocolo desenvolvido para permitir o controle de interfaces gráficas remotas. Através deste protocolo um usuário pode se conectar a um computador remoto, e utilizar as suas funcionalidades visuais como se estivesse sentado em frente ao mesmo. Permitindo o controle do teclado e mouse, além da visualização da tela a partir do computador remoto, utilizando os recursos dos protocolos de rede TCP/IP.

O VNC possui uma plataforma totalmente independente — um VNC cliente instalado em qualquer sistema operacional pode conectar a um VNC servidor em qualquer outro sistema operacional. Existem várias versões disponíveis para praticamente todos os principais sistemas operacionais e também para Java. Múltiplos clientes podem conectar ao mesmo server VNC ao mesmo tempo. Esta tecnologia é amplamente utilizada em suporte técnico de informática, acesso remoto, além de integração entre diferentes plataformas.

Foi desenvolvido originalmente pela AT&T. O Código Fonte original do VNC e muitas versões atuais derivadas são distribuidas como código aberto dentro da licença GNU General Public License.

Veja mais sobre o licenciamento em http://pt.wikipedia.org/wiki/GNU_General_Public_License.

 

História

O VNC foi criado nos laboratórios da Olivetti & Oracle Research Lab, posteriormente adquirida pela Olivetti e Oracle Corporation. Em 1999 a AT&T comprou o laboratório, e em 2002 fechou os trabalhos de pesquisa do mesmo.

O nome tem origem em um terminal de rede assíncrono (thin cliente asynchronous transfer mode – ATM) chamado Videotile, que era basicamente um LCD com uma entrada de caneta e uma conexão rápida ATM com a rede. O VNC é essencialmente uma versão via software deste “Terminal de Rede ATM”. Alguns dos desenvolvedores do VNC incluem Tristan Richardson, Quentin Stafford-Fraser, James Weatherall, Ken Wood, Andy Hopper, Charlie McLachlan e Paul Webster.

 

Vantagens do VNC

  • O VNC é totalmente gratuito.
  • Múltiplos usuários podem estar conectados ao mesmo desktop, sendo uma ótima alternativa para treinamento mesmo a distância (basta configurar o acesso com a opção “read only”).
  • Se a conexão cair, a sessão do VNC não é perdida. Basta reconectar e os aplicativos remotos estarão exatamente da forma que estavam antes da conexão cair.
  • Compatível com diversas plataformas, tanto o servidor como o cliente VNC são extremamente pequenos, tanto para Windows, Linux, Unix, etc.
  • Algumas versões possuem visualização por cliente em Java, ou seja basta possuir um browser para acessar o servidor remoto.

 

Como Funciona o VNC

O VNC é um aplicativo com arquitetura Cliente x Servidor (Cliente/Server) ou seja é composto por dois softwares, sendo o servidor instalado no computador que vai ser acessado remotamente e terá seus recursos compartilhados e no computador remoto teremos o software cliente (Client) que é o software destinado a visualizar e controlar os recursos do servidor.

Como funciona o VNC
Como funciona o VNC

O VNC possui um protocolo muito simples, baseado na reprodução de pequenos retângulos, em pontos de coordenada x e y específicadas. Esses retângulos são uma reprodução simplificada dos respectivos pontos que seriam apresentados na tela do servidor. Para reduzir a largura de banda utilizada na transferência desses retângulos, são utilizadas técnicas de codificação e compactação. Sendo o protocolo do VNC responsável por negociar entre o Cliente e Servidor o método mais eficiente a ser aplicado. A codificação mais simples, suportada por todas as versões e clientes, é a codificação bruta, ou seja não existe compactação, sendo a transmissão dos pixels em forma de varredura horizontal da tela da esquerda para direita de toda a tela na primeira transmissão, sendo que nas transmissões seguintes temos o envio apenas dos pixels que tiveram modificações desde a última amostragem. Este método funciona bem quando temos poucas alterações na tela, porém se tivermos grandes mudanças, a reprodução remota ficará extremamente pobre devido a grande largura de banda necessária.

O servidor do VNC usa como padrão a porta TCP 5900, e quando o servidor java está instalado a porta TCP 5800. Em sistemas Linux e Unix, temos a possibilidade de logar com várias seções distintas no mesmo servidor, cada uma com suas operações independentes das outras seções. Já os computadores com sistema operacional Windows podem somente abrir uma única seção, pois o Windows não possui as características de multissessões de usuários de sistemas baseados em UNIX.

 

Segurança no VNC

Por padrão o VNC não é um protocolo seguro. Apesar das senhas não serem transmitidas em texto puro (plain-text como no Telnet), um possível ataque por “brute force” poderia descobrir tanto a senha codificada como a chave de encriptação se for utilizado um sniffer dentro da rede. Brute Force Atack ou ataque por força bruta é a invasão ou acesso indevido por longa sequencia de tentativas. Por esta razão recomenda-se a utilização de uma senha forte com no mínimo 8 caracteres incluindo letras, números e caracteres especiais, para dificultar a descoberta dessas informações e consequente invasão.

Outro recurso prático de segurança, que pode ser implantado facilmente, é a troca da porta padrão, ou seja utilizar uma porta diferente da 5900/5800, dessa forma dificultamos a descoberta de nosso servidor VNC. Devemos sempre utilizar portas altas, preferencialmente acima da porta 10000, pois as portas altas muitas vezes são deixadas de lado em ataques de força bruta, devido ao longo tempo para sua descoberta. Poderiamos usar as portas 25901 e 25801 por exemplo.

Outra alternativa interessante, principalmente no Linux, é a utilização de tunel SSH, no qual é inserida uma camada adicional de segurança com uma encriptação bem mais eficiente. O Secure Shell ou SSH é, simultaneamente, um programa de computador e um protocolo de rede que permite a conexão com outro computador na rede, de forma a executar comandos de uma unidade remota. Possui as mesmas funcionalidades do TELNET, com a vantagem da conexão entre o cliente e o servidor ser criptografada. O VNC pode rodar dentro dos limites criados pelo túnel de segurança do SSH. O SSH é um protocolo nativo nos sistemas baseados e Unix como o Linux por exemplo, mas não tem suporte direto no Windows. Mas você pode encontrar um cliente gratuito disponível em  http://akson.sgh.waw.pl/~chopin/ssh/index_en.html e outro http://sshwindows.sourceforge.net/. Existem ainda alguns servidores e clientes SSH comerciais.

Veja mais sobre SSH no windows em:

http://www.jfitz.com/tips/ssh_for_windows.html

http://www.guiadohardware.net/dicas/ssh-windows.html

 

Distribuições do VNC

O projeto original do VNC não existe mais. Porém, existem vários projetos derivados, que seguem desenvolvendo o VNC, sendo o principal o RealVNC que é o primeiro derivado diretamente do VNC original. Nesses novos projetos diversos recursos foram melhorados, inúmeras funções foram adicionadas, assim como clientes e servidores para várias plataformas foram desenvolvidos. No entanto cada projeto tomou rumos próprios, sendo algumas gratuitas e outras não. Atualmente as três principais versões do VNC são o Real VNC, o Tight VNC e o Ultra VNC. A maioria das versões mantém uma compatibilidade básica entre sí, podendo por exemplo acessar um servidor do Real VNC utilizando o cliente do Ultra VNC.

Veja os links abaixo:

Distribuições do VNC
Distribuições do VNC

 

Real VNChttp://www.realvnc.com/

Tight VNChttp://www.tightvnc.com/

Ultra VNChttp://www.uvnc.com/

 

Existem várias outras Versões com características específicas como o Chicken of the VNC e ChromiVNC para Mac OS X, Helpdesk VNC, PalmVNC, OSXvnc, eSVNC entre outros.

Para utilização em ambiente misto Windows e Linux, recomendamos a utilização do Tight VNC, tem recursos bastante completos, além de uma melhor velocidade que o Real VNC por utilizar uma compactação baseada em Jpeg. Com o Tight VNC podemos ter qualquer tipo de plataforma integrada ou seja cliente Linux conectado a um servidor Windows, cliente Windows conectado em servidor Linux. Podemos por exemplo utilizar o Tight em nosso servidor Linux e acessa-lo através de máquinas Windows utilizando o Ultra VNC.

Para utilização em ambiente puramente Windows, ou seja, servidor e cliente Windows, a versão que mais se destaca, na nossa opinião opinião, é o Ultra VNC, pois agrega diversos recursos não disponíveis em outras versões, como transferência de arquivos, plugin de encriptação open-source completo, chat de texto, barra de ferramentas, reconexão automática, driver de vídeo, entre diversas outras, além de ser totalmente gratuito.

 

Instalando o UltraVNC

Até o momento da elaboração deste guia, a versão mais recente do UltraVNC é a 1.02. Esta será a versão que iremos utilizar para exemplificar a instalação, configuração e utilização do VNC. Para obter a versão mais atual do UltraVNC, acesse os links abaixo e faça o download.

http://www.uvnc.com/download/index.html

http://sourceforge.net/project/showfiles.php?group_id=63887

http://www.guiadocftv.com.br/modules/wfdownloads/singlefile.php?cid=4&lid=16

O arquivo de instalação do UltraVNC é completo, tem o Cliente, Servidor, Driver de Video e outras ferramentas, tudo em um único arquivo executável com aproximadamente 1,67MegaBytes. Durante o processo de instalação podemos selecionar cada item que será instalado, como veremos a seguir.

Infelizmente ainda não existem versões em português do UltraVNC, mas na página de desenvolvimento já está em andamento a tradução do Cliente que é o primeiro passo para uma tradução completa do aplicativo.

  1. Execute o arquivo de instalação.
Instalação do UltraVNC
Instalação do UltraVNC

2. Selecione o Idioma de instalação (Inglês é o mais recomendado) e clique em OK, para prosseguir.

Instalação do UltraVNC
Instalação do UltraVNC

3. Clique em Next na janela de apresentação.

Instalação do UltraVNC
Instalação do UltraVNC

4. Na próxima página é apresentada a licença de uso do software. Clique em Accept para concordar com os termos e em Next para prosseguir com a instalação.

Instalação do UltraVNC
Instalação do UltraVNC

5. Nesta tela são apresentadas as notas da versão, clique em Next para continuar.

Instalação do UltraVNC
Instalação do UltraVNC

6. Selecione a pasta (diretório) de destino, onde o UltraVNC vai ser instalado, e depois clique em Next para continuar

Instalação do UltraVNC
Instalação do UltraVNC

Clique em Browse para pesquisar as pastas do sistema e selecionar o diretório de destino manualmente. Você pode ainda digitar o nome da pasta de destino diretamente no campo.

 

7. Selecione os componentes que deverão ser instalados.

Instalação do UltraVNC
Instalação do UltraVNC

Existem algumas opções de instalação pré-configuradas:

 

Full Installation: Instala todos os componentes do UltraVNC, incluindo o cliente e servidor.

Server Only: Instala somente o servidor do UltraVNC, incluindo o Plugin de Encriptação DSM.

Viewer Only: Instala somente o cliente do UltraVNC e o Plugin de Encriptação DSM.

E ainda a Custom onde podemos escolher individualmente os componentes a instalar.

 

Definidos o tipo de instalação clique em Next para passar ao próximo passo.

 

  1. Selecione a pasta do Menu Iniciar onde os atalhos serão inseridos e clique em Next.
Instalação do UltraVNC
Instalação do UltraVNC
  1. Selecione as opções de instalação, conforme indicado abaixo
Instalação do UltraVNC
Instalação do UltraVNC

Neste passo podemos selecionar as seguinte opções de instalação e execução do UltraVNC,

  • Selecionar se o Servidor do UltraVNC deve ser registrado como um serviço do sistema, dessa forma irá rodar em segundo plano e não poderá ser finalizado diretamente. *
  • Seleciona se o servico do UltraVNC deve ser iniciado ou reiniciado. *
  • Seleciona se o MSLogon II deve ser configurado.
  • Define se as Propriedades do Administrador devem ser configuradas.
  • Define se as entradas antigas do UltraVNC no registro devem ser removidas.
  • Permite a criação de icones na área de trabalho para os aplicativos Cliente e Servidor.*
  • Seleciona se os arquivos com extensão .vnc devem ser associados com o UltraVNC viewer.*

* Indica as opções recomendadas

Uma vez definidas as opções desejadas, pressione Next para prosseguir com a instalação.

 

  1. Na janela seguinte é apresentado um resumo das opções configuradas nos passos para uma rápida conferência. Pressione Install para iniciar a cópia dos arquivos.
Instalação do UltraVNC
Instalação do UltraVNC
  1. Uma vez finalizada a cópia dos arquivos, a configuração dos serviços e a inserção das entradas no registro, serão apresentadas as notas da versão, clique em Next para prosseguir e finalmente em Finish para sair do utilitário de instalação.
Instalação do UltraVNC
Instalação do UltraVNC

Instalação do UltraVNC

Finalizando a Instalação do UltraVNC

"O sistema de CFTV não é aplicado somente com propósitos de segurança e vigilância, também é utilizado em outros campos como laboratórios de pesquisa, em escolas, empresas privadas, na área médica, pesquisa e monitoramento de fauna e flora, monitoramento de relevo, condições climáticas, controle de processos assim como nas linhas de produção de fábricas. Sendo por isso, um campo muito amplo e repleto de particularidades.<br />Atualmente também tem sido muito utilizado o termo Videomonitoramento.CFTV

Avalie esta notícia, mande seus comentários e sugestões. Encontrou alguma informação incorreta ou algum erro no texto?

Gostaria de sugerir alguma notícia ou entrar em contato, clique Aqui!

Importante: ‘Todos os Conteúdos divulgados decorrem de informações provenientes das fontes aqui indicadas, jamais caberá ao Guia do CFTV qualquer responsabilidade pelo seu conteúdo, veracidade e exatidão. Tudo que é divulgado é de exclusiva responsabilidade do autor e ou fonte redatora.’

Eng° Marcelo Peres

Eng° Eletricista Enfase em Eletrônica e TI, Técnico em Eletrônica, Consultor de Tecnologia, Projetista, Supervisor Técnico, Instrutor e Palestrante de Sistemas de Segurança, Segurança, TI, Sem Fio, Usuário Linux.

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.