I have installed Ubuntu Desktop 18.04 on my parents computer but want to be able to administrate it from the outside (install updates, fix issues etc). I need access to the main desktop (:0), not create a new one.
The first thing I tried was using TeamViewer. Sadly, TeamViewer is completely broken on Linux and it regularly crashes the window manager, no matter if I use X11 or Wayland in the "gdm3/custom.conf". This also freezes almost all other processes so the only way to fix this is to reboot the machine. Other users have reported the same issues to the TeamViewer support, but they don't care.
Next thing I tried was using VNC. So I installed a VNC Server on the machine and have it start on startup on display 0 with X11 enabled / Wayland disabled. This also didn't seem to work, because I couldn't share the Display:0 for some reason.
x11vnc doesn't work because it cannot be started before a user has logged in.
Next thing I tried was the built in "Desktop Sharing" function of Ubuntu. Sadly, this VNC server seems to only be started once a user is logged in. And even though I have disabled the password and enabled auto login in the system settings and "AutomaticLoginEnable=true" "AutomaticLogin=username" in the "gdm3/custom.conf", sometimes Ubuntu just ignores these settings and sits at the login screen waiting for a user to click on their username to login.
Since I don't want anybody else to be able to access this I am using a simple VPN (ZeroTier) with a static IP address so that only I can connect to the computer.
It seems like there is no reliable way to have Ubuntu login automatically every time? Sometimes it works, sometimes it doesn't, makes no sense to me. Rebooting the system seems to make the auto login work, shutting it down and starting it then seems to make it sit at the user selection screen.
So what are the options left, what am I missing?
Is it really this difficult/impossible to make Ubuntu Desktop accessible from the outside?