I have several Windows Server 2012 dedicated servers with static ip addresses. I am wondering if it's possible to create a secure private network for these machines using software only. The machines are in different physical locations around the world.
The only way to connect multiple sites like if it were in the same physical location is by using VPN. Once the connection is established they will share the same virtual network. Windows Server comes with Remote Access Role and you can use it to setup VPN without any additional licenses or third-party softwares. Here's a collection of articles with everything you need to know.
One way is configuring VPN between the server which are spread across the multiple geo location.
The other way is to setting up tight security measures such as firewall in all the location and deploy remote management software's. These software have secured transactions and you will be able to remote and manage the servers which are in different physical locations around the world. But which is not exactly as like a VPN concept.
Hope this help.
1: Take a look at SoftEther It's not the most well documented software, and some features are a bit broken (or at best difficult to configure) but it does have NAT and firewall traversal as well as VPN Azure. The latter is a feature where a free to use cloud based server acts as a rendezvous point using http. If both clients can access the internet then a VPN can form between them. I'm not convinced on the security implications of this though.
2: Use corkscrew - this will be slow and probably require some DynDNS service such as no-ip.
3: Rent a VPS (virtual private server) and use this as your own VPN hub (this is what I usually do)
If you can't install VPN software in Windows, use a cheap router that supports VPNs, such as those from Mikrotik.