A fairly common
Linux strategy is VNC.
But, because Linux uses a
client/server GUI strategy, you can actually establish a GUI connection to a remote machine that doesn't even have a video card. The process is
much simpler than what has to be done to approximate remote access on Windows.
I
would go to the brief trouble of setting up OpenVPN between the two machines, properly secured using
tls-auth and digital certificates.
(Do not use "pre-shared keys (PSKs), a.k.a. passwords." )
Now, you will have a cryptographically-strong, reliable connection between the various machines, which you can now use for
any purpose. Simply "open the tunnel, and the remote subnet is 'there,'" just as if there was a wire running across the room. But all of the traffic is passing securely through the Internet between two machines that have positively identified one another. No network user perceives that the connection is, in fact, "secure." To them, "it's just a router."
(And, in fact, that's precisely what an OpenVPN tunnel
is: "it's a router.")
You will soon discover that such an arrangement is very useful for
many purposes, not just "remote access." You'll wonder why you didn't set up OpenVPN a long time ago.
Furthermore, just like the badges you use to get into your building, every certificate is
unique, and any certificate can be selectively
revoked without affecting anyone else. The set of people or machines who can connect is limited by what they
possess, and by the fact that you have not revoked the one-of-a-kind thing that they (alone) possess. You know each one of them by name.
If you use UDP and
tls-auth, as you should, then anyone on the Internet who is not authorized will see ...
nothing ... at ... all. No "open sockets." No OpenVPN server. No nothing. If until now you've been pestered by "unauthorized access attempts," watch that count drop to
zero.