From bddbcd78b277dbeb9d5f5b82ad0465852b9bb9eb Mon Sep 17 00:00:00 2001 From: waldek Date: Mon, 13 Sep 2021 22:20:45 +0200 Subject: [PATCH] adds remote desktop --- modules/qualifying/assets/gnome_error.png | Bin 0 -> 30304 bytes modules/qualifying/assets/rdp_windows.png | Bin 0 -> 37811 bytes .../learning_remote_graphical_interaction.md | 544 ++++++++++++++++++ 3 files changed, 544 insertions(+) create mode 100644 modules/qualifying/assets/gnome_error.png create mode 100644 modules/qualifying/assets/rdp_windows.png create mode 100644 modules/qualifying/learning_remote_graphical_interaction.md diff --git a/modules/qualifying/assets/gnome_error.png b/modules/qualifying/assets/gnome_error.png new file mode 100644 index 0000000000000000000000000000000000000000..b45c3080a20ed4c63a333440b8ec3995ce1b8922 GIT binary patch literal 30304 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 J`1`Y0{{zqAarFQI literal 0 HcmV?d00001 diff --git a/modules/qualifying/assets/rdp_windows.png b/modules/qualifying/assets/rdp_windows.png new file mode 100644 index 0000000000000000000000000000000000000000..4d9c2d215a7510e72a31b24d57e1639ad5f3a7e3 GIT binary patch literal 37811 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 a=IEz8BTyS$+~shL+03BUCiO to keep the current choice[*], or type selection number: 2 +update-alternatives: using /usr/bin/startxfce4 to provide /usr/bin/x-session-manager (x-session-manager) in manual mode +waldek@debianremote:~$ sudo systemctl restart lightdm.service +waldek@debianremote:~$ +``` + +Try to get an RDP session going and once you're logged in, try to run a parallel session via the lightdm display manager. +You'll log in but will get *kicked out* almost immediately. +This is because by default you can't have two sessions running at the same time on the same computer. +Try to connect from a different station to the same session again over RDP. +You'll get to log in, but the original one will be cut off. +This is the expected behavior, so not a bug, more of a feature! +Your session will stay running so you can disconnect and reconnect from a different location later. + +## VNC + +### Remote helping via x11vnc + +If we need to connect to an running session to help out, or take over, the control of a Linux machine we can use `x11vnc` to do this. +This is a program that can expose *any* running screen over vnc, with or without a password! +In a terminal either via the virtual machine, or via ssh, you execute the following commands. +A vnc server is now running and you can connect to it with remmina or vncviewer. +As long as this x11vnc process is running we can connect to it. + +```bash +waldek@debianremote:~$ sudo apt install x11vnc +Reading package lists... Done +Building dependency tree... Done +Reading state information... Done +x11vnc is already the newest version (0.9.16-7). +0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. +waldek@debianremote:~$ x11vnc -display :0 +############################################################### +#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@# +#@ @# +#@ ** WARNING ** WARNING ** WARNING ** WARNING ** @# +#@ @# +#@ YOU ARE RUNNING X11VNC WITHOUT A PASSWORD!! @# +#@ @# +#@ This means anyone with network access to this computer @# +#@ may be able to view and control your desktop. @# +#@ @# +#@ >>> If you did not mean to do this Press CTRL-C now!! <<< @# +#@ @# +#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@# +#@ @# +#@ You can create an x11vnc password file by running: @# +#@ @# +#@ x11vnc -storepasswd password /path/to/passfile @# +#@ or x11vnc -storepasswd /path/to/passfile @# +#@ or x11vnc -storepasswd @# +#@ @# +#@ (the last one will use ~/.vnc/passwd) @# +#@ @# +#@ and then starting x11vnc via: @# +#@ @# +#@ x11vnc -rfbauth /path/to/passfile @# +#@ @# +#@ an existing ~/.vnc/passwd file from another VNC @# +#@ application will work fine too. @# +#@ @# +#@ You can also use the -passwdfile or -passwd options. @# +#@ (note -passwd is unsafe if local users are not trusted) @# +#@ @# +#@ Make sure any -rfbauth and -passwdfile password files @# +#@ cannot be read by untrusted users. @# +#@ @# +#@ Use x11vnc -usepw to automatically use your @# +#@ ~/.vnc/passwd or ~/.vnc/passwdfile password files. @# +#@ (and prompt you to create ~/.vnc/passwd if neither @# +#@ file exists.) Under -usepw, x11vnc will exit if it @# +#@ cannot find a password to use. @# +#@ @# +#@ @# +#@ Even with a password, the subsequent VNC traffic is @# +#@ sent in the clear. Consider tunnelling via ssh(1): @# +#@ @# +#@ http://www.karlrunge.com/x11vnc/#tunnelling @# +#@ @# +#@ Or using the x11vnc SSL options: -ssl and -stunnel @# +#@ @# +#@ Please Read the documentation for more info about @# +#@ passwords, security, and encryption. @# +#@ @# +#@ http://www.karlrunge.com/x11vnc/faq.html#faq-passwd @# +#@ @# +#@ To disable this warning use the -nopw option, or put @# +#@ 'nopw' on a line in your ~/.x11vncrc file. @# +#@ @# +#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@# +############################################################### +13/09/2021 20:47:13 x11vnc version: 0.9.16 lastmod: 2019-01-05 pid: 14610 +13/09/2021 20:47:13 Using X display :0 +13/09/2021 20:47:13 rootwin: 0x532 reswin: 0x2e00001 dpy: 0xbfe738d0 +13/09/2021 20:47:13 +13/09/2021 20:47:13 ------------------ USEFUL INFORMATION ------------------ +13/09/2021 20:47:13 X DAMAGE available on display, using it for polling hints. +13/09/2021 20:47:13 To disable this behavior use: '-noxdamage' +13/09/2021 20:47:13 +13/09/2021 20:47:13 Most compositing window managers like 'compiz' or 'beryl' +13/09/2021 20:47:13 cause X DAMAGE to fail, and so you may not see any screen +13/09/2021 20:47:13 updates via VNC. Either disable 'compiz' (recommended) or +13/09/2021 20:47:13 supply the x11vnc '-noxdamage' command line option. +13/09/2021 20:47:13 +13/09/2021 20:47:13 Wireframing: -wireframe mode is in effect for window moves. +13/09/2021 20:47:13 If this yields undesired behavior (poor response, painting +13/09/2021 20:47:13 errors, etc) it may be disabled: +13/09/2021 20:47:13 - use '-nowf' to disable wireframing completely. +13/09/2021 20:47:13 - use '-nowcr' to disable the Copy Rectangle after the +13/09/2021 20:47:13 moved window is released in the new position. +13/09/2021 20:47:13 Also see the -help entry for tuning parameters. +13/09/2021 20:47:13 You can press 3 Alt_L's (Left "Alt" key) in a row to +13/09/2021 20:47:13 repaint the screen, also see the -fixscreen option for +13/09/2021 20:47:13 periodic repaints. +13/09/2021 20:47:13 +13/09/2021 20:47:13 XFIXES available on display, resetting cursor mode +13/09/2021 20:47:13 to: '-cursor most'. +13/09/2021 20:47:13 to disable this behavior use: '-cursor arrow' +13/09/2021 20:47:13 or '-noxfixes'. +13/09/2021 20:47:13 using XFIXES for cursor drawing. +13/09/2021 20:47:13 GrabServer control via XTEST. +13/09/2021 20:47:13 +13/09/2021 20:47:13 Scroll Detection: -scrollcopyrect mode is in effect to +13/09/2021 20:47:13 use RECORD extension to try to detect scrolling windows +13/09/2021 20:47:13 (induced by either user keystroke or mouse input). +13/09/2021 20:47:13 If this yields undesired behavior (poor response, painting +13/09/2021 20:47:13 errors, etc) it may be disabled via: '-noscr' +13/09/2021 20:47:13 Also see the -help entry for tuning parameters. +13/09/2021 20:47:13 You can press 3 Alt_L's (Left "Alt" key) in a row to +13/09/2021 20:47:13 repaint the screen, also see the -fixscreen option for +13/09/2021 20:47:13 periodic repaints. +13/09/2021 20:47:13 +13/09/2021 20:47:13 XKEYBOARD: +13/09/2021 20:47:13 Switching to -xkb mode to recover these keysyms: +13/09/2021 20:47:13 xkb noxkb Keysym ("X" means present) +13/09/2021 20:47:13 --- ----- ----------------------------- +13/09/2021 20:47:13 X 0x40 at +13/09/2021 20:47:13 X 0x23 numbersign +13/09/2021 20:47:13 X 0x5b bracketleft +13/09/2021 20:47:13 X 0x5d bracketright +13/09/2021 20:47:13 X 0x7b braceleft +13/09/2021 20:47:13 X 0x7d braceright +13/09/2021 20:47:13 X 0x7c bar +13/09/2021 20:47:13 X 0x5c backslash +13/09/2021 20:47:13 +13/09/2021 20:47:13 If this makes the key mapping worse you can +13/09/2021 20:47:13 disable it with the "-noxkb" option. +13/09/2021 20:47:13 +13/09/2021 20:47:13 +13/09/2021 20:47:13 X FBPM extension not supported. +13/09/2021 20:47:13 X display is capable of DPMS. +13/09/2021 20:47:13 -------------------------------------------------------- +13/09/2021 20:47:13 +13/09/2021 20:47:13 Default visual ID: 0x21 +13/09/2021 20:47:13 Read initial data from X display into framebuffer. +13/09/2021 20:47:13 initialize_screen: fb_depth/fb_bpp/fb_Bpl 24/32/3200 +13/09/2021 20:47:13 +13/09/2021 20:47:13 X display :0 is 32bpp depth=24 true color +13/09/2021 20:47:13 +13/09/2021 20:47:13 Autoprobing TCP port +13/09/2021 20:47:13 Autoprobing selected TCP port 5901 +13/09/2021 20:47:13 Autoprobing TCP6 port +13/09/2021 20:47:13 Autoprobing selected TCP6 port 5900 +13/09/2021 20:47:13 Listening also on IPv6 port 5901 (socket 10) +13/09/2021 20:47:13 +13/09/2021 20:47:13 Xinerama is present and active (e.g. multi-head). +13/09/2021 20:47:13 Xinerama: number of sub-screens: 1 +13/09/2021 20:47:13 Xinerama: no blackouts needed (only one sub-screen) +13/09/2021 20:47:13 +13/09/2021 20:47:13 fb read rate: 1355 MB/sec +13/09/2021 20:47:13 fast read: reset -wait ms to: 10 +13/09/2021 20:47:13 fast read: reset -defer ms to: 10 +13/09/2021 20:47:13 The X server says there are 10 mouse buttons. +13/09/2021 20:47:13 screen setup finished. +13/09/2021 20:47:13 +13/09/2021 20:47:13 WARNING: You are running x11vnc WITHOUT a password. See +13/09/2021 20:47:13 WARNING: the warning message printed above for more info. +13/09/2021 20:47:13 + +The VNC desktop is: debianremote:1 +PORT=5901 + +****************************************************************************** +Have you tried the x11vnc '-ncache' VNC client-side pixel caching feature yet? + +The scheme stores pixel data offscreen on the VNC viewer side for faster +retrieval. It should work with any VNC viewer. Try it by running: + + x11vnc -ncache 10 ... + +One can also add -ncache_cr for smooth 'copyrect' window motion. +More info: http://www.karlrunge.com/x11vnc/faq.html#faq-client-caching + + +``` + +You can combine both RDP and x11vnc as follows. +First you have to find out how the display of RDP is referenced. +The you create the x11vnc process and connect to it. + +```bash +waldek@debianremote:~$ ps aux | grep xorgxrdp +waldek 3516 0.2 3.0 664264 118116 ? Sl 20:53 0:02 /usr/lib/xorg/Xorg :10 -auth .Xauthority -config xrdp/xorg.conf -noreset -nolisten tcp -logfile .xorgxrdp.%s.log +waldek 4333 0.0 0.0 6152 716 pts/0 S+ 21:11 0:00 grep xorgxrdp +waldek@debianremote:~$ x11vnc -display :10 +``` + +On a different machine you run the following. + +```bash +vncviewer 192.168.0.239:0 +``` + +You probably realize this is super insecure so we should tunnel it over ssh! +Luckily this is quite easy to do. +We need to add `-allow localhost` to the `x11vnc` command, and then use the `-via` argument with `vncviewer`. +Both lines are noted below. + +```bash +waldek@debianremote:~$ x11vnc -display :0 -allow localhost +``` + +```bash +vncviewer -via waldek@192.168.0.239 localhost:0 +``` + +### Exposing the lightdm login screen + +We can expose the actual login screen of lightdm over vnc to offer RDP like functionality but without the restrictions. +To do this we need to set the `-auth` flag of `x11vnc` to the `.Xauthority` file of `lightdm`. +On most disto's this can be found at `/var/lib/lightdm/.Xauthority`. +Because the login session runs as root we need to start the x11vnc as root as well. +You should limit to localhost for security reasons! +If you want the tunnel vnc process to keep running after you disconnect you should add the `-forever` argument together with the `-loop` one. +If you want more than one client to connect you can add the `-shared` argument. +Together with password for actual users and viewers the can become quite powerful! + +```bash +x11vnc -rfbauth /etc/vncpasswd -auth /var/lib/lightdm/.Xauthority -display :0 -allow localhost -forever -loop -shared +``` + +Multiple users can now connect to the same session and to control the session they need a password. +This password can be set with the `vncpasswd` program. +You can make this into a systemd service to start at boot if you want!