RDP connection through VPN

OK,

I have a VPN connection from work to home up and running. On my server at home I need to access a libvirt VM using RDP, however this VM is not to be exposed to the internet. Therefore it’s on a private network defined as

$ virsh net-dumpxml private_network
<network connections='2'>
  <name>private_network</name>
  <uuid>c99fff0b-7ca8-4fb3-8f40-429451515b9e</uuid>
  <bridge name='virbr2' stp='on' delay='0'/>
  <mac address='52:54:00:f3:63:e6'/>
  <ip address='192.168.20.1' netmask='255.255.255.0'>
    <dhcp>
      <range start='192.168.20.100' end='192.168.20.120'/>
    </dhcp>
  </ip>
</network>

My server is on the 192.168.1.* network. It’s running Ubuntu. Work is a Win 11 box running OpenVPN client to my router at home. I can ping my server from work and also SSH into it without problem.

I’m guessing I need to forward my virbr2 network somehow?

Tailscale will make your life easier.

2 Likes

But I can’t use Tailscale for computers that aren’t connected to the internet, right?

Then how do you expect your RDP connection to connect without internet?

Also Tailscale is a VPN solution that sort of tunnels under your VPN. If your VPN connects, then Tailscale should connect as well, provided you connect your VPN first then tailscale second.

Haha, fair enough. My host network is not connected to the internet is what I meant.

I have it almost working now, the RDP from the localhost to the VM works fine. I just need to forward traffic from that network to the computer at work through my VPN.

Looking at iptables right now, I’m pretty sure it’s just two rules there.