Accesso remoto al desktop con NX su Ubuntu

13 03 2007

Fino a qualche tempo fa l’accesso da remoto a macchine Linux poteva essere effettuato solo sfruttando l’architettura del server X (xorg), o ancora installando VNC server. Da quando la società italiana nomachine ha migliorato NX, sfruttando la tecnologia basata su mlview, l’accesso è stato reso più veloce così da poter essere sfruttato anche su linee poco veloci.

In questa breve guida vedremo come installare il server e il client su Ubuntu.

I files da scaricare sono:

nxserver_2.1.0-18_i386.deb
nxclient_2.1.0-11_i386.deb
nxnode_2.1.0-15_i386.deb

Spostiamoci nella directory dei files e eseguiamo:

$ sudo apt-get install libstdc++2.10-glibc2.2
$ sudo dpkg -i nx*.deb

I tre pacchetti verranno installati in /usr/NX, quindi occorrerà aggiungere la directory al path con:

$ export PATH=$PATH:/usr/NX/bin

facciamo partire il server:

$ sudo /usr/NX/bin/nxserver --start

che naturalmente potrà essere fermato con:

$ sudo /usr/NX/bin/nxserver --stop

Creiamo l’utente

$ sudo /usr/NX/bin/nxserver --useradd mioutente --administrator

Su Ubuntu Feisty, a causa di un problema legato ai fonts, occorre aggiungere (benedetti forum!) il nome unix al file /etc/hosts subito dopo localhost

127.0.0.1 localhost unix

Dobbiamo quindi assicurarci che il server SSH sia attivo per poter accedere alla LinuxBox via ssh con il client remoto( Linux, Solaris, Mac OSX, Windows), o addirittura (come si vede dalle schermate in basso) contemporaneamente anche con più utenti diversi in locale (Kde e Gnome insieme, vi dispiacciono?)

Enjoy ;)







Azioni

Informazione

35 risposte

13 03 2007
Marco

Molto utile !!!
mi chiedevo è possibile usarlo anche tramite internet oltre che lan? quali porte bisogna aprire sul router per farlo funzionare?
Grazie

13 03 2007
Antonio Doldo

Assolutamente si, firewall permettendo ;)
L’accesso viene effettuato via ssh (classica porta 22), con traffico criptato (tab Advanced –> Enable SSL encryption of all traffic).
ciao,
Antonio

14 03 2007
pastoreerrante

ciao! con quale tipo di licenza è pubblicato NX? GPL?

14 03 2007
Antonio Doldo

sul sito http://freenx.berlios.de/ esiste la versione GPL del server, il client non richiede alcuna licenza. Su questo punto ho anch’io dei dubbi….
su https://help.ubuntu.com/community/FreeNX c’è il link dei repo per Ubuntu, ma sembra solo per dapper (http://mirror2.ubuntulinux.nl/dists/dapper-seveas/freenx)... se qualcuno ne sa di più si faccia avanti…
Antonio

14 03 2007
Alessio

Da : https://help.ubuntu.com/community/FreeNX

For Ubuntu 6.10 no new prebuilt packages have been released, but the FreeNX server included in the 6.06 package does work with 6.10.

14 03 2007
the-smoker

Salve !
E’ molto più veloce di una ssh compressa ??
es:
ssh -C -X utente@server
nautilus

14 03 2007
Antonio Doldo

Grazie a Alessio per il suggerimento, Il pacchetto (55k) sembra molto piccolo, non ho avuto modo di testarlo…

14 03 2007
Antonio Doldo

@the-smoker
Forse no, ma considera la comodità di avere la sessione desktop anche sospesa e ripresa da qualunque pc, anche quelli poco intelligenti (qualcuno ha pensato forse a finestre98xpnt2003vista? :)

14 03 2007
Antonio Doldo

@pastoreerrante
dal sito http://en.wikipedia.org/wiki/NX_technology
License

NoMachine uses the GPL license for the core NX technology, while at the same time offering commercial NX server and client products for Linux, Microsoft Windows, Solaris, Mac OS X and embedded systems. Due to the free software nature of NX, the FreeNX project was started in order to provide the wrapper scripts for the GPL NX libraries. FreeNX is developed and maintained by Fabian Franz. 2X develops a terminal server for Linux that also uses the NX protocol.

ciao,
Antonio

14 03 2007
Antonio Doldo

@pastoreerrante
da:
http://www.nomachine.com/ar/view.php?ar_id=AR10B00018

Under what kind of license is NX distributed?
NX Server and NX Client are commercial products, distributed under a closed source licence but all the core libraries (for example libraries implementing X protocol compression), the modified X11 transport libraries (which implement proxying of any standard X client) and the NX agent (the program that runs X sessions on behalf of the user) are released under the GNU General Public Licence……

14 03 2007
pastoreerrante

grazie per le info!

14 03 2007
sanik

interessante. lascia un commento sul mio blog

14 03 2007
Antonio Doldo

a trovarlo :)

15 03 2007
sanik

hai ragione. credevo che il collegamento fosse automatico…
Comunque grazie!

15 03 2007
Accesso al desktop da browser con NXplugin su Ubuntu « Antonio Doldo Linux Blog

[...] quanto riguarda l’installazione del server NX vi rimando al precedente [...]

12 07 2007
Shardann

Salve, stavo giusto pensando a come accedere da remoto alla mia macchina UBUNTU.
Ma il mio accesso avverrebbe da una macchina Win XP
Hai delle indicazioni in merito?

12 07 2007
Antonio Doldo

@Shardann
Nessun problema, l’ultimo client per windows si trova su:
http://www.nomachine.com/download-package.php?Prod_Id=65

per il server di nomachine per ubuntu vedi:
http://www.nomachine.com/select-package.php?os=linux&id=1

Mi permetto di segnalarti per freenx anche questa guida:
http://bglugvs.web3king.com/?p=54

Ciao,
Antonio

26 07 2007
mattia

scusate io ho fatto pari pari quello che c’è scritto qui, però se provo a connettermi dal mio pc win mi và in timeout la connessione. Ho aperto la porta 22 sul mio server…devo aprirne altre?

26 07 2007
Antonio Doldo

@mattia
verifica se dal pc win non ci sia un firewall oppure se invece sul server è attivo.
Dal server linux puoi usare iptables -nL e controllare le regole, Per vedere se il servizio ssh è attivo il comando è
netstat -an|grep LISTEN|grep 22
dovresti vedere la riga:
tcp6 0 0 :::22 :::* LISTEN

dal PC windows invece puoi provare un collegamento con putty.exe o il semplice telnet sulla porta 22 del server.

1 08 2007
Gasilterribile

Su Kubuntu edgy tutto ok con l’installazione ma non riesco a creare l’user per il server. Mi restituisce il seguente output:
“Error: no ‘CONNECTED’ message from NX Node (NXNodeExec)
NX> 595 ERROR: A fatal error occurred in NX Server.
NX> 595 ERROR: The exception id is: 5AFF10EF. To get detailed information about
NX> 595 ERROR: the error search for the string 5AFF10EF in the system log
NX> 595 ERROR: file (usually ‘/var/log/messages’).
NX> 500 ERROR: Last operation failed.”
Suggerimenti?
Grazie

1 08 2007
Antonio Doldo

@Gasilterribile
non so a cosa si riferisca l’errore 5AFF10EF, potrebbe essere una questione di permessi di sistema. L’utente che aggiungi è il tuo utente ’sudo’?.
Nella directory .ssh il file authorized_keys ha i permessi 600?
sul sito di nomachine c’è una procedura per aggiungere un utente di sistema:

http://www.nomachine.com/ar/view.php?ar_id=AR09C00259

Di più non saprei :(
ciao,
Antonio

1 08 2007
Gasilterribile

grazie per la risposta.
Purtroppo non ho risolto: l’utente che creo è sudo, ho cambiato i permessi al file “authorized_keys” ma nulla è cambiato. L’output più completo è:
Info: selected user ‘gasilterribile’ is not authenticated no password available (NXNodeExec)
Info: preferred auth method is ‘publickey’ (NXNodeExec)
Info: selected NX Node with host name ‘127.0.0.1′, port ‘22′ (NXNodeExec)
Info: selected publickey method to login NX Node (NXNodeExec)
Info: nxssh command line is ‘/usr/NX/bin/nxssh -nxservermode -l gaspare 127.0.0.1 -p 22 -x -2 -i /usr/NX/etc/keys/node.localhost.id_dsa -o ‘PubkeyAuthentication yes’ -o ‘RSAAuthentication yes’ -o ‘RhostsAuthentication no’ -o ‘PasswordAuthentication no’ -o ‘RhostsRSAAuthentication no’ -o ‘StrictHostKeyChecking no’ /usr/NX/bin/nxnode’ (NXNodeExec)
Info: nxssh child pid is: 6210 (NXNodeExec)
Info: NX Node out channel was closed (NXNodeExec)
Info: Removing not recognized buffer from stdout:[] (NXNodeExec)
Info: received data in err channel from NX Node: ’ssh: connect to host 127.0.0.1 port 22: Connection refused
‘ (NXNodeExec)
Info: NX Node err channel was closed (NXNodeExec)
Info: closing nxssh’s in, out, err FDs (flagfinished is: 0) (NXNodeExec)
Error: no ‘CONNECTED’ message from NX Node (NXNodeExec)
NX> 595 ERROR: A fatal error occurred in NX Server.
NX> 595 ERROR: The exception id is: 8B49E157. To get detailed information about
NX> 595 ERROR: the error search for the string 8B49E157 in the system log
NX> 595 ERROR: file (usually ‘/var/log/messages’).
NX> 500 ERROR: Last operation failed.
Spero sia più chiaro.
ciao e grazie ancora.
gaspare

2 08 2007
Antonio Doldo

@Gasilterribile
Mi sembra ci sia un’incongruenza con i nomi degli utenti, se leggi nel log appare “gaspare” e “gasilterribile”:
prova a unificare i nomi e usa l’utente di sistema:

>–> Info: selected user ‘gasilterribile’ is not authenticated no password available
>–> Info: nxssh command line is ‘/usr/NX/bin/nxssh -nxservermode -l gaspare 127.0.0.1
Ciao,
Antonio

2 08 2007
Gasilterribile

No, ho fatto un errore nel riportare l’output, non ho fatto bene il copia-incolla; ho trascritto (sigh!). L’utente che cerco di creare sul server è sudo e di sistema (è sempre stato gaspare). l’exception segnalata cambia ogni volta (adessoThe exception id is: 622DE902). Sto perdendo le speranze di risolvere il problema e soprattutto ti stò dando fastidio. Cmq ti ringrazio e se ti venissero in mente altri suggerimenti……
ciao Gaspare

4 09 2007
motoplux

Salve.
Usavo con soddisfazione tutto l’ambaradan, sino a quando ho deciso di aggiornare il server dove sta NXserver a gutsy. Da quel momento non sono riuscito più a connettermi. Premetto che la connessione ssh continua a funzionare

Il log del client è il seguente

NXPROXY – Version 3.0.0

Copyright (C) 2001, 2007 NoMachine.
See http://www.nomachine.com/ for more information.

Info: Proxy running in client mode with pid ‘21415′.
Session: Starting session at ‘Tue Sep 4 17:05:03 2007′.
Warning: Connected to remote version 2.1.0 with local version 3.0.0.
Info: Connection with remote proxy completed.
Info: Using ADSL link parameters 512/24/1/0.
Info: Using cache parameters 4/4096KB/131072KB/131072KB.
Info: Using image streaming parameters 50/128/1024KB/2048/256.
Info: Using image cache parameters 1/1/131072KB.
Info: Using pack method ‘16m-jpeg-7′ with session ‘unix-gnome’.
Info: Using ZLIB data compression 3/3/32.
Info: Using ZLIB stream compression 6/6.
Info: Using cache file ‘/home/motoplux/.nx/cache-unix-gnome/S-8D9580F77C279F92E3355CBE63C028CB’.
Info: Forwarding X11 connections to display ‘:1.0′.
Session: Session started at ‘Tue Sep 4 17:05:03 2007′.
Info: Established X server connection.
Info: Using shared memory parameters 1/4096K.
Error: No response received from remote proxy while waiting for the shutdown.
Session: Session terminated at ‘Tue Sep 4 17:05:37 2007′.

Qualcuno sa se ci sono problemi di compatibilità con Gutsy?

4 09 2007
Antonio Doldo

@motoplux
Ho installato su Ubuntu Tribe 5 le versioni 3 di NX e funzionano senza problemi. Ti consiglio di aggiungere al file /etc/hosts la stringa “unix” dopo localhost
127.0.0.1 localhost unix

e di abilitare il log (per controllare le comunicazioni client/server) su /etc/nxserver/node.conf se usi freenx oppure /usr/NX/etc/node.cfg se usi NX dii nomachine
In questo momento da me ho:

$ dpkg -l|grep nx
ii nxagent 2.1.0dol1 NoMachine NX - nesting X server with roundtr
ii nxclient 3.0.0-78 NX Client
ii nxlibs 2.1.0dol1 NoMachine NX - common agent libraries
ii nxnode 3.0.0-76 NX Server Node
ii nxserver 3.0.0-63 NX Server

Se fosse un problema di chiavi, puoi riconfigurare il server con

$ sudo dpkg-reconfigure nxserver

A risentirci,
Antonio

5 09 2007
motoplux

Ho risolto grazie mille.
Usavo freenx scaricato dai repo ufficiali prima e dopo l’aggiornamento, ma su gutsy non ne voleva sapere di funzionare. Ho fatto un –purge e ho installato nxserver direttamente dal sito come suggerivi te… e come per magia tutto a ripreso a funzionare.
Grazie ancora

28 10 2007
miguelastico

grazie, funziona, pero’ ti posso fare due osservazioni:
i “doppi trattini” -.- (il punto e’ stato messo per separarli) li vedo come uno solo, magari qualcuno si confonde e si fa qualche problema

a me, appena installato, non funzionava
risultava che dovevo abilitare l’utente nx e miguel in /etc/ssh/sshd_conf

una curiosita’: quando ho impostato il server ssh ho dovuto portare “fisicamente” la chiave del client sul server
ora per accedere via ssh devo immettere la “passphrase”
nxserver invece non mi chiede niente, solo la password utente
ora, siccome vorrei fare un accesso da remoto, da fuori della lan, sono sicuro che questa modalita’ di accesso sia ragionevolmente sicura?

28 10 2007
Antonio Doldo

@miguelastico
il problema è che i due trattini vengono modificati da wordpress ;(
NX usa la sua chiave ssh, ma l’accesso lo fai sempre con il tuo utente di sistema, quindi se tu cambi la password o la chiave ssh, non entri più ;)

Sul sito di nomachine (http://www.nomachine.com/configuration.php) ci dovrebbe essere una sessione dedicata alla sicurezza.
Ciao,
Antonio

13 02 2008
dexxster

Ciao, ho installato il tutto su un server redhat e funziona perfettamente, solo che se dal pc remoto (dove cioè gira il client che si è collegato al server) apro una sessione X verso una terza macchina (ad esempio tramite il comando da terminale X :2 -query 192.168.1.145) la sessione X viene aperta sulla macchina dove gira nx-server e non sul client sul quale mi trovo… Non so se sono stato chiaro ma ti ringrazio in anticipo se potrai darmi un suggerimento. Ciao, Giovanni

13 02 2008
Antonio Doldo

@dexxster
Ho capito il tuo problema, ma al momento non posso fare verifiche. Non so se il problema dipenda dal fatto che X viene indirizzato sulle porte 700X di nx invece di 600X e quindi la query si incarta

tcp 0 0 0.0.0.0:7004 0.0.0.0:* LISTEN 973/nxagent
tcp 0 0 127.0.0.1:52835 127.0.0.1:22 ESTABLISHED 952/nxssh
tcp6 0 0 :::7004 :::* LISTEN 973/nxagent

dai un’icchiata X -help o alle FAQ sul sito di nomachine, non mi viene in mente altro per ora.
Ciao e a risentirci,
Antonio

16 10 2008
buntu1

ciao a tutti volevo chiedervi una cosa e da 3 giorni che nn dormo ho seguito tutte le guide possibili immaginabili ma nn riesco a mettere freenx ne nxserver su un mio server dedicato nessuno sa dirmi o spiegarmi passo passo grazie di

16 10 2008
Antonio Doldo

@buntu1
per quanto riguarda nxserver è sufficiente scaricare i pacchetti per debian e ubuntu da:
http://www.nomachine.com/download-package.php?Prod_Id=6

nxclient_3.2.0-14_i386.deb
nxnode_3.2.0-13_i386.deb
nxserver_3.2.0-16_i386.deb

installare con

sudo dpkg -i nx*deb

e creare l’amministratore:

$ sudo /usr/NX/bin/nxserver --useradd adoldo --administrator

e infine fare partire il server con:

per accedere al server è logico che deve essere aperta la porta 22 sul firewall ;)
cerca di essere più preciso nei problemi che hai incontrato.
Ciao,
Antonio

16 10 2008
Antonio Doldo

@buntu1
naturalmente sostituisci adoldo con il nome del tuo utente

29 11 2008
zoster

Ciao a tutti
Per istallare il server su ubuntu 8.10 ho usato il seguente metodo, lo consiglio oltretutto molto veloce e suppongo si aggiorni velocemente con apt.

Preso da https://help.ubuntu.com/community/FreeNX
Alternatively, you can edit the configuration files and install by hand:

1.

Open your apt sources list

gksudo gedit /etc/apt/sources.list

and append the two lines for the repository

deb http://ppa.launchpad.net/freenx-team/ubuntu VERSION main
deb-src http://ppa.launchpad.net/freenx-team/ubuntu VERSION main

where VERSION can be: dapper, hardy or intrepid. More information can be found at FreeNX Team PPA.
2. Save and then close.
3.

Then Update Apt sudo apt-get update
4.

After you add the repository, then install the freenx package (using Aptitude to install extra needed packages). sudo aptitude install freenx

Lascia un commento