Set up a terminal server using VNC
From Linuxintro
I want to set up a terminal server using VNC. This will enable you to work on a remote computer and use your local computer as a display only. For this example I used SUSE Linux 13.1 but it should work same or similar on other distributions as well.
Contents
Procedure
- install VNC incl. the config files for xinetd
yast -i xorg-x11-Xvnc
- edit /etc/xinet.d/vnc to contain
service vnc1 { socket_type = stream protocol = tcp wait = no user = nobody server = /usr/bin/Xvnc server_args = -securitytypes=none -noreset -inetd -once -query localhost -geometry 1024x768 -depth 16 type = UNLISTED port = 5901 }
- start xinetd
xinetd
- Start yast -> System -> /etc/sysconfig editor -> Desktop -> Display manager -> DISPLAYMANAGER_REMOTE_ACCESS to yes and restart the display manager service with the command
- rcxdm restart
TroubleShooting
No password configured
- now I got an error message
No password configured for VNC Auth
-securitytypes=none
- xinetd re start
Not a valid vnc server
- Symptom
- When starting vncviewer you get an error message like this:
# vncviewer 54.186.202.224:1 Not a valid VNC server
An strace delivers a line like
read(4, "Unrecognized option: -bla\n", 8192) = 26 write(2, "Not a valid VNC server\n", 23Not a valid VNC server
- Reason
- In /etc/xinetd.d/vnc you have provided an illegal server option, in this case bla.
- Solution
- Remove the illegal server option from /etc/xinet.d/vnc and restart xinetd.
No window comes up
- Symptom
- After typing
vncviewer whatever:1
no window comes up
- Reason 1
- The firewall on the vnc server is active
- Solution 1
- Allow access for VNC on the firewall on the server or shut it down, e.g. for SUSE Linux:
rcSuSEfirewall2 stop
You only see a black screen
- Symptom
- You only see a black screen in vncviewer
- Solution
- Start yast -> System -> /etc/sysconfig editor -> Desktop -> Display manager -> DISPLAYMANAGER_REMOTE_ACCESS to yes and restart the display manager service with the command
rcxdm restart
root logins are not allowed
- Symptom
- When trying to log in as root you get the error message
root logins are not allowed
You have set AllowRootLogin=true in /usr/share/kde4/config/kdm/kdmrc or whereever you have to set it
- Reason
- The sysconfig contains a setting to allow or disallow remote root logins.
- Solution
- For SUSE, call yast2 -> System -> Sysconfig editor -> Desktop -> Display Manager -> DISPLAYMANAGER_ROOT_LOGIN_REMOTE and set it to "yes"