RDP using Remmina for Fedora 39

As I am getting ready to implement my home server using Fedora 39 WS, I have run into an issue trying to use Remmina for a desktop session. I have ssh without issue and use it, including Cockpit in a web browser from Linux Mint (main client).

But as this is a headless server and will be located far from other machines (for now it is nearby and I have an HDMI connected) I need to be able to get a desktop session for anything I need to do outside of terminal.

I have followed instructions for getting the gnome-desktop-remote setup as well as all the other settings I could find, but if I try to get into preferences within the Remmina app on Fedora, it just closes.

In terminal, I get the following errors when trying to start the service (indicating I may need a service file?) and in Cockpit it says the xrdp daemon failed to start.

Thanks,
Sheila

Is there a GUI on the server? If not, there wouldn’t be any X11 service running and xrdp probably depends on that.

If there is no GUI then RDP wouldn’t really be needed. You’d just use SSH. So, I’m not sure what to think.

1 Like

@pdecker I ssh to enable cockpit on Linux Mint machine. But that only gives me terminal access (or I can just use terminal ssh outside of cockpit). But that does not give me the desktop on Fedora.

I wondered if it was a Wayland issue, but I installed the kde desktop as part of setting up rdp. BUT, do you think I have to actually switch from Wayland desktop to KDE in order for it to work? I thought they had resolved the issues with Wayland.

Not sure which GUI you are referring to. I have the remmina app GUI and have enabled the gnome remote desktop extension, but not sure what else would be needed.

Thanks,
Sheila

OK. That’s what I was after. I thought maybe if you were setting up a server there would be no Desktop Environment (GUI).

Wayland could be the problem here. I say that just because the error says “xrdp”.

I’ve never used Remmina except to remotely connect to Windows. I probably won’t be much help.

Yeah, that’s what most of the guides are about…from Windows, or Ubuntu and as I am learning, Fedora is different. But I am going to need to remote into it just for those few instances where terminal is not enough.

Thanks,
Sheila

Here is what Copilot said about connecting to Fedora using Remmina when using Wayland.

Certainly! Remmina is a versatile remote desktop client that allows you to connect to other machines over the network. To use Remmina to connect to a Fedora computer using Wayland, follow these steps:

  1. Install Remmina:

    • If you’re using Fedora, you can install Remmina by running the following command:
      sudo dnf install -y remmina
      
    • For other Linux distributions, you can follow the installation instructions specific to your platform.
  2. Create a Remmina Configuration File:

    • Launch Remmina from your applications menu or terminal.
    • Click the button to “create a new desktop file.”
    • Set up the configuration file with the necessary connection parameters (protocol, server, username, password, etc.).
    • Save the configuration and quit Remmina.
    • The configuration file will be located in your user directory (e.g., /home/yourusername/.remmina/something.remmina).
  3. Connect to the Remote Machine:

    • Open a terminal and execute the following command, replacing the path with the actual location of your configuration file:
      remmina -c /home/yourusername/.remmina/something.remmina
      
    • Remmina will bring up the remote desktop connection.
  4. Additional Notes:

    • Remmina supports various protocols, including RDP, SSH, and SFTP.
    • Keep in mind that some features may not work seamlessly under certain conditions. For instance:
      • Password storage via keyring is missing in the Snap package.
      • Accessing your personal ~/.ssh directory is not possible in Snap.
      • RDP multi-monitor features may not work under Wayland8?.

Remember to adjust the configuration settings according to your specific use case, and enjoy using Remmina to connect to your Fedora computer! ??

Source: Conversation with Bing, 2/14/2024
(1) Initial support for Wayland and Mir (!871) · Merge requests · Remmina … Initial support for Wayland and Mir (!871) · Merge requests · Remmina / Remmina · GitLab.
(2) RDP multi-monitor feature does not work under Wayland - GitLab. RDP multi-monitor feature does not work under Wayland (#2644) · Issues · Remmina / Remmina · GitLab.
(3) Connect to remote PCs from Linux with Remmina. https://www.youtube.com/watch?v=NiCs6c5LlJ4.
(4) Remmina Installation Quick How To. https://www.youtube.com/watch?v=5DQ3E-W6z-I.
(5) How to connect to remote Windows PCs on Linux with Remmina. https://www.youtube.com/watch?v=ZNNfHbLU2tc.
(6) fedora 17 - How to run Linux Remmina from the terminal? - Super User. fedora 17 - How to run Linux Remmina from the terminal? - Super User.
(7) Remmina - A Remote Desktop Client and File Sharing for Linux - Tecmint. Remmina - A Remote Desktop Client and File Sharing for Linux.
(8) How to connect to a remote desktop from Linux | Opensource.com. How to connect to a remote desktop from Linux | Opensource.com.
(9) How to install Remmina - Remmina. How to install Remmina - Remmina.
(10) undefined. Index of /debian.

There is something wrong there.
Check your install… is something missing? Do you need another package or a plugin maybe?

You dont have to use RDP with Remmina. There are several other protocols.

Thanks @pdecker . Of course, I already have it installed on Fedora and other machines, but I guess we need to ascertain first why the xrdp daemon is not starting.

sudo systemctl status xrdp
Ă— xrdp.service - xrdp daemon
     Loaded: loaded (/usr/lib/systemd/system/xrdp.service; enabled; preset: disabled)
    Drop-In: /usr/lib/systemd/system/service.d
             └─10-timeout-abort.conf
     Active: failed (Result: exit-code) since Wed 2024-02-14 11:34:01 EST; 16s ago
   Duration: 32ms
       Docs: man:xrdp(8)
             man:xrdp.ini(5)
    Process: 141618 ExecStart=/usr/sbin/xrdp $XRDP_OPTIONS --nodaemon (code=exited, status=1/FAILURE)
   Main PID: 141618 (code=exited, status=1/FAILURE)
        CPU: 9ms

Feb 14 11:34:01 fedora systemd[1]: Started xrdp.service - xrdp daemon.
Feb 14 11:34:01 fedora (xrdp)[141618]: xrdp.service: Referenced but unset environment variable evaluates to an empty string: XRDP_OPTIONS
Feb 14 11:34:01 fedora xrdp[141618]: [INFO ] starting xrdp with pid 141618
Feb 14 11:34:01 fedora xrdp[141618]: [INFO ] address [0.0.0.0] port [3389] mode 1
Feb 14 11:34:01 fedora xrdp[141618]: [INFO ] listening to port 3389 on 0.0.0.0
Feb 14 11:34:01 fedora xrdp[141618]: [ERROR] g_tcp_bind(11, 3389) failed bind IPv6 (errno=98) and IPv4 (errno=22).
Feb 14 11:34:01 fedora xrdp[141618]: [ERROR] trans_listen_address failed
Feb 14 11:34:01 fedora xrdp[141618]: [ERROR] xrdp_listen_main_loop: xrdp_listen_get_port failed
Feb 14 11:34:01 fedora systemd[1]: xrdp.service: Main process exited, code=exited, status=1/FAILURE
Feb 14 11:34:01 fedora systemd[1]: xrdp.service: Failed with result 'exit-code'.

Thanks,
Sheila

Yes, I am done with this one. What I should have said instead of “it just closes” is the input password just goes away without any message whatsoever. But I opened the log and watched as I input the password (assuming my user password) and it said “wrong password”. Sheesh. You’d think it would have told me that. And what other password would it be?

If you have a simple app suggestion, by all means let me know.

Thanks,
Sheila

1 Like

I had previously followed this for xrdp install but the xrdp.service apparently has unset environment?

So I need to understand how to get this service up and running and just use the GUI for fedora server desktop.

Thanks,
Sheila

1 Like

It says it failed to bind on ipv6 and ipv4. Is something else already listening on 3389 maybe?

2 Likes

According to the output below, gnome-remote-desktop is.

sflanagan@fedora:~$ sudo netstat -tunlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 127.0.0.54:53           0.0.0.0:*               LISTEN      1048/systemd-resolv 
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1408/sshd: /usr/sbi 
tcp        0      0 127.0.0.53:53           0.0.0.0:*               LISTEN      1048/systemd-resolv 
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      1403/cupsd          
tcp        0      0 0.0.0.0:5355            0.0.0.0:*               LISTEN      1048/systemd-resolv 
tcp6       0      0 :::3389                 :::*                    LISTEN      2482/gnome-remote-d 
tcp6       0      0 :::9090                 :::*                    LISTEN      1/systemd           
tcp6       0      0 :::22                   :::*                    LISTEN      1408/sshd: /usr/sbi 
tcp6       0      0 ::1:631                 :::*                    LISTEN      1403/cupsd          
tcp6       0      0 :::5355                 :::*                    LISTEN      1048/systemd-resolv 
udp        0      0 0.0.0.0:5353            0.0.0.0:*                           1102/avahi-daemon:  
udp        0      0 0.0.0.0:5355            0.0.0.0:*                           1048/systemd-resolv 
udp        0      0 127.0.0.54:53           0.0.0.0:*                           1048/systemd-resolv 
udp        0      0 127.0.0.53:53           0.0.0.0:*                           1048/systemd-resolv 
udp        0      0 127.0.0.1:323           0.0.0.0:*                           1191/chronyd        
udp        0      0 0.0.0.0:43361           0.0.0.0:*                           1102/avahi-daemon:  
udp6       0      0 :::5353                 :::*                                1102/avahi-daemon:  
udp6       0      0 :::5355                 :::*                                1048/systemd-resolv 
udp6       0      0 ::1:323                 :::*                                1191/chronyd        
udp6       0      0 :::49618                :::*                                1102/avahi-daemon:  
udp6       0      0 fe80::2333:abba:e18:546 :::*                                1308/NetworkManager 

Sheila

Well, that’s interesting. Gnome remote desktop is listening, but you have KDE installed.

If it’s listening could you still get logged in? It should be the local user and password from the remote computer.

If you can’t connect then maybe you could disable the Gnome remote desktop service and xrdp would work for you.

1 Like

That is why I had asked do I need to switch the desktop to KDE in order to use rdp. I can log in of course. I am currently using the server for this discussion since I have to keep referencing things on it (i.e., screenshots, terminal output etc). But I have never rebooted or logged out since I followed the instructions to install KDE in order to get Remmina working

I guess I need to either a) resolve why Remmina does not work (if it is a Wayland thing) OR b) uninstall all the requirements for it and start working on xrdp or other method.

I am going to see if I can switch desktops to KDE and test that.

Thanks,
Sheila

1 Like

Well, regardless of installing (CLI) KDE, my options for logging in did not include KDE. I had about 5 with Gnome Xfce as my current choice to see if that is what makes the difference in rdp.

I check xrdp service:

xrdp.service - xrdp daemon
     Loaded: loaded (/usr/lib/systemd/system/xrdp.service; enabled; preset: disabled)
    Drop-In: /usr/lib/systemd/system/service.d
             └─10-timeout-abort.conf
     Active: active (running) since Thu 2024-02-15 08:03:05 EST; 10min ago
       Docs: man:xrdp(8)
             man:xrdp.ini(5)
   Main PID: 1498 (xrdp)
      Tasks: 1 (limit: 15364)
     Memory: 6.7M
        CPU: 474ms
     CGroup: /system.slice/xrdp.service
             └─1498 /usr/sbin/xrdp --nodaemon

So far, not sure. Maybe I need to understand all these types of rdp connections. Yet the xrdp daemon seems to be working now. And I confirmed that in Cockpit on LM as it is no longer giving the error message xrdp daemon not running.

So on LM, I open Remmina and type in the ip address for the server (now using Xfce). And I opened the debugging window so I could monitor what is happening.

Connection brings up an xrdp window to login to fedora, which I do. But it closes instantly.

Debugging displays:

(remina_rdp_OnChannelDisconnectedEventHandler) - Channel Microsoft::Windows::RDS::DisplayControl has been opened

The screen for XRDP opens and I login and it crashes and debug says the above has been closed.

Why does the xrdp connection talk about Windows? Does it think I am trying to connect o a Windows system and then crashes when it realizes it is not?

More research is needed, I guess.

Sheila

I have installed 3 other apps since logging into Gnome Xfce Fedora on server. Thincast did not work. Krdc did not work despite having KDE installed. Finally, no machine worked instantly. Now I will test it using Wayland and see if it fails; if it does, we know that Wayland is the issue.

Sheila

1 Like

I should have said Xorg (not Xfce) although there is an option to login with Xfce.

Logging into Waylond session, no machine on LM had a slight delay, but then showed the Fedora desktop on my server.

This is not FOSS and I recall using it years ago on Windows. But since it works, I now have a solution for when it is needed to remote into the headless server sitting downstairs next to my router so it can be connected via ethernet.

One issue resolved for my home server, now onto finalizing everything for the move. :grin:

Thanks,
Sheila

2 Likes

I’ve used NoMachine quite a bit. Right now, I connect to my remote Linux computers around the house using that.