I've been tasked with building out a firewall / VPN device that needs to support up to 100 simultaneous VPN connections as well as light routing (mostly custom NAT mappings). This will be fronting a 50M internet connection leading to 5 servers running a total of 40 virtual machines. The majority of the traffic will be RDP sessions to virtual machines and relatively light http traffic. The VPN sessions will likely be long-lived, but lightly used. My plan is to use pfsense + OpenVPN unless anyone else has a strong recommendation toward another distribution. Traffic currently peaks at about 20Mbps, with the 95% being 10Mbps.
Basically, what I'm looking for is how large of server do I need to hold that many simultaneous VPN connections open without seeing a performance impact. We currently have a Xeon 5504 quad-core server with 12G of RAM that I'd like to use if possible.