Utilização do x11vnc para administração remota de computadores Linux
Este artigo dedica-se a apresentar um servidor de VNC para Linux com uma apresentação bastante superior à do vncserver, pois é servidor de VNC e cliente de X11 ao mesmo tempo, permitindo que o seu cliente VNC tenha acesso à todas as facilidades do seu gerenciador de janelas.
Instalando o x11vnc
Primeiro vá em http://sourceforge.net/projects/libvncserver/ e baixe o arquivo x11vnc-0.7.1.tar.gz.
Descompacte o arquivo com:
$ tar zxvf x11vnc-0.7.1.tar.gz; cd x11vnc-0.7.1
Depois compile o programa:
$ ./configure && make && su -c 'make install'
Será necessário fornecer a senha de root para completar a instalação.
O programa foi escrito originalmente para rodar em plataforma Solaris, mas é compatível com a maioria dos *NIXes, uma vez que foi todo escrito em ANSI C.
Como foi dito, o x11vnc conecta-se no servidor X local e recebe conexões de clientes VNC, permitindo que máquinas Windows possam rodar aplicações gráficas em servidores *NIX.
Para os iniciantes, o sistema de janelas do UNIX permite vários displays. Geralmente o display que estamos usando na máquina local é o :0, mas nada impede que esse display seja acessado em outra máquina ou que haja outro usuário usando o display :1, por exemplo.
Suponhamos que queiramos acessar o desktop de um PC Linux. Para isso executamos:
$ x11vnc -display :0 -forever
O x11vnc vai escutar na porta 5900. Se o display fosse o :1 a porta seria 5901. Como regra, a porta é 5900 + número do display. Se você não especificar a opção -forever o x11vnc vai permitir que você conecte-se apenas uma vez.
Para acessar através de um cliente UNIX (vncviewer) use:
$ vncviewer hostremoto :0
Descompacte o arquivo com:
$ tar zxvf x11vnc-0.7.1.tar.gz; cd x11vnc-0.7.1
Depois compile o programa:
$ ./configure && make && su -c 'make install'
Será necessário fornecer a senha de root para completar a instalação.
Funcionamento do x11vnc
O programa foi escrito originalmente para rodar em plataforma Solaris, mas é compatível com a maioria dos *NIXes, uma vez que foi todo escrito em ANSI C.
Como foi dito, o x11vnc conecta-se no servidor X local e recebe conexões de clientes VNC, permitindo que máquinas Windows possam rodar aplicações gráficas em servidores *NIX.
Para os iniciantes, o sistema de janelas do UNIX permite vários displays. Geralmente o display que estamos usando na máquina local é o :0, mas nada impede que esse display seja acessado em outra máquina ou que haja outro usuário usando o display :1, por exemplo.
Suponhamos que queiramos acessar o desktop de um PC Linux. Para isso executamos:
$ x11vnc -display :0 -forever
O x11vnc vai escutar na porta 5900. Se o display fosse o :1 a porta seria 5901. Como regra, a porta é 5900 + número do display. Se você não especificar a opção -forever o x11vnc vai permitir que você conecte-se apenas uma vez.
Para acessar através de um cliente UNIX (vncviewer) use:
$ vncviewer hostremoto :0
O Suse, se eu não me engano desde a versão Enterprise Server 8, ele já vem com isso implementado e configurado, bastando você habilitar ou não a administração remota.
Eu utilizo um outro client para conectar via X11. Ele é o TightVNC Client. No site (http://www.tightvnc.org/) você pode baixar tanto o client quanto a versão servidora do software. Tudo free.
Um abraço, e parabéns pelo artigo.
Atc,
Alan Cota.