forums.xandros.com Forum Index forums.xandros.com
Xandros User Forums
 
 FAQFAQ   SearchSearch   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Xandros 3 as a terminal server
Goto page 1, 2, 3, 4, 5  Next
 
Post new topic   Reply to topic    forums.xandros.com Forum Index -> Networking and the internet
View previous topic :: View next topic  
Author Message
stein
Xandrosianling
Xandrosianling


Joined: 21 Jan 2005
Posts: 304
Location: norway

PostPosted: Fri Apr 08, 2005 5:04 am    Post subject: Xandros 3 as a terminal server Reply with quote

My Xandros 3.0.1 OC is now a terminal server. From a client I can connect to it over my local network. This is not ordinary desktop sharing where the client takes control over the current screen on the server. I can do concurrent client logins and have concurrent sessions.

Right now I have 8 sessions going on at the server. 3 of them are local using Switch User. 3 are connecting over the net from linux machines. " are connecting from Windows machines. All 8 sessions are running Lines (the game) concurrently.

Linux clients are running 'krdc' (KDE Remote Desktop connection). Windows clients are running the free RealVNC Viewer (http://realvnc.com).

A terminal server howto was found here: http://linuxreviews.org/howtos/xvnc/.
It describes a XFree86 system. Xandros 3.0 uses X.Org so I had to do some modifications.
By using 'Xandros File Manager (Administrator)' and 'Text Editor' I was able to avoid command line.

I have only been testing the setup for an hour, but so far my 8 concurrent sessions seem to work very fine.


Here is a step-by-step guide to the installation:

A. Uninstall 'krfb' (KDE Remote Screen Server) using Xandros Network.

B. Install packages from Xandros Network. (Remember enable Unsupported Debian.)
- tightvncserver
- xinetd
- krdc (you probably have it already)

01. Start 'Xandros File Manager (Administrator)', NOT the ordinary one, and use it as my manouvering tool.

02. Configure xinetd to listen to external calls.
- Open /etc/xinetd.conf (with 'Text Editor')
- Make sure the line containing 'only_from = localhost' is non-existent or commented out (a # in front of the line).
- Save the file

03. Configure the login manager (kdm) to listen to XDCMP requests.
- Open /etc/kde3/kdm/kdmrc (with 'Text Editor')
- Go to section [Xdmcp]
- Make sure the following is set:
Enable=true
Port=177 (and no # in the beginning of line)
Xaccess=/etc/kde3/kdm/Xaccess (and no # in the beginning of line)
Willing=/etc/kde3/kdm/Xwilling
- Go to section [X-*-Core], NOT [X-:*-Core] or [X-:0-Core]
- The following parameters are recommended:
AllowRootLogin=false
AllowShutdown=None (OR Root)
- Save the file

04. Specify who has access to XDMCP
- Open /etc/kde3/kdm/Xaccess
- Make sure the line containing 'any host can get a login window' is NOT commented out (remove the # in front of the line, so it starts with *). It should then look like this:
*. . . . . #any host can get a login window
(Substitute * for 192.168.0.* if you want only machines on the local 192.168.0.0 network to be able to connect.)
- Save the file

05. Add the needed services to the services file
- Open /etc/services
- Add the following lines:
#
# VNC Servers
#
vnc-640x480x8 5950/tcp
vnc-800x600x8 5951/tcp
vnc-1024x768x8 5952/tcp
vnc-1280x1024x8 5953/tcp
vnc-1600x1200x8 5954/tcp
vnc-640x480x16 5960/tcp
vnc-800x600x16 5961/tcp
vnc-1024x768x16 5962/tcp
vnc-1280x1024x16 5963/tcp
vnc-1600x1200x16 5964/tcp
vnc-640x480x24 5970/tcp
vnc-800x600x24 5971/tcp
vnc-1024x768x24 5972/tcp
vnc-1280x1024x24 5973/tcp
vnc-1600x1200x24 5974/tcp
vnc-640x480x32 5980/tcp
vnc-800x600x32 5981/tcp
vnc-1024x768x32 5982/tcp
vnc-1280x1024x32 5983/tcp
vnc-1600x1200x32 5984/tcp
- Save the file

06. Create a file called /etc/xinetd.d/xvncserver
- Make a copy of one of the files in /etc/xinetd.d/
- Rename the copied file to 'xvncserver' (without quotes).
- Open xvncserver.
- Delete all content.
- Add the following lines:

service vnc-640x480x8
{
protocol = tcp
socket_type = stream
wait = no
user = nobody
server = /usr/bin/Xvnc
server_args = -inetd -query localhost -once -geometry 640x480 -depth 8
}

service vnc-800x600x8
{
protocol = tcp
socket_type = stream
wait = no
user = nobody
server = /usr/bin/Xvnc
server_args = -inetd -query localhost -once -geometry 800x600 -depth 8
}

service vnc-1024x768x8
{
protocol = tcp
socket_type = stream
wait = no
user = nobody
server = /usr/bin/Xvnc
server_args = -inetd -query localhost -once -geometry 1024x768 -depth 8
}

service vnc-1280x1024x8
{
protocol = tcp
socket_type = stream
wait = no
user = nobody
server = /usr/bin/Xvnc
server_args = -inetd -query localhost -once -geometry 1280x1024 -depth 8
}

service vnc-1600x1200x8
{
protocol = tcp
socket_type = stream
wait = no
user = nobody
server = /usr/bin/Xvnc
server_args = -inetd -query localhost -once -geometry 1600x1200 -depth 8
}

service vnc-640x480x16
{
protocol = tcp
socket_type = stream
wait = no
user = nobody
server = /usr/bin/Xvnc
server_args = -inetd -query localhost -once -geometry 640x480 -depth 16
}

service vnc-800x600x16
{
protocol = tcp
socket_type = stream
wait = no
user = nobody
server = /usr/bin/Xvnc
server_args = -inetd -query localhost -once -geometry 800x600 -depth 16
}

service vnc-1024x768x16
{
protocol = tcp
socket_type = stream
wait = no
user = nobody
server = /usr/bin/Xvnc
server_args = -inetd -query localhost -once -geometry 1024x768 -depth 16
}

service vnc-1280x1024x16
{
protocol = tcp
socket_type = stream
wait = no
user = nobody
server = /usr/bin/Xvnc
server_args = -inetd -query localhost -once -geometry 1280x1024 -depth 16
}

service vnc-1600x1200x16
{
protocol = tcp
socket_type = stream
wait = no
user = nobody
server = /usr/bin/Xvnc
server_args = -inetd -query localhost -once -geometry 1600x1200 -depth 16
}

service vnc-640x480x24
{
protocol = tcp
socket_type = stream
wait = no
user = nobody
server = /usr/bin/Xvnc
server_args = -inetd -query localhost -once -geometry 640x480 -depth 24
}

service vnc-800x600x24
{
protocol = tcp
socket_type = stream
wait = no
user = nobody
server = /usr/bin/Xvnc
server_args = -inetd -query localhost -once -geometry 800x600 -depth 24
}

service vnc-1024x768x24
{
protocol = tcp
socket_type = stream
wait = no
user = nobody
server = /usr/bin/Xvnc
server_args = -inetd -query localhost -once -geometry 1024x768 -depth 24
}

service vnc-1280x1024x24
{
protocol = tcp
socket_type = stream
wait = no
user = nobody
server = /usr/bin/Xvnc
server_args = -inetd -query localhost -once -geometry 1280x1024 -depth 24
# port = 5973
}

service vnc-1600x1200x24
{
protocol = tcp
socket_type = stream
wait = no
user = nobody
server = /usr/bin/Xvnc
server_args = -inetd -query localhost -once -geometry 1600x1200 -depth 24
}

service vnc-640x480x32
{
protocol = tcp
socket_type = stream
wait = no
user = nobody
server = /usr/bin/Xvnc
server_args = -inetd -query localhost -once -geometry 640x480 -depth 32
}

service vnc-800x600x32
{
protocol = tcp
socket_type = stream
wait = no
user = nobody
server = /usr/bin/Xvnc
server_args = -inetd -query localhost -once -geometry 800x600 -depth 32
}

service vnc-1024x768x32
{
protocol = tcp
socket_type = stream
wait = no
user = nobody
server = /usr/bin/Xvnc
server_args = -inetd -query localhost -once -geometry 1024x768 -depth 32
}

service vnc-1280x1024x32
{
protocol = tcp
socket_type = stream
wait = no
user = nobody
server = /usr/bin/Xvnc
server_args = -inetd -query localhost -once -geometry 1280x1024 -depth 32
}

service vnc-1600x1200x32
{
protocol = tcp
socket_type = stream
wait = no
user = nobody
server = /usr/bin/Xvnc
server_args = -inetd -query localhost -once -geometry 1600x1200 -depth 32
}


- Save this file (xvncserver).


07. Reboot the machine.

08. Test.
- On the same machine, open 'Connect to Desktop'
(Launch - Applications - System - Remote Desktop Sharing - Connect to Desktop).
- Type in 'localhost:61' (without quotes) and click the Connect button.
(The number after : specifies color depth and resolution.
800x600x8 is :51, 800x600x16 is :61, 800x600x24 is :71.
1024x768x8 is :52, 1024x768x16 is :62, 1024x768x24 is :72.)
- You should now see the Xandros Desktop OS 2.0 login screen.

09. Real life.
- On the server, create some new users.
- On another Xandros machine (client), make sure 'krdc' (KDE Remote Desktop Client) is installed. (Launch - Applications - System - Remote Desktop Sharing - Connect to Desktop). If not, install it from Xandros Network.
- On the client, create some new users and login 3 of them using Switch User. (This way you can simulate 3 clients wanting to log in to the terminal server).
- In each of the 3 sessions, open 'Connect to Desktop' and specify <ip-adress of the server>:61 (e.g. 192.168.0.1:61).
- In each of the 3 sessions, log in using usernames belonging to the server.
- On the server, try to log in even more users.

10. More.
- RealVNC client for Windows: http://realvnc.com
- TightVNC client for Windows: http://tightvnc.com
- vncviewer manual page: http://linuxreviews.org/man/vncviewer/
- KDM handbook: http://docs.kde.org/en/3.2/kdebase/kdm/
- You can/should use ssh (or other encryption) as tightvnc does not encrypt the connection (major security risk). See http://linuxreviews.org/howtos/xvnc/.
Back to top
View user's profile Send private message Visit poster's website
carbon_unit
Xandrosianding
Xandrosianding


Joined: 08 Mar 2003
Posts: 837

PostPosted: Sun Apr 17, 2005 7:30 pm    Post subject: Reply with quote

Nice writeup. I followed your instructions and it worked without any tweaking.
Now how do I make this available to me when I am away from home. For some reason I am missing something on the VNC through a ssh tunnel procedure. Confused
_________________
Registered Linux User #160145
Back to top
View user's profile Send private message Send e-mail
redrum
Xandros Community Moderator
Xandros Community Moderator


Joined: 05 Apr 2004
Posts: 2765
Location: Rapid City, South Dakota

PostPosted: Sun Apr 17, 2005 9:55 pm    Post subject: Reply with quote

carbon_unit wrote:
Nice writeup. I followed your instructions and it worked without any tweaking.
Now how do I make this available to me when I am away from home. For some reason I am missing something on the VNC through a ssh tunnel procedure. Confused


If you have a firewall, you will need to open up port 5800 or 5900. depending on what port vnc is listening to... I'm not sure you need to open a port for ssh or not... seems I did a remote desktop connection without it, but I diddn't follow through what was done, so maybe you do... Anyways its prolly your firewall.
_________________


Beware of the man who would deny you access to information,
for in his heart he dreams himself your master.
Back to top
View user's profile Send private message Visit poster's website AIM Address Yahoo Messenger
stein
Xandrosianling
Xandrosianling


Joined: 21 Jan 2005
Posts: 304
Location: norway

PostPosted: Mon Apr 18, 2005 2:48 am    Post subject: Reply with quote

So far I have not considered ssh since my use is local.
Take a look at http://linuxreviews.org/howtos/xvnc/#toc13 for more info on ssh.
Back to top
View user's profile Send private message Visit poster's website
carbon_unit
Xandrosianding
Xandrosianding


Joined: 08 Mar 2003
Posts: 837

PostPosted: Mon Apr 18, 2005 6:44 am    Post subject: Reply with quote

You are right, it is my firewall. I think it is working but the firewall will not let me access from behind the firewall. In other words, it will not let me out and then back in. I was trying to test from home but I need to test from a remote location. Embarassed
_________________
Registered Linux User #160145
Back to top
View user's profile Send private message Send e-mail
mike80808
Xanscended
Xanscended


Joined: 14 Apr 2003
Posts: 3891
Location: St. Louis, MO

PostPosted: Mon Apr 18, 2005 5:09 pm    Post subject: Reply with quote

Someone asked about a VNC through an SSH tunnel....

http://www.archlug.org/kwiki/SSHTunnels
_________________
Thanks for all the fishes, Xandros.
Back to top
View user's profile Send private message Visit poster's website
stein
Xandrosianling
Xandrosianling


Joined: 21 Jan 2005
Posts: 304
Location: norway

PostPosted: Thu Apr 21, 2005 5:55 pm    Post subject: Reply with quote

It still works...
During these 2 weeks I have abandoned the ThightVNC Client. RealVNC is much faster.
Back to top
View user's profile Send private message Visit poster's website
cprise
Xandrosianding
Xandrosianding


Joined: 26 Dec 2003
Posts: 592

PostPosted: Wed Apr 27, 2005 12:54 am    Post subject: FreeNX Reply with quote

Nice job with the Howto. However I'd recommend you look at FreeNX instead. It is far faster than any VNC solution. An order of magnitude faster.

You can install the nxserver and nxclient from Debian repositories. Mac and Windows clients are available from http://www.nomachine.com (where they try to sell you an enhanced version, but the free client is available from the download page and it is fine). The nxclient also handles VNC and RDP.

FreeNX is featured prominently on Knoppix so you might want to use that to take a look first.
Back to top
View user's profile Send private message Yahoo Messenger
stein
Xandrosianling
Xandrosianling


Joined: 21 Jan 2005
Posts: 304
Location: norway

PostPosted: Wed Apr 27, 2005 4:52 pm    Post subject: Reply with quote

Thanks for suggesting a better solution, cprise. Cool
I'm looking forward to having a dive into FreeNX next week. As you say, vnc is not the fastest solution around.
Back to top
View user's profile Send private message Visit poster's website
stein
Xandrosianling
Xandrosianling


Joined: 21 Jan 2005
Posts: 304
Location: norway

PostPosted: Sun May 01, 2005 4:51 pm    Post subject: Reply with quote

Unfortunately I didn't find any nxserver to download other than the eval from NoMachine.

On a Xandros3 3GHz 512MB ATA100 system I have installed both the ThightVNC server with the terminal server modifications and the NX server. They can coexist without problems.

On an old Xandros3 500Hz 256MB ATA33 system I have installed the KDE Remote Desktop Client (called Connect to Desktop in Xandros), the XVNC4 viewer, the tightVNC viewer, and the NX client. The display adapter is an old 8MB PCI card.

When working with non-video programs on the old client machine, NX client is fastest, closly followed by the tightVNC viewer. Then comes the XVNC4 viewer, and lastly the Remote Desktop Client.

When watching compressed video clips (wmv) it seems the tightVNC viewer is best, XVNC4 viewer is next, then the NX client, and lastly the Remote Desktop Client.

The NX server costs about 170 bucks for a 5 user license, so until I find the FreeNXserver I'll stick to the modified TightVNC server for my lan.

Please remember these preliminary experiences are based on an old 500MHz linux client with an old video card, and running on a 100Mbps lan.

It seems necessary the lan clients should run faster cpu or possibly better video card. I hope to test this later.
Back to top
View user's profile Send private message Visit poster's website
bryantrv
Xandrosianschwing


Joined: 24 Mar 2005
Posts: 2898
Location: DeLand, Florida US

PostPosted: Sun May 01, 2005 6:00 pm    Post subject: Reply with quote

I've been using Xandros as a terminal server for a while now (ever since I started using it), and used your instructions for configuring kdm to allow remote logins (works great!).
But.. my biggest problem is that I first started out by switching to gdm from kdm, simply because it seems to give more XDMCP options.
Right now, on my terminal, I still am using gdm, and with it at the first login screen, I am given an option of running the XDMCP chooser- which works very well- no need to run any desktop on the terminal, which makes it usable with nearly any machine (I was using a P166 until it died- it worked just as well as my current Duron 1400).

Anyone have a clue as how to get an XDMCP chooser from kdm?
_________________
--
Chris Bryant
http://www.kindofpeckish.com
http://opensourcemachine.org
http://bryantrv.com
http://rx4rv.com
Back to top
View user's profile Send private message
Monster_user
Xanscended
Xanscended


Joined: 03 Feb 2005
Posts: 3945
Location: Georgia U.S.A.

PostPosted: Sun May 01, 2005 8:39 pm    Post subject: Reply with quote

bryantrv wrote:
Anyone have a clue as how to get an XDMCP chooser from kdm?


My advice, request Xandros to add it.

If KDE 3.2's KDM has it built-in, then it shouldn't be too difficult. I don't know if it is, as I've never payed it any attention.

It would be nice to be able select a different Window Manager from the Xandros KDM. I guess I'll stick with GDM for now.
_________________
The answers are out there. You just have to know how to find them.
View my Xandros Desktop Gallery?
Back to top
View user's profile Send private message
stein
Xandrosianling
Xandrosianling


Joined: 21 Jan 2005
Posts: 304
Location: norway

PostPosted: Mon May 02, 2005 12:29 am    Post subject: Reply with quote

bryantrv wrote:
... I first started out by switching to gdm from kdm, simply because it seems to give more XDMCP options. Right now, on my terminal, I still am using gdm, and with it at the first login screen, I am given an option of running the XDMCP chooser- which works very well- no need to run any desktop on the terminal, which makes it usable with nearly any machine (I was using a P166 until it died- it worked just as well as my current Duron 1400).
Anyone have a clue as how to get an XDMCP chooser from kdm?

Sorry I don't have any answer to your question, Chris. But what you tell about using gdm sounds interesting. Can you point me to any info about this?
Back to top
View user's profile Send private message Visit poster's website
bryantrv
Xandrosianschwing


Joined: 24 Mar 2005
Posts: 2898
Location: DeLand, Florida US

PostPosted: Mon May 02, 2005 7:00 am    Post subject: Reply with quote

stein wrote:

Sorry I don't have any answer to your question, Chris. But what you tell about using gdm sounds interesting. Can you point me to any info about this?


IIRC, it was fairly easy (I have a bad habit of not writing down the steps that I go through). I think I just did an apt-get install gdm, then go to /etc/X11 and edit default-display-manager and change it from /usr/bin/kdm to /usr/bin/gdm.
Once gdm is installed and in use, there is a configuration menu under System (and I *think* in Control Center, as well) that gives all of the XDMCP choices.
The main reason I switched back to kdm on the server is that using gdm, I didn't have the option to shut down or reboot from the desktop, only the login screen- though that's not a huge problem.
_________________
--
Chris Bryant
http://www.kindofpeckish.com
http://opensourcemachine.org
http://bryantrv.com
http://rx4rv.com
Back to top
View user's profile Send private message
stein
Xandrosianling
Xandrosianling


Joined: 21 Jan 2005
Posts: 304
Location: norway

PostPosted: Mon May 02, 2005 2:09 pm    Post subject: Reply with quote

stein wrote:
... It seems necessary the lan clients should run faster cpu or possibly better video card. I hope to test this later.

Now I have equipped the old 500Hz 256MB ATA33 client machine with a Radeon 7000 64MB video card. This obviously offloads the cpu a great deal and make the system suitable for moving pictures.

For some reason the tightVNC viewer does no longer work. Sad, because I expected it to outperform the other 3 clients. But not too sad though, because I have heard rumours saying TightVNC viewer beeing a little unstable.

When watching compressed video clips (wmv) the XVNC4 viewer is the champion. In fact it is the only client (running on a low performance system) capable of displaying the video without visible issues. The NX client comes next, performing a little bit unpleasant. The Remote Desktop Client performs almost as bad as with the old video card.

When working with non-video programs it's hard to se any differences between the various clients.

I conclude that for my environment NX is not suitable (my client machines are too weak). This is a bit sad because the NX solution has a very nice feature in beeing able to hold (suspend) the session when logging out. This way you can continue your work at next logon.
However, the XVNC4 client is working great with the modified TightVNC server. In fact it seems to be the most stable solution as well. And it doesn't cost a dime.

An even lower speed (300MHz) Windows shows that the Windows version of the RealVNC client is way better than the Windows version of the TightVNC client.

Please remember these experiences are based on old client machines running on a 100Mbps lan. I have not testet better hardware nor tested over remote connection lines like ADSL or dialup.
Back to top
View user's profile Send private message Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic    forums.xandros.com Forum Index -> Networking and the internet All times are GMT - 5 Hours
Goto page 1, 2, 3, 4, 5  Next
Page 1 of 5

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group