When I got my first VPS one of the first things I wondered was if there was actually any alternative to the regular RDP (Remote Desktop Protocol) and the native Windows Remote Desktop Service to access my VPS. Certainly you will see that a very large number of people actually choose not to use Windows native RDP solution in exchange for a Virtual Network Computing solution or VNC. Instead of using RDP, the Virtual Network Computing solution uses the RFB (Remote Framebuffer Protocol) which is different from its native Windows counterpart (RDP). On today’s post I am going to talk a little bit about VNC, what its advantages/disadvantages are and how you can set this up on your VPS to replace your current RDP access solution.
Accessing a VPS remotely usually implies that you will need to connect through some type of service which allows you to view your desktop, run programs, etc. The default solution for this is the windows RDP – mentioned above – which the majority of people use. However there are some important disadvantages to the use of the RDP protocol which can be summarized mainly as the generation of separate sessions for each user logon (kind of annoying), the lack of an intuitive file transfer method (you need to install FTP or email yourself files), the lack of multiple instances (you can only run one RDP session at a time) and less importantly you cannot handle multiple monitors with RDP. The lack of configuration options is also an important defect of RDP, giving the user only limited options on how he or she can configure the service.
The solution to all these problems comes from the VNC solution using the RFB protocol. This remote accessing program is free – in its UltraVNC implementation – and can be installed simply by downloading and installing a free server on your VPS and using the free client to access it from your home or work computers. The UltraVNC server is very easy to configure allowing you to setup a large variety of options without having to “hack” into the registry as we have with RDP. Using the UltraVNC server you can easily change the listening port, listening mode, timeout settings, etc.
There are of course important disadvantages and advantages when comparing VNC to RDP. In summary none of these two protocols are extremely secure by nature and long passwords of at least 8 characters – better more – need to be used to improve security (since network sniffing of a VNC connection may allow a hacker to bruteforce the VNC password if its too small). The best thing you can do here if you really want to be secure is setup your VNC connection through an SSH (Secure Shell) tunnel so that your transactions can be more highly protected.
The other advantage of VNC is that you have many implementations to choose from, apart from UltraVNC there are other free programs such as TightVNC which you can use, the extra competition means that VNC programmers make an extra effort to include better server implementations and clients while Microsoft doesn’t have to do this since they control the only RDP server. You can get different VNC clients for Windows, Mac and Linux, ensuring that you will have a myriad of free and commercial solutions to choose from to suite your needs (some of them including features like connection encryption, faster protocol implementations, etc). RealVNC for example offers a strong session encryption as part of their commercial program.
The greatest advantages of VNC however – when compared to RDP – have to deal with file transfering and user sessions. In some VNC programs (like UltraVNC) the file transferring is directly configured into the client so you can actually drag and drop files from your home or work computer into your VPS (who said convenient file transfer!) another great option is that you can actually configure your VNC client and server to handle new sessions in different ways, you can have the client always log into an existing session or you can make it create new sessions on each logon, whatever you wish to do in this regard can be done with VNC.
The main disadvantage of VNC is however the fact that it “copies” frames rendered by the host instead of rendering them directly, reason why VNC is less responsive than RDP. On the Microsoft solution the user experience is therefore better than with VNC since the computer almost always seems more responsive. You will then see that resource usage is generally higher with VNC and lower with RDP since RDP doesn’t do this in order to provide the user with images from the host computer but renders images directly as if the user was using the computer’s monitor.
Potentially how good or bad your VNC experience will be will depend on which specific client/server you use for it as each one has a slightly different implementation with its own set of different advantages and disadvantages. In general you can expect configuration and file transferring to be much easier and tunable while you will sacrifice some speed for these features (of course depending on which VNC client/server you use). However you can also have a better security experience with some commercial VNC implementations that have high encryption (haven’t found a strongly encrypted free one yet) but overall the use of complex passwords should act like a strong enough deterrent for most opportunistic hackers.
Overall VNC constitutes a real and sometimes preferable alternative to the RDP implementation depending on your actual needs. Looking for an adequate client/server commercial or free implementation that perfectly fits your needs will also determine how good your VNC solution fits what you want to achieve. If you already have a VPS with a remote accessing implementation you like and you would want to learn more about my work in automated trading system design and evaluation please consider joining Asirikuy.com, a website filled with educational videos, trading systems, development and a sound, honest and transparent approach to automated trading in general . I hope you enjoyed this article ! :o)