I have a few computing machines at home. However, I had never endeavored to connect them holistically. They worked in isolation only thinly connected using the cloud services. All that changed this weekend when a thought was born:
One LAN to rule them all, one LAN to find them, One LAN to bring them all. and in the darkness bind them.
I chose two machines for my tests:
- Dell XPS M1330, Pentium Core 2 Duo T8100 CPU, 4GB RAM, openSUSE Leap 15.1 with KDE Plasma 5 - a 12-year old laptop acting acting as VNC and RDP server.
- Dell Inspiron 3543, Core i3-5005U, 8GB RAM, openSUSE Leap 15.1 with KDE Plasma 5 - a 5-year old laptop that has the VNC and RDP clients installed.
So, with my
wlan0 interface configured in to the
home zone in both machines, I began my quest.
TigerVNC - VIRTUAL NETWORK COMPUTING SERVER
TigerVNC is available in openSUSE Leap 15.1 by default. Nothing to install, but a few things to configure.
TigerVNC is a high-performance, platform-neutral implementation of VNC (Virtual Network Computing), a client/server application that allows users to launch and interact with graphical applications on remote machines.
sudo zypper in remmina
The openSUSE firewall is configurable using the YaST Firewall GUI or
firewall-cmd command. Both are functionally equal. I used the GUI to allow TigerVNC server to listen unhindered at its favourite ports.This did not work at all.
Enabled Remote Administration
Further research led me to YaST Remote Administration. Followed all the steps mentioned. No matter what I did, nothing could let me connect.
SDDM does not work with TigerVNC
I simply love KDE Plasma 5. Plasma 5 comes with SDDM (Simple Desktop Display Manager). SDDM hates TigerVNC:
SDDM (Simple Desktop Display Manager), which is the default display manager in KDE5 doesn't support XDMCP. You must switch to different display manager to get login screen in VNC sessions.
I was in no mood to nuke SDDM just so that TigerVNC could have my machines. I decided to look for alternatives.
xrdp - THE REMOTE DESKTOP PROTOCOL SERVER
I installed xrdp:
sudo zypper -n in xrdp sudo systemctl enable xrdp sudo systemctl start xrdp sudo firewall-cmd --add-port=3389/tcp --permanent sudo firewall-cmd --reload
I had to terminate
xrdp experiments when Remmina endlessly tried to reconnect. It was obvious that Remmina was able to connect, but the connection was dropping immediately. Also, it is very much possible that
xrdp server tries to start another GUI session and fails since I was already logged in in a KDE Plasma 5 session. Needs more research and experiments.
krfb - KDE DESKTOP SHARING
Tired of TigerVNC and
xrdp, I needed an alternative. My search led me to
KDE Desktop Sharing (krfb) is a small server for the RFB protocol, better known as VNC. Unlike most other Unix/Linux RFB servers, KRfb allows you to share your X11 session instead of creating a new X11 session.
krfb share X11 session instead of creating a new X11 session, it should theoretically not suffer from the
xrdp issues. Also,:
Krfb (server) is one of a pair of KDE programs - Krdc (client) is the other - that let you share your desktop (make it visible remotely) through the local network with another user, probably somebody like the tech downstairs who you wants to help you figure out how to do something you are having trouble with. You can call the tech on the phone and be talking with her while she assists you.
So, I installed
krdc on both my test machines:
sudo zypper in krfb sudo zypper in krdc
krfb listens on port
5900, openSUSE firewall needs to be opened on both machines:
sudo firewall-cmd --zone=home --permanent --add-port=5900/tcp sudo firewall-cmd --reload
The above commands are functionally equal to adding ports manually in the YaST Firewall GUI.
Success at last and connection was established from both machines. However,
krdc was extremely slow. Barely usable. Remmina works satisfactorily.
In openSUSE Leap 15.1 with KDE Plasma 5, only
krfb, the VNC server, works with Remmina, the VNC client. TigerVNC made me angry although it was SDDM's fault.
xrdp did not work at all.