Usando o cliente NX

Para se conectar ao servidor a partir dos clientes, você precisa primeiro baixar o NXclient no: http://www.nomachine.com/download.php. Existem versões para várias distribuições Linux, Windows e Solaris, todas de download gratuito. Na maioria das distribuições, ao instalar o cliente NX, são criados ícones no “Iniciar > Internet”.

Além do IP do servidor, você precisa informar a porta em que ele está escutando. O FreeNX usa o SSH para estabelecer a conexão, por isso a porta padrão é a 22. Caso você queira mudar a porta usada pelo servidor, é necessário editar dois arquivos.

Comece editando o arquivo “/etc/ssh/sshd_conf” (no servidor), alterando a opção “port 22” para a porta desejada. Em seguida, abra o arquivo “/usr/lib/nx/nxloadconfig” e altere a opção “SSHD_PORT=22”, de forma que seja informada a mesma porta nos dois arquivos. Para aplicar a alteração, reinicie o servidor SSH e, em seguida, também o servidor NX, usando o comando “nxserver –restart”.

De volta à configuração do cliente, estão disponíveis ainda opções com o nível de compressão dos dados e do tamanho da janela. Usando a opção “LAN”, que é destinada a conexões via rede local, não existe perda de qualidade de imagem, mas, ao usar as demais opções, destinadas a conexões mais lentas, as imagens são comprimidas via JPG, o que garante uma atualização mais rápida, porém com uma certa perda de qualidade. Conforme você vai usando, os pixmaps vão sendo retransmitidos e substituídos por cópias sem compressão, fazendo com que a imagem vá ficando mais nítida.

Na ilustração abaixo, estou me conectando a um servidor com o Kurumin via ADSL (256k), abrindo uma tela de 640×480. Você pode notar que alguns pontos da imagem estão um pouco embaçados por causa da compressão via JPG, mas no geral a imagem está nítida e os tempos de resposta são bem superiores aos obtidos com o VNC na mesma conexão.

Ao acessar via rede local, você pode desativar a compressão em JPG, evitando a perda de qualidade da imagem. Para isso, na configuração do cliente NX, acesse a opção “General > Display > Use custom settings > Modify”.

Aqui você tem a opção de ajustar o nível de compressão do JPG (os níveis mais altos são úteis em conexões via modem), usar compressão via PNG (um formato sem perda) ou desabilitar completamente a compressão usando a opção “Use plain X bitmaps”. Esta última opção consome mais banda da rede (o que não chega a ser um problema em uma rede de 100 megabits), mas em troca usa menos processamento, tanto no servidor quanto no cliente.

Em versões antigas do FreeNX, a compressão em PNG não funciona corretamente, fazendo com que, ao escolher a opção, continue sendo usada a compressão em JPG. Nesses casos, a única opção é usar os bitmaps do X, sem compressão. Uma observação importante é que essa opção reduz a eficiência do cache local do FreeNX, já que com arquivos maiores ele passa a armazenar um número muito menor de arquivos. A solução, nesse caso, é aumentar o tamanho do cache em memória de 8 para 32 MB na aba “Advanced”.

Para que você consiga se conectar a um servidor FreeNX com firewall ativo, é necessário que o firewall no servidor esteja com a porta 22 e as portas de 5000 a 5200 abertas. Você pode abrir as portas necessárias no Iptables, incluindo as duas regras a seguir no início do script de firewall do servidor:

iptables -A INPUT -p tcp –dport 22 -j ACCEPT
iptables -A INPUT -p tcp –dport 5000:5200 -j ACCEPT

As portas de 5000 a 5200 são necessárias por que por padrão o cliente NX utiliza o SSH para fazer autenticação e estabelecer a conexão inicial, mas depois utiliza outra porta para a transmissão dos dados. É possível fazer com que todo o tráfego seja transmitido através do SSH. Isso faz com que a sessão fique com tempos de resposta um pouco mais altos (pois o sistema tem o trabalho de desencriptar as informações antes de fazer cada atualização), mas, por outro lado, melhora a segurança, pois tudo passa a ser encriptado.

Ativando a encriptação passa a ser utilizada apenas a porta do SSH (22), o que torna desnecessária a segunda regra de firewall. A opção está na tela de configuração da conexão, em “Advanced > Enable SSL encription of all traffic”.

No cliente, não é necessária nenhuma configuração em especial. Você continua conseguindo se conectar ao servidor mesmo que o firewall bloqueie completamente as conexões de entrada. Basta ter acesso (de saída) ao servidor através da porta 22.

Além de abrir um desktop completo (como no VNC), o FreeNX pode ser configurado para abrir um aplicativo específico. Isso é especialmente útil quando você tem clientes Windows que precisam rodar um aplicativo específico a partir de um servidor Linux. Para isso, abra a janela de configuração e acesse a opção “General > Desktop”. Selecione a opção “Custom”

Clique agora no botão “Settings”. Na janela que será aberta, marque a opção “Run the following command” e especifique o comando do aplicativo que você deseja que seja executado, como, por exemplo, “gimp” ou “konqueror”. Marque também a opção “Floating window” ao invés de “New virtual desktop”.

Um detalhe interessante é que se você abrir um terminal, usando o comando “konsole” ou “xterm”, você poderá chamar qualquer outro aplicativo instalado no servidor a partir dele. No screenshot a baixo, por exemplo, configurei o cliente NX para abrir uma janela do Konsole, que usei para abrir o Gimp, o Kopete e o Kaffeine. Como pode ver, todos estão rodando integrados ao desktop do Windows, com janelas próprias e botões na barra de tarefas.

Ao criar uma nova conexão, o cliente NX oferece a opção de criar um ícone no desktop. Ao clicar sobre o ícone criado, é aberto o aplicativo configurado, que é exibido no cliente como se fosse um aplicativo nativo, aparecendo na barra de tarefas e tudo mais. É uma boa forma de “rodar” aplicativos Linux no Windows e impressionar seus amigos, ou “quebrar o gelo” dentro de projetos de migração, implantando os aplicativos Linux que serão futuramente usados, inicialmente dentro do Windows (através do FreeNX) e, depois, nativamente.

Sobre o Autor

Redes Sociais:

Deixe seu comentário

X