2

I am trying to set up a remote desktop to my office Windows 10 machine from my home PC running Ubuntu 19.10, using Remmina. My home router is a Synology RT2600ac. My company uses a Fortinet SSL-VPN, which does not have an official Linux client (at least not publicly available), but with some effort I was able to connect to it using openfortivpn on both the commandline and the Gnome Network Manager.

What works:

  • Connecting to the remote PC from behind my router using a Windows 10 laptop with the official Forticlient VPN application and built-in Windows remote desktop tool
  • Connecting to the remote PC from behind my router using an Android smartphone with the official Forticlient VPN app and the Microsoft RD Client app
  • Disconnecting the router and directly plugging my Ubuntu PC into my cable modem, then connecting to the remote PC using openfortivpn and Remmina

What does NOT work:

  • Connecting to the remote PC from behind my router using the Ubuntu PC with openfortivpn and Remmina. Remmina will report that it is unable to establish a connection. I don't have the error logs handy at the moment and I will amend this question when I can, but I remember the term "broken pipe" appearing.

Given that only the Ubuntu PC is unable to connect from behind the router, and that devices on my local network are still visible in Nautilus even when connected to a VPN, I surmise that there is some conflict with the way my local router and the remote router at work allocate IP addresses. This might be because they both use the 192.x.x.x range.

So my question is: how can I get a remote desktop connection on Ubuntu without bypassing the router? E.g. a change in the Ubuntu network stack, a router setting, etc. Ideally, I would like to have only Remmina accessing the VPN connection while everything else accesses the Internet normally, but I could live with losing access to devices on my local network while the VPN is active. What I can't do is disconnect the router every time I need to use the remote desktop, as I have a lot of other devices connected to it.

EDIT: Here is the output from Remmina when I try to connect through my router:

[21:43:22:052] [5431:5437] [INFO][com.freerdp.client.common.cmdline] - loading channelEx cliprdr
[21:43:22:053] [5431:5437] [INFO][com.freerdp.client.common.cmdline] - loading channelEx drdynvc
[21:43:25:109] [5431:5437] [ERROR][com.freerdp.core.transport] - BIO_should_retry returned a system error 32: Broken pipe
[21:43:25:109] [5431:5437] [ERROR][com.freerdp.core.nego] - Protocol Security Negotiation Failure
[21:43:25:109] [5431:5437] [ERROR][com.freerdp.core] - freerdp_set_last_error ERRCONNECT_SECURITY_NEGO_CONNECT_FAILED [0x0002000C]
[21:43:25:109] [5431:5437] [ERROR][com.freerdp.core.connection] - Error: protocol security negotiation or connection failure

1 Answer 1

0

It's more of a workaround, but based on this page I found that if I issue the command:

sudo route add 192.168.1.xxx dev ppp0

I could connect to the remote desktop just fine. "192.168.1.xxx" being the (slightly redacted) IP address of my work PC, and "ppp0" being what I surmise to be my VPN gateway. I obtained it by installing net-tools and issuing the command:

ifconfig

As I understand it, the setting is lost upon disconnecting from the VPN.

1
  • I would assume it is lost on reboot of your system. Your command is set "in memory" not on disk.
    – Rinzwind
    Commented Mar 26, 2020 at 13:31

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .