> How can I make free access to that VMs from my company network without opening it to the world?
You are literally describing the definition of a VPN! So, you need a VPN.
That's easy: Just give your company network an ingress point, e.g. with a single VM that has a wireguard interface, and set routing to the internal VM addresses to go through that VM.