It only needs one free port - the SSH port 22. And you can get your free server for Linux or Solaris(limited to two users). The two users which can use NX are chosen when you first connect as a certain user. If you want to free one user slot, just delele the user from NX:
/usr/NX/bin/nxserver --userdel user123
Another cool thing: Instead of the whole desktop environment you can also just run a single program. That makes it really easy to run a Linux program in a Windows environment. It supports printing over cups and has (rudimentary) sound and video support.
And this is not paid advertisement, I actually really like the software. And I think it's great the small company publish the library under the GPL. Of course you have to pay for enterprise level tools. But hey, they got to make money as well. ;)