Yes. Asterisk can do the trick 100%. In fact you dont even need a VPN. As long as they all have a public IP (or a privte behind a firewall and you can forward some ports) then you are in luck. As far as the hardware it really depends on what you want to do. What kind of lines are you using ? How many concurent calls will there be ? What kind of codecs are you using ? Are you going to be using Meet Me (aka confrencing) ? For more help see the wiki or voip-info.