Installing and Setting Remote Desktop Access for Linux Mint PCs - Illustrated for Total Beginners

Write tutorials for Linux Mint here
More tutorials on https://github.com/orgs/linuxmint/discu ... /tutorials and (archive) on https://community.linuxmint.com/tutorial
Forum rules
Don't add support questions to tutorials; start your own topic in the appropriate sub-forum instead. Before you post read forum rules
JezekiljMonk
Level 3
Level 3
Posts: 106
Joined: Mon Dec 30, 2019 7:33 am
Contact:

Installing and Setting Remote Desktop Access for Linux Mint PCs - Illustrated for Total Beginners

Post by JezekiljMonk »

***
Modifications related to LMDE5 and Linux Mint 21.x are discussed in this post:
viewtopic.php?p=2161476#p2161476

Fully automated installer and configurator for x11vnc Server is available here
viewtopic.php?p=2306677#p2306677

and fully automated installer and configurator for VINO server is here
viewtopic.php?p=2311767#p2311767
***
The goal of this tutorial is to give practical guidance to Linux mint users without much experience with remote desktop access who need to either remotely access their machines with graphic user interface (GUI), or who might need someone more experienced accessing their PCs when whatever kind of help or assistance is required, or maybe even both.

Linux OSes almost exclusively use VNC protocol. VNC stands for Virtual Network Computing. Linux machine that needs to be accessed requires application/service known as VNC server, while machine from which we are accessing (and this can be virtually any OS) needs VNC Viewer. The same Linux machine can have both Server and Viewer running and establish connections both ways. On other side Windows uses RDP protocol (stands for Remote Desktop Protocol), and when Linux machine needs to access Windows machine it likewise requires RDP Viewer. Applications like Remmina (available in Linux Mint Software Manager) can cover both protocols, and some more. There is also a "headless" access like SSH tunnels, but this tutorial is not covering it, since it is not for beginners. I am only a little over two years in Linux waters and just trying to facilitate the "conversion" of ex-windows users switching to Linux Mint knowing of what I went through and how painful sometimes this was. Of course whenever I hit the wall I would ask for help on Linux mint forums and it would come eventually, but the normal way is to try first yourself with what is available on Internet. So hope this would save some time for some folks.

Let me also mention here that VNC protocol is way safer since you can use a password that has nothing to do with credentials of your user account, while RDP requires you to know and enter full credentials of an account existing on Windows OS, that is both Username and Password. With VNC you stay logged-in all the time and can follow what is going on and learn. With RDP when you give access you are logged-out and have no idea what is going on.

Yes, there are also third-party applications over Internet like Team Viewer, but I personally don't trust them.

Now let's start with listing VNC servers that can be interesting for Linux Mint users and give some of their main characteristics:

1. vino

2. x11vnc

3. tigerVNC (now evolving into turboVNC)

Well, I initially worked with vino, then also with x11vnc, but have never even tried with tigerVNC. The reason that got me scared is the following link

https://tecadmin.net/setup-x11vnc-serve ... -linuxmint

especially the comments down bellow. Somehow it seemed like I didn't need it and could have everything way more easily set with the first two VNC servers. Of course, I am open to listen if someone could point to benefits of tigerVNC server and how to properly install it on Linux Mint without worrying about any of the problems listed in the comments area of the above link.

So I will concentrate on first two and give here all the details of how to properly install, set, run and especially automatically make them available on system start/restart.

But first let me mention the main characteristics - advantages and disadvantages - before a beginner/newbie might make his choice of which VNC server to install:

1. vino can't start before any user logs/signs into his account. That is major problem when you need to remotely restart your computer and then again remotely work on it. On other side there are many advantages like: user can easily control whether whoever wants to connect requires or not his permission to connect, all the time user sees who is connected as there is tray icon (although some options don't work when you click the tray icon, still with right-mouse click you can disconnect connected PC easily). Password can be easily changed, alternative port can be switched on/off and separately defined. In plain English User decides who accesses his PC and when and with what password and even through which port. None of these settings require sudo privileges when a change needs to be make. Even simpler this VNC server is ideal when you only need someone remotely and occasionally accessing your machine in order to help you when you get stuck with any kind of problem.

2. x11vnc has the main advantage in being able to start even before you first time log into your account. This is mainly needed when only one person accesses Linux machines where normally no-one is present at the time. Like when you travel somewhere and need to access your home PC and nobody is there at the time. Of course, you additionally need in one such case a VPN tunnel between the PC you travel with and the local server at your home, but that is task for your administrator not in the scope of this tutorial. Main disadvantages of x11vnc on other side is that you can not control that easily who exactly accesses your PC, and you won't even see a tray icon or notification when someone connects. Some people might object here that this is not true and that man pages of x11vnc offer the option --display and a possibility to display tray icon. Well, I read through man pages (which are really ample) and for many days tried to get the tray icon and notifications working, and searched a lot on Internet about it, but on my Linux Mint I wasn't able to get anything working, so as previously said I am open to listen to another tutorial that might explain this aspect. Changing password in x11vnc does not require sudo privileges, but every other change requires it. As a conclusion this VNC server is ideal when only one person accesses particular PC remotely.

3. In some rare cases you might actually need to combine both the possibilities: to have an easy access, like when you want to access your own Linux Mint machine remotely, but also a controlled access when you might need an assistance from someone else. More than a year ago I read somewhere that on one Linux machine you can not run simultaneously both vino and x11vnc server. Recently I decided to check myself if this is really true and it turned out not to be true. Both of these servers can run simultaneously as long as different ports are assigned to them. This will be also mentioned in this tutorial and advantages of both VNC servers can be combined.

If you are running your Linux as a Virtual Machine you will additionally have in the settings for your virtual machine a possibility to turn on a vRDP sharing, that is basically RDP server you don't even need to install just to turn on.

1. VINO VNC SERVER - Installing and Setting

Hope the introduction did not scare you away and let us now go directly to installing and setting, once we know what we exactly want.

a) Simply open your Software Manager, type vino in the search field, and then click on it and on install. Type in your sudo password and wait for it to install.

Image

Image

Image

Don't worry that you don't see anything if you look for it among the available applications.

Image

To make vino-server work after sign-in we will need to add a simple command line to Startup Applications. So, left-mouse click on menu icon at the bottom left corner of your screen and start typing 'start'. As soon as you see Startup Applications click to open it.

Image

Click on the '+' icon and then choose 'custom command' option

Image

in the 'Name' field type anything you like, in the comment you may optionally type also anything you might like, but it is important that in the 'Command' field you type exactly

Code: Select all

/usr/lib/vino/vino-server
I would recommend you also set a short startup delay, like 1 or 2 seconds.

Image

click 'Save' then close the 'Edit Startup Program' window then while 'Start Vino' is selected (or whatever name you gave it) click on the gears sign to start it for the first time. Next time you reboot your PC and log-in it will start automatically so we are doing this only once.

Image

Now you can also close 'Startup Applications' window.

In the next step, which is initial settings, we will need to open Terminal (Ctrl + Alt + 'T' or click on the icon in the panel)

paste and run following lines in Terminal. You can do it in one step, no need to go line by line.

Code: Select all

gsettings set org.gnome.Vino prompt-enabled false
gsettings set org.gnome.Vino authentication-methods "['vnc']"
gsettings set org.gnome.Vino require-encryption false
gsettings set org.gnome.Vino vnc-password $(echo -n '1111'|base64)
gsettings set org.gnome.settings-daemon.plugins.sharing active true
eths=$(nmcli -t -f uuid,type c s --active | grep 802 | awk -F  ":" '{ print "'\''" $1 "'\''" }' | paste -s -d, -)
gsettings set org.gnome.settings-daemon.plugins.sharing.service:/org/gnome/settings-daemon/plugins/sharing/vino-server/ enabled-connections "[ $eths ]"
Image

Later on we will play with changing 'prompt-enabled', 'vnc-password', 'alternative port', 'enable alternative port', but we will never change options like 'authentication-methods', 'require-encryption', how and where to listen for connections. Maybe someone could point us all how to use Vino server with GUI and with full encryption from both ends? I wasn't able to find it.

Also don't worry about the initial password we will soon be able change it. I left the possibility to change sharing active or not possibility, but it did not count to anything.

Now our PC can receive connections and our Desktop can be visible for someone whose assistance we might need. On other side they need to install a VNC Viewer application. I recommend REMMINA from Linux Mint Software Manager. Connection is then set like this>
Protocol is Remmina VNC Plugin
Server is your PC's IP address followed with :<port number> if it is different than the default value 5900, otherwise it is just PC's IP. You provide this for someone whom you need to connect remotely to your machine.
Password can be entered here or later when you attempt connection. Color depth and quality is your choice. If you or your friend are not connecting locally you should avoid the best quality and color depth.

Image

Now when it comes to making changes to settings you have a standard option through terminal. From the above given Code you should now only extract a line you want to change (for example the password or prompt-enabled) and type it with the value changed. I also prepared a simple Python3 script to facilitate setting Vino at any point.

You can download it here:
https://www.dropbox.com/s/8sycj72dji67g ... no.py?dl=0

Detailed explanations:
https://www.dropbox.com/s/5v6inhm93scxm ... ained?dl=0

Both in a zip file:
https://www.dropbox.com/sh/is70aa432kg0 ... o6dYa?dl=0

You don't need to sign in to Dropbox to download any of these files. You can simply refuse to do so and then click on download icon. As a beginner I guess you just need the first of the three links.

Image

A few more steps so that you could use this python3 script in the intended way, which is from Gnome-terminal.

Right-click with mouse on the Linux Mint 'Menu' icon in the bottom-left corner of your Cinnamon Desktop and then click on Configure. Then click on the Menu Tab in the upper part of the Menu window and finally on 'Open the menu editor'

In the left part of screen click on any category and then on icon 'New Item'. Give a name to your new application (I gave Easy-Set-Vino in my example. Then use the 'Browse' icon to navigate to the script with .py at the end, that you have just downloaded (first you can place it of course in a different folder) and click on it. Then add in the Command line 'python3' followed with a blank space. By all means check the field 'Launch in Terminal' as otherwise we won't see anything.

Image

Click OK. And at the end it should look something like this, although it may be in any category as already mentioned.

Image

At the end close Menu Configurator and start this script from the Menu.

Image

You should get something like this:

Image

If you select from options 1,2 or 4 the script will simply revert the current setting (from true to false or from false to true). Option 3 give you a possibility to select alternative port in range 1024-49150 and finally option 6 give you possibility to enter new password (digits, small letters, capital letter, special signs).

You will be in the loop for as long as you need to change something, then finally when you enter '5' you will be out.

Stopping vino VNC server can be achieved through Terminal. You need to type:

Code: Select all

ps aux | grep vino
Then find the line that ends with /usr/lib/vino/vino-server and note the process ID number at the beginning of this line. Then type in Terminal

Code: Select all

kill -9 <PID>
where <PID> is that number.

For restart just type

Code: Select all

/usr/lib/vino/vino-server
2. x11vnc SERVER - Installing and Setting

Basically this topic covers it all

https://tecadmin.net/setup-x11vnc-serve ... linuxmint/

In short:

Open Terminal and type line by line

Code: Select all

sudo apt-get update
sudo apt-get install x11vnc net-tools
Then enter and store password

Code: Select all

x11vnc -storepasswd
Start the service with: (change the bath to your home folder, so instead of 'rahul' put the name of your 'useraccount'

Code: Select all

sudo x11vnc -auth guess -forever -loop -noxdamage -repeat -rfbauth /home/rahul/.vnc/passwd -rfbport 5900 -shared
To enable auto-start at system boot-up type

Code: Select all

sudo xed /etc/systemd/system/x11vnc.service
A blank text file should open with sudo privileges. Paste following code into it:

Code: Select all

[Unit]
Description=x11vnc remote desktop server
After=multi-user.target

[Service]
Type=simple
ExecStart=/usr/bin/x11vnc -auth guess -forever -loop -noxdamage -repeat -rfbauth /home/rahul/.vnc/passwd -rfbport 5900 -shared

Restart=on-failure

[Install]
WantedBy=multi-user.target
replace 'rahul' with your own UserAccount name. Click 'Save' and close this document. You will be back in Terminal.

Now continue in Terminal:

Code: Select all

sudo systemctl daemon-reload
sudo systemctl start x11vnc
sudo systemctl status x11vnc
If it says it's active type this

Code: Select all

sudo systemctl enable x11vnc.service
Now you have fully running x11vnc server that anybody who knows the password could access and that is operational even before you log-in to your User Account.

Note that we put port 5900 when we first started it and also in the x11vnc.service file, but it can be another port as well.

If at some point you want to stop/start/restart this service just type one of these lines

Code: Select all

sudo systemctl start x11vnc
sudo systemctl stop x11vnc
sudo systemctl restart x11vnc
3. Using Vino and x11VNC servers simultaneously

As said before just make sure that you don't use the same port, which by default is 5900. x11VNC is ideal for your own use, while Vino is ideal when you need assistance.
Last edited by JezekiljMonk on Tue Mar 19, 2024 12:47 pm, edited 4 times in total.
JezekiljMonk
Level 3
Level 3
Posts: 106
Joined: Mon Dec 30, 2019 7:33 am
Contact:

Re: Installing and Setting Remote Desktop Access for Linux Mint PCs - Illustrated for Total Beginners

Post by JezekiljMonk »

Hello everyone!

I just realized that a better way to start vino-server after first sign-in (after reboot not after installation) is actually to write following line in the 'Startup Applications' instead of /usr/lib/vino/vino-server please replace with

Code: Select all

systemctl --user start vino-server.service
This actually gives us a possibility to start/stop/restart/check status of vino-server way more easily.

Code: Select all

systemctl --no-pager --user status vino-server.service -l
systemctl --user stop vino-server.service
systemctl --user start vino-server.service
systemctl --user restart vino-server.service
In accordance to this I have added additional options to python3 script 'Easy-Set-Vino'

If you have already set everything to run Easy-Set-Vino just open your python3 script (Text editor would do if you don't have IDLE or something like it) and replace the entire code with the following code

Code: Select all

# -*- coding: utf-8 -*-
import base64, os, subprocess, time
from gi.repository import Gio, GLib
from getpass import getpass
gso=Gio.Settings.new("org.gnome.Vino")
gso2=Gio.Settings.new("org.gnome.settings-daemon.plugins.sharing")
G_True=GLib.Variant.new_boolean(True)
G_False=GLib.Variant.new_boolean(False)
while True:
    prompt_enabled=gso.get_value("prompt-enabled")
    print ("1. prompt is enabled is: ",prompt_enabled)
    sharing_is_active=gso2.get_value("active")
    alternative_port=gso.get_value("alternative-port")
    use_alternative_port=gso.get_value("use-alternative-port")
    print ("2. Vino sharing active is: ",sharing_is_active)
    print ("3. Alternative port is: ", alternative_port)
    print ("4. Alternative port is used is: ",use_alternative_port)
    print()
    print("Type 1-4 to change registers listed 1-4,\n5 for exit,\n6 for new vino VNC password\n7 Detailed Vino-server Status\n8 Stop Vino-server\n9 Start/Restart Vino-server")

    izbor = '0'
    while izbor not in  {'1','2','3','4','5','6','7','8','9'}:
        izbor=input('your choice:')
    if izbor=='1':
        if prompt_enabled:
            gso.set_value("prompt-enabled",G_False)
        else:
            gso.set_value("prompt-enabled",G_True)
    elif izbor=='2':
        if sharing_is_active:
            gso2.set_value("active",G_False)
            print('Register value has been changed but VNC server will be still operational')
        else:
            gso2.set_value("active",G_True)
    elif izbor=='3':
        new_alternative_port=input('New alternative port:')
        if new_alternative_port.isdigit() and int(new_alternative_port) in range(1024,49150):
            new_value=GLib.Variant.new_uint16(int(new_alternative_port))
            gso.set_value("alternative-port",new_value)
        else:
            print('incorrect input')
    elif izbor=='4':
        if use_alternative_port:
            gso.set_value("use-alternative-port",G_False)
        else:
            gso.set_value("use-alternative-port",G_True)
    elif izbor=='5':
        break
    elif izbor=='6':
        print('enter new password>')
        new_pass=getpass()
        new_pass_bytes = new_pass.encode('ascii')
        base64_bytes=base64.b64encode(new_pass_bytes)
        base64_passwd=base64_bytes.decode('ascii')
        new_passwd=GLib.Variant.new_string(base64_passwd)
        gso.set_value("vnc-password",new_passwd)
    elif izbor=='7':
        report=subprocess.run(["systemctl", "--no-pager", "--user", "status", "vino-server.service", "-l"],stdout=subprocess.PIPE, text=True)
        print ()
        print (report.stdout)
    elif izbor=='8':
        os.system("systemctl --user stop vino-server.service")
        report=subprocess.run(["systemctl", "--no-pager", "--user", "status", "vino-server.service", "-l"],stdout=subprocess.PIPE, text=True)
        print ()
        print (report.stdout)
    elif izbor=='9':
        os.system("systemctl --user restart vino-server.service")
        report=subprocess.run(["systemctl", "--no-pager", "--user", "status", "vino-server.service", "-l"],stdout=subprocess.PIPE, text=True)
        print ()
        print (report.stdout)
    print('===================')
    time.sleep(2)
            
Or download
https://www.dropbox.com/s/i7fp7ed640jfu ... v2.py?dl=0
than just adjust application launcher to point to the new script, or delete previous script, rename this one to have the same name and paste it where previous script was, whichever is easier for you.

Once again I will mention that changing register value 'sharing is active' (option 2) does nothing in reality, but option 8 will stop vino-server and option 9 will start/restart it again.
JezekiljMonk
Level 3
Level 3
Posts: 106
Joined: Mon Dec 30, 2019 7:33 am
Contact:

Re: Installing and Setting Remote Desktop Access for Linux Mint PCs - Illustrated for Total Beginners

Post by JezekiljMonk »

MODIFICATIONS related to LMDE5 - Elsie and LinuxMint 21.x - Vanessa ...

Once Elsie has been released I checked the tutorial against some possible changes.

Most notably the VINO VNC server has been upgraded to version 3.22.0-6 and with this one change occurred. It is related to this class and register:

Code: Select all

gsettings set org.gnome.settings-daemon.plugins.sharing active true
It was mentioned in the first tutorial that changing the value between true and false has no effect on Vino VNC server. So now this register and the entire class were removed. By trying to set them you will get an error, so simply omit this line when you are first setting Vino. I have also adjusted the python3 script that helps you set Vino VNC server way more easily, even gives you an option to make initial settings though this script without any worry.

Here it is:

Code: Select all

# -*- coding: utf-8 -*-
import base64, os, subprocess, time
from gi.repository import Gio, GLib
from getpass import getpass
gso=Gio.Settings.new("org.gnome.Vino")
G_True=GLib.Variant.new_boolean(True)
G_False=GLib.Variant.new_boolean(False)

while True:
    prompt_enabled=gso.get_value("prompt-enabled")
    print ("1. prompt is enabled is: ",prompt_enabled)
    alternative_port=gso.get_value("alternative-port")
    use_alternative_port=gso.get_value("use-alternative-port")
    print ("2. Alternative port is: ", alternative_port)
    print ("3. Alternative port is used is: ",use_alternative_port)
    print()
    print("Type 1,2,3 to change registers listed 1-3;\n4 for initial setting;\n5 for exit;",
          "\n6 for new vino VNC password;\n7 Detailed Vino-server Status;\n8 Stop Vino-server;\n9 Start/Restart Vino-server")
    izbor = '0'
    while izbor not in  {'1','2','3','4','5','6','7','8','9'}:
        izbor=input('your choice:')
    if izbor=='1':
        if prompt_enabled:
            gso.set_value("prompt-enabled",G_False)
        else:
            gso.set_value("prompt-enabled",G_True)
    elif izbor=='2':
        new_alternative_port=input('New alternative port:')
        if new_alternative_port.isdigit() and int(new_alternative_port) in range(1024,49150):
            new_value=GLib.Variant.new_uint16(int(new_alternative_port))
            gso.set_value("alternative-port",new_value)
        else:
            print('incorrect input')
    elif izbor=='3':
        if use_alternative_port:
            gso.set_value("use-alternative-port",G_False)
        else:
            gso.set_value("use-alternative-port",G_True)
    elif izbor=='4':
        os.system("gsettings set org.gnome.Vino prompt-enabled false")
        os.system("gsettings set org.gnome.Vino authentication-methods \"['vnc']\"")
        os.system("gsettings set org.gnome.Vino require-encryption false")
        os.system("eths=$(nmcli -t -f uuid,type c s --active | grep 802 | awk -F  \":\" '{ print \"'\''\" $1 \"'\''\" }' | paste -s -d, -)")
        os.system("gsettings set org.gnome.settings-daemon.plugins.sharing.service:/org/gnome/settings-daemon/plugins/sharing/vino-server/ enabled-connections \"[ $eths ]\"")
        os.system("gsettings set org.gnome.Vino use-alternative-port false")
        
    elif izbor=='5':
        break
    elif izbor=='6':
        print('enter new password>')
        new_pass=getpass()
        new_pass_bytes = new_pass.encode('ascii')
        base64_bytes=base64.b64encode(new_pass_bytes)
        base64_passwd=base64_bytes.decode('ascii')
        new_passwd=GLib.Variant.new_string(base64_passwd)
        gso.set_value("vnc-password",new_passwd)
    elif izbor=='7':
        report=subprocess.run(["systemctl", "--no-pager", "--user", "status", "vino-server.service", "-l"],stdout=subprocess.PIPE, text=True)
        print ()
        print (report.stdout)
    elif izbor=='8':
        os.system("systemctl --user stop vino-server.service")
        report=subprocess.run(["systemctl", "--no-pager", "--user", "status", "vino-server.service", "-l"],stdout=subprocess.PIPE, text=True)
        print ()
        print (report.stdout)
    elif izbor=='9':
        os.system("systemctl --user restart vino-server.service")
        report=subprocess.run(["systemctl", "--no-pager", "--user", "status", "vino-server.service", "-l"],stdout=subprocess.PIPE, text=True)
        print ()
        print (report.stdout)
    print('===================')
    time.sleep(2)
            
Last edited by JezekiljMonk on Wed Nov 09, 2022 2:05 am, edited 1 time in total.
Torev
Level 1
Level 1
Posts: 4
Joined: Tue Oct 18, 2016 10:35 pm
Location: New Caledonia

Re: Installing and Setting Remote Desktop Access for Linux Mint PCs - Illustrated for Total Beginners

Post by Torev »

Hi,
Thank you for this great tutorial ! :D :D :D
JohnML
Level 1
Level 1
Posts: 35
Joined: Sat Mar 20, 2010 1:13 pm
Location: frankfurt, germany

Re: Installing and Setting Remote Desktop Access for Linux Mint PCs - Illustrated for Total Beginners

Post by JohnML »

Thank you so much !!!!!!!!!!!!!!!!!

After days of nonsens i found your tutorial for x11vnc and it WORKED :-)

Tipps if you experience really slow reaction using x11vnc:

Install a proprietary graphic driver ( Nvidia for me ) on remote machine , go to remote machine and set a fix resolution.

For nvidia thats: in your menü start nvidiasettings, there click on xserver configuration ( left panel ) and then right panel choose resolution ( not auto ) and let save that settings ( with button ) to an xorg configuration file.

To get nvidia render greater than 640x480 follow this advice:

https://forums.developer.nvidia.com/t/ ... es/158713

Essential here the line virtual ...


To synchronze clipboards install package autocutsel and put to autostart of your remote PC:
#! /bin/sh
# damit clipboard auf Server und client synchron gehalten werden
autocutsel -fork
Don't forget to make it executable with chmod +x FileInAutostart.sh

To set NumPad to on
install package numlockx and start it with:

i had to append to /etc/lightdm/lightdm.conf
might be different if you don't use lightdm
[Seat:*]
autologin-guest=false
autologin-user=john1
autologin-user-timeout=0

# von mir ergänzt
greeter-setup-script=/usr/bin/numlockx on


Happy again :-) thanks to the author of this tutorial
os2mac
Level 1
Level 1
Posts: 2
Joined: Sat Aug 27, 2022 2:54 pm

Re: Installing and Setting Remote Desktop Access for Linux Mint PCs - Illustrated for Total Beginners

Post by os2mac »

got to the point where I tried to run the .py and got the following error

Code: Select all

(process:7820): GLib-GIO-ERROR **: 17:46:09.716: Settings schema 'org.gnome.settings-daemon.plugins.sharing' is not installed
Trace/breakpoint trap (core dumped)

NAME="Linux Mint"
VERSION="21 (Vanessa)"
ID=linuxmint
ID_LIKE="ubuntu debian"
PRETTY_NAME="Linux Mint 21"
VERSION_ID="21"
HOME_URL="https://www.linuxmint.com/"
SUPPORT_URL="https://forums.linuxmint.com/"
BUG_REPORT_URL="http://linuxmint-troubleshooting-guide.readthedocs.io/en/latest/"
PRIVACY_POLICY_URL="https://www.linuxmint.com/"
VERSION_CODENAME=vanessa
UBUNTU_CODENAME=jammy
I got a similar error installing vino

ideas?
Last edited by SMG on Tue Nov 08, 2022 10:57 pm, edited 1 time in total.
Reason: Added code tags to code output.
JezekiljMonk
Level 3
Level 3
Posts: 106
Joined: Mon Dec 30, 2019 7:33 am
Contact:

Re: Installing and Setting Remote Desktop Access for Linux Mint PCs - Illustrated for Total Beginners

Post by JezekiljMonk »

Hello os2mac

At the beginning of the post I wrote that modifications related to LMDE5 are discussed in this post

viewtopic.php?p=2161476#p2161476

Now I added Linux Mint 21.x after LMDE5 as it also related to it, not only LMDE5.

It means that in the new version of vino released with Debian 11 (and it derivatives Ubuntu 22.04, LinuxMint 21, LMDE5) some register classes are removed, and as my first tutorial says (written for LinuxMint 20.2 at the time) even in previous version of vino these values made no sense. So I wrote another python script which deals with this situation and which is also for Vanessa (it is within this new post). Additionally this script gives you possibility to make initial setting from the script directly, no need to yourself type in the Terminal. It will set initial password for vino as '111111', but right after that you can enter your own password and make other modifications as per your liking.

If you still having problems feel free to post another question again.
os2mac
Level 1
Level 1
Posts: 2
Joined: Sat Aug 27, 2022 2:54 pm

Re: Installing and Setting Remote Desktop Access for Linux Mint PCs - Illustrated for Total Beginners

Post by os2mac »

That helped, but I'm still getting an encryption error when I try to connect to vino. when I connect to x11vnc it's fine (as long as i don't insist on encryption)
JezekiljMonk
Level 3
Level 3
Posts: 106
Joined: Mon Dec 30, 2019 7:33 am
Contact:

Re: Installing and Setting Remote Desktop Access for Linux Mint PCs - Illustrated for Total Beginners

Post by JezekiljMonk »

To my knowledge both vino and x11vnc work only without encryption.
JezekiljMonk
Level 3
Level 3
Posts: 106
Joined: Mon Dec 30, 2019 7:33 am
Contact:

Re: Installing and Setting Remote Desktop Access for Linux Mint PCs - Illustrated for Total Beginners

Post by JezekiljMonk »

os2mac wrote: Wed Nov 09, 2022 12:48 pm That helped, but I'm still getting an encryption error when I try to connect to vino. when I connect to x11vnc it's fine (as long as i don't insist on encryption)
Maybe you need to start vino as per this post (next post after tutorial)

viewtopic.php?p=2148226#p2148226

The last python3 script I wrote is based on starting vino as a user

Code: Select all

systemctl --user start vino-server.service
Also no sudo privileges required here.

Also keep in mind to assign different ports if you use both x11vnc and vino.
User avatar
MikeNovember
Level 7
Level 7
Posts: 1856
Joined: Fri Feb 28, 2020 7:37 am
Location: Nice, Paris, France

Re: Installing and Setting Remote Desktop Access for Linux Mint PCs - Illustrated for Total Beginners

Post by MikeNovember »

Hi,

Just a comment: you use VNC without encryption, just with a password; this might be enough on an internal network, but would be a security breach if your network is open to internet.

My advice: use encryption, and use firewall (iptables) to restrict the access to the computer you want to take control to authorized computers only.

Regards,

MN
_____________________________
Linux Mint 21.3 Mate host with Ubuntu Pro enabled, VMware Workstation Player with Windows 10 Pro guest, ASUS G74SX (i7-2670QM, 16 GB RAM, GTX560M with 3GB RAM, 1TB SSD).
JezekiljMonk
Level 3
Level 3
Posts: 106
Joined: Mon Dec 30, 2019 7:33 am
Contact:

Re: Installing and Setting Remote Desktop Access for Linux Mint PCs - Illustrated for Total Beginners

Post by JezekiljMonk »

When I need access from outside my home Ethernet network I use encrypted VPN Tunnel to connect to my home server/gateway, then once connected I go without encryption through Ethernet. This feels safe.
User avatar
MikeNovember
Level 7
Level 7
Posts: 1856
Joined: Fri Feb 28, 2020 7:37 am
Location: Nice, Paris, France

Re: Installing and Setting Remote Desktop Access for Linux Mint PCs - Illustrated for Total Beginners

Post by MikeNovember »

JezekiljMonk wrote: Thu Nov 10, 2022 6:21 am When I need access from outside my home Ethernet network I use encrypted VPN Tunnel to connect to my home server/gateway, then once connected I go without encryption through Ethernet. This feels safe.
Hi,

So, why did you write a tutorial with unsafe method? Why didn't you precise not to use it with internet?

Regards,

MN
_____________________________
Linux Mint 21.3 Mate host with Ubuntu Pro enabled, VMware Workstation Player with Windows 10 Pro guest, ASUS G74SX (i7-2670QM, 16 GB RAM, GTX560M with 3GB RAM, 1TB SSD).
dzmitry_by
Level 1
Level 1
Posts: 1
Joined: Sun Jan 22, 2023 10:55 am

Re: Installing and Setting Remote Desktop Access for Linux Mint PCs - Illustrated for Total Beginners

Post by dzmitry_by »

I've just registered here on the forum to say THANK YOU for the great manual!
Following steps for x11vnc I've managed to set up connection from Win11 machine (TightVNC Viewer) to Linux Mint 21.1 Vera.
lm-user-de
Level 1
Level 1
Posts: 1
Joined: Thu Mar 02, 2023 9:34 am

Re: Installing and Setting Remote Desktop Access for Linux Mint PCs - Illustrated for Total Beginners

Post by lm-user-de »

Hi @JezekiljMonk,
What can I say?! After I found this tutorial and set up a VNC tunnel via vino-server in my own NW, my wrinkles on the forehead are gone again. Chiseled various tutorials, extensive detailed explanations &&& on the internet into my brain. In the end I was almost in despair. After every restart of the remote device, the vncserver was down. Now everything works fine! I can only join the predecessors with my THANKS! A perfect, professional, and all details understandable tutorial, super job! Thank you Jezekilj Monk!👏💯
JezekiljMonk
Level 3
Level 3
Posts: 106
Joined: Mon Dec 30, 2019 7:33 am
Contact:

Re: Installing and Setting Remote Desktop Access for Linux Mint PCs - Illustrated for Total Beginners

Post by JezekiljMonk »

Hello everyone!
Based on this tutorial and for those who often need to install somewhere Remote Access I have prepared fully automated package that can in a matter of seconds install and configure for you remote VNC access with x11vnc Server, asking minimal questions.
The Package is prepared with 'makeself' application but you can install it even without it. Download link is as follows:

https://www.dropbox.com/s/uqlkwbkrlkpji ... -null?dl=0

Although the original file was with execution permission it was removed once downloaded from Internet, so please, right-click on the file and change permissions so that it is executable again.

If you first want to see what is inside this package, without installing anything, you can run following command in the same folder where you downloaded it (standard for all archives prepared with makeself)

Code: Select all

./x11vnc-autoinstall-null --noexec --target ./preview
Target directory can also be any other directory you may like to use.

This way you can also read full tutorial for installing (file Manual.pdf).

You can also read the tutorial online at this link:

https://www.dropbox.com/s/9ug98usez8ifs ... r.pdf?dl=0

Similar package for vino VNC Server should be coming soon as well.

Remember that x11vnc is for those who need remote access to machines where no one is present, while vino is normally installed where you need to help someone in need with his prior approval. x11vnc is operational even before log-in, while vino is available only after log-in.
JezekiljMonk
Level 3
Level 3
Posts: 106
Joined: Mon Dec 30, 2019 7:33 am
Contact:

Re: Installing and Setting Remote Desktop Access for Linux Mint PCs - Illustrated for Total Beginners

Post by JezekiljMonk »

Hello everyone!

As promised I prepared auto-installer also for Vino VNC Server.

The Package is prepared with 'makeself' application but you can install it even without it. Download link is as follows:

https://www.dropbox.com/s/5pe2f7juclawi ... -null?dl=0

Although the original file was with execution permission it was removed once downloaded from Internet, so please, right-click on the file and change permissions so that it is executable again.

You can read full tutorial online at this link:

https://www.dropbox.com/s/2jfovancqp43r ... r.pdf?dl=0

Using Easy-Set-Vino is already explained in the main tutorial.
eSavior
Level 1
Level 1
Posts: 3
Joined: Mon Sep 19, 2022 6:38 am

Re: Installing and Setting Remote Desktop Access for Linux Mint PCs - Illustrated for Total Beginners

Post by eSavior »

JezekiljMonk wrote: Mon Mar 13, 2023 4:23 pm Based on this tutorial and for those who often need to install somewhere Remote Access I have prepared fully automated package that can in a matter of seconds install and configure for you remote VNC access with x11vnc Server, asking minimal questions.
...
https://www.dropbox.com/s/uqlkwbkrlkpji ... -null?dl=0
@JezekiljMonk: I just want to write you a short note of gratitude. When I read your first post, it reminded me of all the reasons I am tempted to abandon the LM bandwagon...a constant expectation of investment of my valuable time and mental energy to POSSIBLY get something to work, as long as I don't make a mis-step along the way AND my software + hardware configuration has a hope of being successful with such a long list of instructions. Yikes.

However, I scrolled further down and finally hit this post where you scripted the installation steps. THANK YOU for doing this. IMHO, the installation script instructions should be prefaced above the detailed instructions in the first post. This will encourage first-time Linux Mint users to stay the course rather than get de-railed with technical info that has been superseded with excellent scripts such as the one you have created.

FYI, to any still reading, after getting the x11vnc server installed and tested, I went back to using NoMachine desktop server and client to control my Linux Mint 21 desktop. It has the necessary edge in performance that makes the remote desktop screen sharing experience more tolerable for my particular application (MacBook Pro w/ core i7 remoting via WiFi 802.11ac to wired Linux Mint Desktop w/ core i7).

I sorely wish some Linux gurus would work on revamping the VNC protocol to support acceleration features that have been available in Apple's VNC implementation for well over a decade now. If anybody knows of such a project, please PM or e-mail me.

God bless, all!
cajunjoel
Level 1
Level 1
Posts: 4
Joined: Sun Apr 18, 2021 8:29 pm

Re: Installing and Setting Remote Desktop Access for Linux Mint PCs - Illustrated for Total Beginners

Post by cajunjoel »

This is a great tutorial and all, but why not just use XDRP and Remmina?
zangetsu
Level 2
Level 2
Posts: 56
Joined: Thu Nov 24, 2016 6:12 am
Location: Como, Italy

Re: Installing and Setting Remote Desktop Access for Linux Mint PCs - Illustrated for Total Beginners

Post by zangetsu »

cajunjoel wrote: Mon Dec 04, 2023 11:18 am ... but why not just use XDRP ?
Thank you. Yesterday you made this suggestion, and today it was useful for me :lol:
Post Reply

Return to “Tutorials”