VNC Configurator

Updated -

In many cases, you need to make your Red Hat Enterprise Linux(RHEL) server's desktop remotely accessible, so that you or your colleagues can control it from a different machine. Virtual Network Computing (VNC) is usually your best choice to achieve this goal. Though it is fully supported by all modern RHEL versions, VNC does not come with your server installation by default. In order to use it, you need perform several steps to install and configure it.

This app is designed to simplify the install and configure procedure for you. Answer a few questions, and the app will generate an all-in-one script optimized for you to install and configure the VNC service on your Red Hat Enterprise Linux server.

Was this helpful?

We appreciate your feedback. Leave a comment if you would like to provide more detail.
It looks like we have some work to do. Leave a comment to let us know how we could improve.

Get notified when this content is updated



Subscriber exclusive content

An active Red Hat subscription is required to participate.

Log In

Nice applications!
These are some typographical errors in v1.0.0 of VNC Configurator
1) avaliable -> available.
To be found in step 1 (both output and comment) and step 6 (output)
2) Passward -> Password
Found in step 3 (comment only)
3) infomation -> information
Found in step 6 (comment only)
There is also a small singular vs plural issue with the following sentence from step 6 -start quote- "echo "The avaliable link for VNC Client are:" -end quote-

Thanks Jorgen for the feedback. We will correct errors ASAP.


Looks like a good tool. A good addition would be help on configuring a VNC/SSH tunnel. Our security group really wants this, and I have not been able to get it working reliably.


Hi James, I use VNC from a Windows 8.1 desktop to RedHat over an ssh tunnel using Putty. Apart from getting the certificates working between the desktop and server there is nothing special that needs doing in the VNC config on the server.
On the client I run:
"C:\Path\to\Putty\plink.exe" -l username -N sessionName
sessionName is created in Putty as for a normal ssh sessions using keys plus under Connection/SSH/Tunnels add a Tunnel using source port 590x to destination port vnc.server:590x. Change x to be whatever port number the VNC server is running on. In the forwarded ports text block you should end up with a line that looks like
L590x vnc.server:590x

Then in your VNC client connect to localhost:590x and you have an encrypted VNC session.

I tried using various VNC clients that used encryption but couldn't get them to work with linux VNC server.

Hi James, a good suggestion. We will implement it in a future version.

difficult to use

Can you clarify? Is there anything that does not work for you?

Compare to windows RDC

  1. Not able to auto resize resolution base on dialog size
  2. Not able to copy files/folders from local to remote.
  3. User need to maintain different set of password.( VNC password and user password)

Hence difficult to use.

I agree with Hua Jie Yang. I have all the same issues and I know these issues are for another forum which I will check into later. I would like to say, for a secure encryption set up, I am dumbfounded that of all things there has to be another layer, "Putty" to add. Putty? I work in a huge PCI-DSS compliance shop and this is just a darned way of using remote desktop from Windows PC's which we all have to do. Not all of us are lucky enough to have linux desktops at work. The configurator is nice. Would like to see a real secure solution though.

Thanks and nice work.

Hi Aaron,
I can understand your pain, but the steps you see in the tool is all that we provide at this moment.

please how to remote red hat linus enterprise server 7.1 by using windows 7 x64 ?


please how to remote red hat linus enterprise server 7.1 by using windows 7 x64 ?


Hi hamed,
Thanks for your interest in this tool. follow the tool and you will see steps for Windows-based systems on the last page.

Great tool!!

Systemd does not like relative path here:


The home directory may not /home/sysman on all the machines, the system admin can specify the home directory when creating a new account. So although ~username is not the best practice for systemd, but we still have to use it to specify the home directory.

But then the config script should find out what the real homedir is and use that, otherwise systemd will still choke ono it.

'~username' is the primary way in Linux to find the home directory. It's the same with '/home/username' if username is created with default home directory. Do you encounter issue or failure when you configure VNC? If so, could you send the error message to me? My contact email is Thanks.


After running the script on the server, and vnc is running properly and can be connected with vncviewer, how I want to delete / modify the vnc configuration to change the resolution or windows manager ? If I rerun the script with after download a new setting will it overwrite the old vnc setting or just add another configuration ?, How to replace the old config with the new configuration ?

Hi Izauddin, I'm the developer of this tool. For your question about the vnc, basiclly this tool will overwrite the old configuration with the new configuration. But before you re-run the new script with new configuration, be sure you've already disabled and stopped the old vnc service.

To check the running vnc service:
vncserver -list

The VNC will list the opening sessions as:

TigerVNC server sessions:

:1      1507
:3      1484
:4      1515
:5      8513
:2      2157
Kill the running vncservice

And then kill each service with following command, X is the display number listed in the execution result of above command.

vncserver -kill :X

Verify whether the vnc service is killed successfully, please use:

netstat -anpt|grep 590

If any 590X port is found, that means the vnc session is still running.

Disable the vncservice

Also you need to disable the old vnc service to make it won't run automatically after rebooting with following command:

systemctl stop vncserver@:X.service

After the steps above, you can re-run the new vnc script and overwrite the previous vnc configuration.

Tq Shi,

Will test this

Rgds Din

This is really awesome. It wraps up about 2 days of research and breaking things for me and delivers most of the command line hammering into a badass little script. It may not be exactly what everyone needs all the time, but it's fairly straightforward to modify to your liking since 90% of the work has been done! Thanks for your time

Hi David,

Thanks a lot for your feedback! We are glad that the app is useful to you.

Thanks, Dong

Currently broken with RHEL 7.3 and tigervnc-1.8.0-5. Black screen after setting up tunnel - no desktop, no cursor, nadda.

Hi Dean, Can you try again? We experienced some network issue last night. I want to make sure if the problem is with the app itself, or was caused by the network issue. Do let me know if the problem can be reproduced.

Thanks, Dong

I opened a ticket and we are working on it. Still seems to be an issue.

OK. Let me know if it is determined to be a problem with this application.

I just got the script running but systemd threw an issue: "Oct 06 18:24:45 r7 systemd[1]: Unit vncserver@:1.service entered failed state. Oct 06 18:24:45 r7 systemd[1]: vncserver@:1.service failed. Oct 06 18:24:45 r7 polkitd[860]: Unregistered Authentication Agent for unix-process:3130:74031 (system bus name :1.84, object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale en_US.UTF-8) (disconnected from bus)"

Before this error, there was a complaint by systemd that the vicserver@.1.service file had execute permission. I fixed it and then came the polkitd error.


Hi Harish,

Thank you for reaching out to us. We will investigate the problem. Which version of RHEL are you running this script on to set up VNC service?

Thanks, Dong

It would be great if an ansible alternative could be provided. When adding more users later this script would simply replace all of the configuration potentially changing the ports each user has to use. An ansible role would allow you to add users without chaning existing configuration. But I can use the script as a basis to update my existing role.

Another useful addition would be to add restorecon -rv ~user/.vnc for all users.

Thank you for reaching out to us, this is an useful suggestion, we will add it to the application as soon as possible.