[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Implement NX client with libssh


Hi Aris,

NX is a technology invented by NoMachine (http://www.nomachine.com) and
it implements remote X session extremely fast and actually useful over
modem network. The technology is strongly based on SSH. The whole
protocol data are transmitted over SSH.

Just remember what NX is using is pure standard SSH protocol! But still
something not possible to implement with openssh and NoMachine has to
fork the entire openssh project and add NX specific codes to build a
binary called "nxssh" (something Debian don't like). Why?

The NX protocol started with a standard SSH shell
(channel_request_shell), and negotiate with the SSH server using NX
commands. After that (Here is the trick!!), the NX server will re-use
the same shell channel as a tunnel! Note that this is not a new channel,
but the channel with shell requested. All following NX data are then
transmitted through the same channel. Well, you know it's very easy with
libssh of course. :)

Thanks,

Vic

On Tue, 2009-11-03 at 14:08 +0100, Aris Adamantiadis wrote:
> Hi Vic,
> 
> could you explain me what exactly is NX ssh and why it needs a special 
> version of ssh client ? Is it using tunneling or a specific kind of 
> subsystem or something ?
> 
> By the way I'm happy libssh can be used in original ways to do things 
> properly :)
> 
> Aris
> 
> Vic Lee wrote:
> > Hi,
> > 
> > Just want to share with you: I recently managed to figure out a clean
> > way to use libssh to implement NX client. I am probably the first one
> > that find this new usage of libssh.
> > 
> > I am going to implement the actual thing soon, but here is some
> > technical information:
> > 
> > http://sourceforge.net/apps/phpbb/remmina/viewtopic.php?f=2&t=5
> > 
> > And again, this proves the flexibility of libssh - something not even
> > possible with openssh, but is trivial with libssh. :) Eliminating the
> > "nxssh" fork is something people probably have struggled for years, and
> > now it's really amazing on how easy it actually is.
> > 
> > Vic
> > 
> > 
> > 
> > 
> 
> 



References:
Implement NX client with libsshVic Lee <llyzs@xxxxxxx>
Re: Implement NX client with libsshAris Adamantiadis <aris@xxxxxxxxxxxx>
Archive administrator: postmaster@lists.cynapses.org