WireGuard is a simple, fast, and secure VPN that utilizes state-of-the-art cryptography. With a small source code footprint, it aims to be faster and leaner than other VPN protocols such as OpenVPN and IPSec. WireGuard is still under development, but even in its unoptimized state it is faster than the popular OpenVPN protocol. You can read more about Wireguard and its code from github repository but here we will quickly see how to establish site-site VPN tunnel in easy steps unlike other protocols which takes more effort to configure and establish multi-site tunnel.
I followed this to install and connect all sites that I use which are at different locations across the globe.
Let's assume we have 4 sites at different locations - NY,LA,SH,DE, we will name these sites S1,S2,S3 and S4. We will treat S1 to be the main entry point to which we can establish a public connection and access resources