By: Sadequl Hussain | Updated: 2017-11-21 | Comments (1) | Related: More >Database Administration

  1. When keyboard input grabbing is enabled, all keyboard events (including special keyboard shortcuts) are sent to the remote desktop instead of being used on the local desktop. This configuration stops working correctly if the active Space gets changed while the NoMachine client window is in fullscreen mode (e.g. Through four fingers pad swiping).
  2. Download NoMachine For Mac 6.3.6 for Mac. Fast downloads of the latest free software!
  3. NoMachine For Mac 4.2.27 Released: 3rd Nov 2020 (a few seconds ago).
For
Problem

I am a system administrator / DBA using a Windows laptop. I can remotely connectto our Windows servers from my laptop. Some of my colleagues are using non-Windowssystems like Mac or Linux. Sometimes they also need to access these boxes. How canthey connect?

Get started with NoMachine. Download and install the software for your operating system on the computer or device you are connecting from and on the Windows/Linux/Mac computer you want to connect to. You can easily share a remote desktop or control a server over any network.

Solution

System administrators or DBAs often need to access Windows servers remotely.This can be for various reasons like:

  • Troubleshooting low disk space
  • Running Performance Monitor or Profiler
  • Monitoring Windows Event Viewer
  • Applying service packs
  • Creating and troubleshooting scheduled Windows jobs
  • Installing software like SQL Server
  • Connecting to another instance from a “jump host”
  • Administering Active Directory
  • Etc.

Windows ships with a tool called the “Remote Desktop Client” to helpconnect to another Windows machine. However, there are users who do not use a Windowsworkstation. Particularly with the spread of open source databases, cloud technologiesand the need for accessing Linux servers, a lot of engineers now use an Apple MacBookor Linux distributions like Fedora or Ubuntu.

Some of these engineers and administrators may need to access Windows hosts.It would make their job much simpler if they had tools similar to the RDP client.

In this tip we will talk about a few remote desktop clients available for Macand Linux. We will talk about their ease of use, features, etc. In a future post,we will talk about Mac and Linux-based database client tools.

Disclaimer

Please be careful when accessing production servers remotely. In most cases,organizations have strict security principles about who can access their servers,so readers need to follow those guidelines. Also, you should not run any commands,queries, or configurations from this tutorial on a production server. In the casewhen you are required to access remote servers and run commands, make sure you areconnected to the right server.

Although we list a number of remote clients from various vendors, this is byno means an exhaustive list. Nor do we endorse any of the products or have any affiliationwith their vendors. The observations made here are purely those of the author.

Also, this tip is not about how to install and configure remote desktop clients.Each software installer package will have its own requirements and dependenciesfor different operating systems; it’s not possible to address every issuewhere the package may be failing to install or the client failing to connect toa remote server. This is more of an overview of the tools available.

Remote Desktop Clients

Before going into details, let’s talk about the features we want in a remotedesktop client. We wanted tools which:

  • Are free / open source or at least have a community edition available
  • Have active development or product support
  • Can map local resources like disk drives or folders to the remote machine
  • Allow saving remote desktop sessions for easy future connection
  • Allow different screen resolutions
  • Enables clipboard sharing between local and remote machines

With these features in mind, let’s first see what’s available forMac users.

Mac

Mac Clients

Microsoft Remote Desktop

For Mac users, Microsoft has released the Microsoft Remote Desktop app, downloadablefrom theMac App store. The application features connection saving, easy searching ofsaved connections, connectivity to Azure RemoteApp and remote resources:

Creating a new connection is fairly simple and intuitive:

Standard features like mapping local directories to remote machine, sound andprinter forwarding are also present:

CoRD

Out next option for the Mac platform is CoRD,downloadable from its sourceforge site. CoRD is also easy to use and offers most features found in otherremote desktop tools.

The image below shows a local folder in a Mac system mapped to a remote Windowsmachine.

Royal TSX

Royal TSX is yet another tool available for Mac fromRoyalApplications. The latest version requires at least the Mac OS Yosemite operatingsystem.

What sets RoyalTSX apart is its ability to use plugins for different types ofconnectivity. These plugins are available from Royal Software as well. The remotedesktop client plugin is installed by default. Similarly, other connection typeslike VNC, SSH, HTTP or FTP can be installed with plugins, making it almost a universalconnectivity tool.

Royal TSX allows repetitive command tasks or key sequences to be run automaticallybefore, after or when a connection is made. The images below show this:

Some plugins allow Windows processes, services or events to be accessed remotely.However, this requires the RoyalTSX server component:

As the image below shows, connecting to a Windows server is fairly simple andstandard. The credentials for the connections need to be created first:

The free version of Royal TSX allows up to 10 remote connections. If you arenot managing dozens of Windows servers, the free version can be a good choice.

Linux Clients

Like Mac, there are remote desktop tools available for different flavors of Linux.To use these tools, needless to say, the Linux computer needs to be running in graphicalmode. Here are few of the tools to consider.

KRDC

KRDC or KDE Remote Desktop Client is available for Linux distros running K Desktop,like Fedora. The package is available from KDE repo, so it can be easily installedwith the following command:

KRDC has a simple interface. However, in our opinion, it lacks a basic featureexpected from any RDP client.

For example, once a connection is created, KRDC can “remember” theremote server’s username and password, provided it’s saved in the KDEWallet Manager application.

This obviously means installing another KDE application in your workstation.The default wallet it looks for is called “kdewallet” and in a vanillainstallation of KDE Wallet, users don’t know the password for that wallet,nor can they change it (at least we could not).

Nomachine Enterprise Client Download

This means when connecting from the KRDC tool, users will be prompted for thewallet’s password if the “Remember password (KWallet)” optionwas chosen. Since users would not know the password, they have to bypass this bypressing the “Cancel” button:

Nomachine Client For Mac

Bypassing the wallet password prompt will result in the tool asking for the remoteuser’s password. Not a show-stopper perhaps, but to most regular users thiscan be a time-consuming affair.

Remmina

In our opinion, this is one of the best tools available for debian-based Linuxdistros, and can be downloaded from theRemmina GitHubrepo of FreeRDP. Unfortunately the installation page does not list any RedHat-baseddistros except Fedora. If you are using something like Ubuntu, Gentoo, Fedora orArchLinux, this tool should be yours.

The two images below show a remote Windows desktop displayed in Remmina runningin Ubuntu 16.10:

Other than RDP, this tool also supports NX, VNC and SSH protocols:

Some of the advanced features of Remmina connection properties are shown below:

Like RoyalTSX for Mac, this tool also allows for startup programs to run whena connection is made.

FreeRDP

Another tool from the same repo owner is FreeRDP, a command line tool to startremote desktop sessions. This is available from theGitHubpage of the product. FreeRDP is available for Ubuntu, Debian, Fedora, and OpenSuSEin Linux distributions and for Mac and even Windows. As said, this is a commandline tool, but has a large number of options available as switches.

We installed the tool in a Fedora 26 machine and were able to connect to a WindowsServer. The actual command is xfreerdp and it’s located in the /usr/bin directory.The following code snippet shows a basic form of the command and its output. Inthis case, we can safely ignore the warning:

Other Remote Desktop Sharing Protocols

So far, the tools we have talked about all use the remote desktop protocol. Thisis a proprietary protocol developed by Microsoft and ships with any Windows machine.It runs on port 3389 by default. However, this is not the only protocol availablefor remote connections. We will talk about two other protocols:

  • VNC
  • NX
Full

VNC

VNC or Virtual Network Computing is a desktop sharing system using the RemoteFrame Buffer (RFB) protocol. Computers running a VNC server can be remotely connectedfrom other computers running a VNC client. This is a platform independent protocol,which means there are servers and clients available for Mac, Linux and Windows.This also means the same VNC client can connect to a remote Windows server or aLinux server, each of which could be running VNC as a service. In fact someof the RDP tools we have discussed so far like Remmina, KRDC or RoyalTSX - all featurea VNC client. The default port for VNC communication is 5900. For Java-based VNCclient, this is 5800.

Although VNC can be an alternative to remote desktop protocol, it means installationof additional software on the Windows server and configuring any firewall to allowtraffic on the VNC port.

There are various VNC client and server packages available for free, some ofthese are:

  • TightVNC
  • TigerVNC
  • RealVNC Home Edition
  • UltraVNC

The image below shows the UltraVNC service running in a Windows Server 2016 machine.We downloaded it from UltraVNC’sofficial site.

And here are some of the UltraVNC service configurations:

The image below shows how we are using a TigerVNC Viewer client from a CentOS7.16 machine to connect to the Windows server running UltraVNC.

NX

NX is another remote desktop sharing protocol developed by a company called NoMachine(there are also open source variants like OpenNX and FreeNX). The tool, also calledNoMachine, allows some cool features like recording the remote desktop sessionsor streaming remote multimedia. Unlike VNC or RDP, NoMachine does not have separatesoftware installers for client and server: a NoMachine install creates both thecomponents. Once NoMachine is installed in a Windows server, make sure the serviceis running and the firewall is allowing traffic through the default port of 4000.

In the image below, we can see the nxservice (NoMachine server) running as aWindows service:

The following series of images show a NoMachine client running in Fedora settingup a remote Windows server connection:

Once the connection is set up, subsequent connections are easy: just select theconnection icon and click on the “Connect” button:

Once the credentials are provided (here we are using password authentication),there are a number of options to choose from for logon, display, resolution, sound,multimedia, etc.:

As you can see, NoMachine provides lot of options to configure how you interactwith the remote computer. Once you click through the options, the remote desktopis shown as a locked screen:

You can now press Ctl+Alt+0 to bring out the NoMachine menu, click on the littleicon in the lower right corner and choose Ctl+Alt+Delete from the pop-up menu, thenclick on the “Done” button:

This will bring up the Windows logon screen where you can put the remote server’saccess credentials.

Conclusion

One thing to remember when troubleshooting remote desktop session issues is thenetworking layer. For any remote desktop connection to succeed:

  • The service component needs to be running in the remote machine, whetherit is remote desktop service, VNC or NX.
  • The remote server needs to have a network path from the client: for example,we cannot remote desktop into a server if it’s only accessible from abastion host.
  • The server’s firewall or other network protection layer has to allowremote desktop traffic coming from the client’s network. This is particularlytrue if the machine is running VNC or NX.
  • When running the Windows remote desktop protocol and client, the user needsto be a member of the remote desktop users local Windows group other groupswith higher privileges.
  • The network bandwidth needs to be good, particularly if there is a largegeographical distance between client and server.

We hope this tip has given you some ideas about choosing the right RDP tool.We leave it up to the reader to make their own choice. Feel free to comment aboutother non-Windows RDP clients you might be using in the comments section below.

Next Steps

If you are using a non-Windows workstation, consider the following:

  • Download and install the RDP clients we talked about
  • Test the limitations of the “free” editions; for example:
    • How many remote sessions you can keep open or
    • How many sessions you can save

Last Updated: 2017-11-21Nomachine

Nomachine enterprise client download


About the author
Sadequl Hussain has been working with SQL Server since version 6.5 and his life as a DBA has seen him managing mission critical systems.
View all my tips