Access to Solaris Systems from Non-Solaris Systems through vnc and Xvnc
By user13333379 on Jun 22, 2007
Simple Access to Solaris Systems from Non-Solaris Systems through vnc and Xvnc
Many of Sun's software partners use Solaris systems as a backbone of their software development.
Most of them are using Windows desktops as developer work places. Accessing Solaris systems from these
Windows systems isn't straight forward. The developers typically use telnet or commercial X11 server/client tools for Windows.
Solaris 10 has some nice onboard features like xvnc which are very helpful for environments which don't have high security environments (like a developer, QA landscape). Xvnc plus a vnc client on Windows plus some minor Solaris configurations can make the graphical access to Solaris 10 system very comfortable.
The key idea of this setup is to be able to use a vncviewer to attach to a Solaris server without having explicitly started a vnc server before. The traditional approach is:
Perform a remote login on a Solaris system.
Start up a vnc server manually.
Attach then to the vncserver from your PC with a vncviewer.
This is a kind of cumbersome. A remote, automated launch of a vnc server can be automated by the following configuration change for all users. Edit the file /usr/dt/config/Xservers. This file is being used by the login manager to start the Xserver. It can start an Xvnc server by adding a configuration entry. Search for the following line:
:0 Local local_uid@console root /usr/X11/bin/Xserver :0 -nobanner
This line will start the Xserver. Add the line below to start a Xvnc server. The Xnc server is already part of a Solaris 10 installation.
:1 Local local_uid@console root /opt/sfw/bin/Xvnc -geometry 1024x768 -depth 24 :1
This is all it takes. Anyone who has vnc client software can now attach to the Solaris system by directing the vnc viewer to <Solaris host>:1.0 .
A user who is contacting the Solaris system from a remote vnc viewer will now get a standard login screen as seen below:
There's one caveat with vnc sessions. Many Solaris 10 users are using the standard Gnome desktop. It's a little bit difficult to configure the user account to make vnc pick a Gnome session as your work environment. Every user account who wants to get a Gnome desktop needs to configure the file <home directory>/.vnc/xstartup in the following way:
This is all it takes. This makes my vnc session look like my normal Gnome desktop:
This configuration bears some security risks and has some limitations:
Anyone who has an account on the Solaris system may use it with a vnc viewer.
Everyone who has a vnc viewer may attach to a session as a second “viewer”. This means that other people may watch and interact with the session. This may be desired for collaborative working. It may be a severe handicap for some who needs a private session!
Everyone is able to attach as a second user to an existing session without having to use the normal vnc password !
Killing the vnc session will not terminate the Solaris desktop session. Anyone can then attach to the Xvnc session without vncpassword and without Unix password authentification
Users will have to logout from the Solaris system in order to make sure that no one is claiming their desktop session.
Only one user can run such a vnc session at a time. Sessions for a second and third user can be configured by adding more lines in the Xservers file. Every new line will need a new session number 2,3, and so one.
The risks described here are the typical vnc limitations. This solution is not the right one for systems with sensitive data. It is however very helpful for software developers who want to work on Solaris servers. It allows software developers to share Solaris desktops in a collaborative way and it works from any Solaris, Linux, Windows or Mac workplace as long as there is a vnc client.