sexta-feira, fevereiro 15, 2008

FreeNX - Compartilhando a Área de Trabalho Linux/Ubuntu/Windows


O FreeNX é um aplicativo para compartilhamento de área de trabalho, ele é mais eficiente que o VNC e/ou X11 por possuir um sistema avançado de cache de imagens. O programa consiste em uma aplicação servidor que fornece as sessões e uma aplicação cliente que acessa o servidor.

O cenário que descrevo abaixo é o compartilhamento da área de trabalho de um computador rodando Kubuntu 7.10 que pode ser acessado remotamente a partir de uma estação windows ou linux.

Download e Instalação

Ubuntu 7.10 Gutsy Gibbon

Adicione os seguinte repositórios no seu /etc/apt/sources.list

deb http://www.datakeylive.com/ubuntu gutsy main
deb-src http://www.datakeylive.com/ubuntu gutsy main

Baixe e adicione a chave de verificação do repositório:

#wget http://www.datakeylive.com/ubuntu/dists/gutsy/wjeremy.key | sudo apt-key add -

#sudo apt-get update

Instale os pacotes necessários:

#sudo apt-get install expect openssh-server tcl8.4 libxcomp2 libxcompext2 libxcompshad nxlibs nxagent nxproxy nxclient freenx

Após a instalação uma mensagem avisa sobre o cups, para habilitar a impressão via NX digite:

#sudo chmod 755 /usr/lib/cups/backend/ipp

Ubuntu 7.04 Feisty Fawn

Adicione os seguinte repositórios no seu apt.

#sudo vi /etc/apt/sources.list

—–

#Seveas Repositories https://wiki.ubuntu.com/SeveasPackages
deb http://mirror2.ubuntulinux.nl/seveas/freenx/ feisty-seveas freenx
deb-src http://mirror2.ubuntulinux.nl/seveas/freenx/ feisty-seveas freenx

—-

#gpg –keyserver subkeys.pgp.net –recv-keys 1135D466
#gpg –export –armor 1135D466 | sudo apt-key add -

#sudo aptitude update
#sudo aptitude install freenx nxclient

Configuração do Servidor

O arquivos de configuração do server ficam em /etc/nxserver.

Configuração do SSH

Verificar se a instalação das chaves SSH está ok:

#sudo su
#cd /var/lib/nxserver/home/.ssh
#ssh -i client.id_dsa.key nx@localhost

O resultado deve ser algo como:

HELLO NXSERVER - Version 1.5.0-60 OS (GPL)
NX> 105

#exit
#exit

O FreeNX utiliza a porta padrão do SSH (22), caso você utilize outra porta para o SSH no seu computador deve fazer algumas alterações. Veja os links no final do post, eles tem instruções de como fazê-lo.

Configuração da Autenticação

Adicionar usuário a base do nxserver - o usuário deve ter uma conta local.

#sudo nxserver –adduser username
#sudo nxserver –passwd username

Reinicie o nx server

#sudo nxserver –restart

Configurando o Cliente

Cliente Linux

Instale o nxclient.

Ubuntu Gutsy

#wget http://mirror2.ubuntulinux.nl/pool/feisty-seveas/freenx/nxclient_2.1.0-17_i386.deb
#sudo dpkg -i nxclient_2.1.0-17_i386.deb

Veja https://bugs.launchpad.net/seveas-packages/+bug/148656 para corrigir o problema das fontes, feito isso tudo vai funcionar.

Ubuntu Feisty

#sudo aptitude install nxclient

Executando o cliente

#nxclient

Solução de problemas

Na primeira tentativa não consegui acessar o servidor, após a autenticação (bem sucedida) o cliente desconectava direto. No meu caso o problema eram as fontes do X11. Na versão para ubuntu feisty existe um problema no diretório de fontes do X11, é necessário alterar conforme instruções no link abaix.

https://bugs.launchpad.net/seveas-packages/+bug/148656

Feito isso, a conexão funcionou normalmente.

Para habilitar o log detalhado do nxserver para tentar resolver outros problemas, edite o arquivo /etc/nxserver.node.conf e altere o level do log para 7.

#sudo vi /etc/nxserver.node.conf

NX_LOG_LEVEL=7

Cliente Windows

Faça download do cliente para windows em http://www.nomachine.com/download-client-windows.php e instale o programa e acesse o servidor nx.

Links uteis

Página do FreeNX
http://freenx.berlios.de/

Outras instruções de instalação e configuração (em inglês)
- https://help.ubuntu.com/community/FreeNX
- http://ubuntuforums.org/showthread.php?t=467219
- http://ubuntuforums.org/showthread.php?t=620057 (gutsy gibbon)

- http://mainesysadmin.com/2008/02/11/how-to-install-freenx-on-ubuntu-710-x64/


Foi tirado do site http://papogeek.wordpress.com/2008/02/12/freenx-compartilhando-a-area-de-trabalho-linuxubuntuwindows/