The decision of
Cendio ThinLinc in Russia has not yet received great fame, although it is gradually beginning to attract attention. We decided to publish a small review so that readers could appreciate the convenience of a software product under Linux.

ThinLinc is a software product that allows users to access desktops, files, and applications from a central server. Thus, the organization's computing resources are concentrated in the data center, and not distributed to end users. Possible failures and failures of client devices do not affect the integrity and integrity of data.
')
ThinLinc differs from most similar products in its Linux sharpening. The product was originally developed as a server for remote access to a PC on Linux OS, and since it proved its worth, Cendio decided to continue its development and support.
Although the ThinLinc server runs on Linux, users can run Windows applications and access the desktops of this OS. To do this, you need to connect Remote Desktop Services via RDP protocol. As a result, you can run Windows and Linux applications on the Linux desktop at the same time without switching between environments.
Here is how the combination of media on one screen looks like:
Running Windows in a separate window

Running a Windows application in "seamless" mode (the user can move or resize the application)

The ability to switch between Linux and Windows environments is preserved and provided for when logging in to a special menu.
However, again, the solution’s specialization is integration with Linux and the use of open source code. ThinLinc works best on platforms such as Red Hat, Ubuntu, and openSUSE.
ThinLinc uses a standard client-server model. Sessions are created on the ThinLinc server as instances of the Xvnc process. The X11 server, instead of sending the output to a physical screen, converts it into a VNC protocol and sends it to a TCP socket. The connection of standard X11-based environments and applications with this process is as if it were a regular X-server. The VNC client can then connect over the network (local or global) and display the content on a remote screen.
ThinLinc system architecture
The system architecture of ThinLinc adapts to the existing user architecture and makes it possible to build on the ThinLinc system with everything you need. Standard authentication is used to integrate with eDirectory, Active Directory, NIS, etc.
ThinLinc can be installed on one machine or in a cluster.
Cluster configuration allows you to evenly distribute the load between the agent servers that run sessions and applications, and also provides scaling and fault tolerance. Agent servers in a cluster are identical to each other, and if one of them fails, the others assume user sessions. In case of failure, you can configure the main server by switching it to standby capacity. This ensures duplication at all levels.
Thanks to load balancing, you can add servers as needed.
ThinLinc load balancing also extends to Remote Desktop Services.
- The main server ThinLinc (vsmserver), which acts as a session broker and gateway in a cluster, solves the following tasks: monitors and checks sessions, distributes the load across agents in the cluster, performs initial authentication, selects a terminal server, sends session information to the client.
- The ThinLinc agent (vsmagent) is responsible for starting and hosting the processes that make up the ThinLinc session, and establishes tunnels for graphics and local devices. Tunnels are multiplexed over an SSH connection per user.
- The ThinLinc client connects first to the main server, then to the agent that the main server deems most appropriate. When a client connects to the server, all traffic between them is encrypted over SSH, eliminating the need for VPN services and ensuring the security of the connection even over the Internet. The ThinLinc client can run on a variety of Linux, OS X, Windows, and other thin client platforms, including HTML5 clients launched via browsers.
Hardware component
Since all the computing power is focused on the server, it does not require the acquisition of expensive hardware for users, even when it comes to performing demanding tasks. The server itself can be both physical and virtual.
A variety of thin-client devices can be used with ThinLinc, such as outdated desktop computers, laptops, tablets, smartphones, and specially designed devices with minimal hardware requirements. Such devices consume little energy, require minimal maintenance and are characterized by low cost of ownership.
Alternatively, the company can use the BYOD model (bring your own device), in which employees use their own devices in the workflow.
ThinLinc supports local HDD and USB on the client.
Thanks to the ThinLinc architecture, client devices are as isolated as possible from the server. For example, if a user connects to a server from home from his laptop on which there is a virus, there is no chance that this virus will fall into the server environment.
Computing resources
The computing resources required for a ThinLinc cluster depend on the number of users, server hardware type, applications used by users, and so on. Based on user experience, you can give the following average figures:
- Disk. About 100 MB for software and data. Each active session usually requires less than 100KB (storage of session data and session history). In addition, disk space is required for the operating system, user applications, and logs.
- CPU resources and memory. The amount of processor resources and memory depends solely on the applications launched by users, user activity and the expected response time.
When ThinLinc is used only to access the Windows desktop via rdesktop, experience shows that it takes approximately 50-100 MHz and 20-50 MB per active user.
A full-featured KDE or Gnome desktop with normal running office and Internet applications (LibreOffice, Firefox, some graphics programs and open multimedia rich web pages) requires approximately 150-300 MHz per active user, and the expected memory size per user for such a desktop without applications is 100-200 MB *.
* Figures are based on the experience of customers using the Intel Xeon 7140M (Netburst). For other processors there will be other numbers.
Among other amenities, ThinLinc implements the principle of hot-desking, in which employees do not have seats assigned to them, and access to the desktop is provided from any client connected to ThinLinc. Closed sessions in one place open from another place in the same form up to the position of the cursor.
To work in a corporate network outside the organization from foreign client devices, the user only needs a flash drive with a ThinLinc client loaded on it. The client can also be downloaded to a smartphone and connected to the ThinLinc server via mobile networks.
With ThinLinc, remote printing is possible, and there is no need to install special drivers on the server.
ThinLinc requires minimal effort and time to install and configure. ThinLinc automatically detects the Linux distribution and installs all the missing software packages from the data store. During installation, the firewall, print queue, etc. are configured.
Installing ThinLinc includes downloading server and client parts from the developer's site
www.cendio.com , for which you must enter your email address. A link to the distribution will then be sent to this address. Free ThinLinc can use no more than five simultaneous users.
After installation and configuration, in which you basically only need to click the “next” button, you get a fully functional ThinLinc system.
For large clusters with multiple servers, ThinLinc installation can be automated using configuration files.
The system allows using various authentication mechanisms: static or one-time passwords, RADIUS protocol, public key authentication, Kerberos protocol.