I found many posts about running x11vnc at boot up on various flavors of Ubuntu 16.04 (Xenial Xerus). None of the posted suggestions would work for me as-is. I ended up finding a solution that works on Xubuntu 16.04 (Xenial Xerus), so am posting just the Systemd service file here as a suggestion of what works for me:
ExecStart=/usr/bin/x11vnc -auth /var/run/lightdm/root/:0 -display WAIT:0 -ncache 10 -forever -nevershared -bg -o /var/log/x11vnc.log -rfbauth /etc/x11vnc.pass -rfbport 5900 -xkb -norc -noxrecord -noxdamage -nomodtweak
This solution successfully runs x11vnc at the Xubuntu login screen. Such a bonus!
Type=forking was imperative from what I can see as x11vnc appears to fork once a connection successfully authenticates. Without the service defined as that, the connection drops once authentication is successful... NOT at all helpful!
I needed to add the WAIT to the :0 arg. And -nofixes needed to be skipped else mouse pointers did not come across to the remote control side correctly. The -ncache 10 was suggested by the program in its log file, so I decided to give it a try.
WFM. YMMV. EIEIO. ;-)