📜 ⬆️ ⬇️

Remote desktop + distributed commands =?

In the previous article, I briefly mentioned the use of remote desktop technology to organize the interaction of distributed teams. Now I would like to dwell on this topic in more detail, understand the limits of this technology and compare the most popular implementations.



Why use remote desktop technology?


I want to start by saying that, in my opinion, the smaller the percentage of network resources available only through a remote desktop, the better. If you can directly connect to the required network resources via a browser or another application on your mobile workplace, you need to use it. Agree, it is much easier than connecting to the server, which, in turn, will connect to the required resource.

But still, what makes an organization use remote desktop technologies?
')

Security


It is generally accepted that a connection using a “graphical” protocol is more controllable and secure. For example, due to the fact that moving and clicking the mouse on the graphical interface is easier to record and analyze (post-factum, or even in real time) than to listen and disassemble the “raw” network traffic.

In addition, usually between the mobile workstation and the remote desktop server is limited or generally closed file sharing. Therefore, it becomes difficult to “merge” a large amount of data without attracting the attention of the monitoring system and antivirus.

The attacker has only two options for “draining” information through the remote desktop - taking photos of each data upload screen, which is a bit tedious, you see. Either use the clipboard (Ctrl + C, Ctrl + V), but it has a limited amount, and, in general, can be prohibited between the mobile workstation and the remote desktop.



Autonomy


Some employees in the company may not have any physical workstations with a table, chair and computer at all. For example, if their work is connected with moving, and we occur, basically, in the territory of the customer. But, with all this, such employees need access to the internal systems of their company. With minimal risk of losing or compromising private data.

Then a remote desktop comes to the rescue - an employee connects to it from anywhere in the world from his laptop, or even from various customer computers in several offices.



Resource intensity


If you work with office documents, mail and video calls on a laptop or smartphone, then you should have enough power and battery for comfortable work. But, for example, if you are doing big data, transcoding video, or at least compiling programs from source code, problems may start in a mobile workplace. Although a stationary computer of average power copes with such tasks.

Exit - run resource-intensive tasks on a stationary work computer, monitor their execution from a mobile workplace.



Optimization of the cost of jobs


If you take the total capacity of all workplaces in a large company, look for disposal in time, most likely, even during working hours they will be underutilized (not to mention evening or night time). So that the resources are not idle, it is easier to concentrate this total power in one common distributed server, and only light and cheap terminals to access it (monitor, mouse, keyboard, minimum CPU, RAM and HDD) at workstations. As a bonus, at night on this server, you can run resource-intensive tasks, for example, load testing daytime assemblies, or mining Bitcoins :)



Cross-platform


Perhaps some applications you need work only with Windows code, or only through Internet Explorer, and you have a MacBook. Exit - connect to a remote desktop with the required operating system.

Another good idea is to use a class of applications such as local virtual machines (Virtual Box, VMware, Parallels ...), which should be discussed in more detail. Usually they run right on the mobile workplace, consume its resources, while providing a similar remote desktop interface. Although, the desktop is quite local here, when connected to it, the same schemes and laws work as to the remote one.



Disadvantages of Remote Desktop Technologies


Isolation


Most often, this deficiency occurs when the employee combines the remote desktop with the desktop of his device. It becomes inconvenient to switch between windows, drag objects (drag & drop), search for an open application in two places, work with files. The ideal option is to use only remote desktop in work, to use the mobile device only as a terminal. Or use the remote desktop to solve infrequent, autonomous tasks, for example, schedule a vacation calendar once a year.

Responsiveness of the interface


Although modern networks are very fast and stable, you should not underestimate the factor of communication problems. For example, this applies to the mobile Internet, especially on the road while moving a mobile phone. If you put on this possible “brakes” of the interface on the most remote server, the response time by pressing a key or moving the mouse can be uncomfortable for work.

The inability to customize


Usually, the user has administrator rights (at least local) on his laptop or smartphone, he can install additional programs or customize them for himself. If the workplace is on a remote server, it is most likely that it is managed by a team of administrators who are not always ready to share the rights to configure.

For an organization, the easiest way is to create configurations not for a specific employee, but for the specialization of employees (all field managers, all Java developers, all designers ...). Thus, if you and your colleague write in Java, he likes Eclipse, and you have Intellij IDEA, you first need to negotiate with administrators about installing both development environments. And then solve the issue, for example, about the default application for * .java files.

Screen resolution scaling


Most often, the resolution of the remote desktop may be greater than the resolution of your laptop. It's one thing when you change the resolution on a computer; all applications organically adapt to it, launch optimization, font smoothing, etc. Another thing is when a remote desktop client asks the server to transfer an image to it in another resolution, in the process optimizing it again. It may turn out not quite smooth, beautiful picture. Especially if there is a task to take a screenshot - most likely there will be three different results: seeing the eye on the screen, a picture through a remote program, a picture through a local program.

Overview of Remote Desktop Technologies


This review will not claim completeness and objectivity, since there are so many implementations on the market, it is almost impossible to keep track of them. But will claim for validity, since the author in practice used each of them for a noticeable period of time. And the review will be conducted from a position of convenience in the work of an ordinary user, and not the admin of the system, or an organization using these technologies.

Radmin


One of the first programs for working with remote desktop under Windows from the late 90s. Many subsequent remote desktop implementations took Radmin as a basis. It has basic functions: viewing the screen (perhaps in the process of working with the user, sometimes even without his knowledge), working with a remote desktop, transferring files, restarting / shutting down a remote computer.



Microsoft Remote Desktop


Enters into standard delivery of Windows under the name "Connection to a Remote Desktop". A similar Radmin standard feature set, well integrated into Windows. Although it has a very good implementation for macOS.


VMware Horizon


It supports two-factor authentication through a one-time password on a software or hardware token. Another catchy feature is the ability to prohibit the transfer of the clipboard from a remote desktop to a local one.

Like most of the following applications, VMWare Horizon has a version for tablets and even smartphones. But their use for everyday work looks dubious. Still, so far, the operating systems of computers are focused on working with the keyboard and mouse to a greater extent than touching the screen.



Apple Screen Sharing


In the ecosystem, Apple allows you to remotely connect to the desktop of servers on the macOS platform, for example, on a Mac Pro or Mac Mini, to which a monitor, keyboard and trackpad are not always additionally installed.



Citrix XenDesktop (+ StoreFront)


It allows you to get remote access not only to the server's desktop, but even to its individual applications:



Moreover, each such remote application lives in a separate window (not necessarily full-screen), which is adjacent to the windows of local applications, which creates the effect of a deeper presence:



In addition, the product contains a ready-made module for creating and maintaining a VPN tunnel (Citrix Receiver), conveniently integrated with the remote desktop application:



Of the nice features is the binding of the Ctrl keys to Cmd, when you connect from the client on macOS to the server on Windows.

The technology works as an application in the operating system, and from a browser that supports HTML5.

Parallels Desktop


This product belongs to the class of desktop management is not remote, but quite a local machine, moreover, virtual. Parallels Desktop is interesting in that it was the first attempt to build both local applications and virtual windows on one desktop. It turns out that next to the Finder window on macOS, there may be a Paint window on Windows and look quite natural.

The scope of this product is the simultaneous operation of applications from different operating systems. For example, Microsoft Internet Explorer or Visio is simply not available under macOS, but periodically you may need to check the layout of the site, or open a diagram, without restarting the computer.



Chats


Again, the next class of applications is not about remote desktop management, but about showing your desktop to one or several chat participants. This technique is good if listeners want to see an example of how a person works on a computer that can be hundreds of kilometers away, while at the same time hearing his voice.

Slack, Cisco Jabber, Atlassian HipChat / Stride, Zoom.US.



Total


In conclusion, I want to say that the tasks of broadcasting and managing a remote desktop are many. Of course, there is nothing better to go to the computer, standing on the table, start working on it. But often this is not possible, this computer is far away, the described techniques and approaches are created to smooth out this deficiency and complete the work of remote employees.

What are your impressions of the listed software solutions?
Do you have favorite solutions that are not listed in this article?

Source: https://habr.com/ru/post/338100/


All Articles