Have you tried VPN (Virtual Private Network)? I like
OpenVPN myself. Uses two-factor authentication with self-signed certificates. So each user has to have an username, a password, and a digital certificate to access the VPN. After that, it is as seamless as being on the on-premises LAN.