You want to install an IPSec LAN-to-LAN VPN.

Without knowing more details about your client's networks, I can't provide much in the way of details, but Linux, FreeBSD, and OpenBSD all have mature IPSec stacks that should be able to support this.

Basically, you'd install a machine at each site, set up IPSec tunnels between them, and fiddle about with the routing a little.

If you want to spend money on a supported solution, your price-performer is probably, sadly, a SonicWall device.

Keep in mind, though, that the performance might make the remote user experience very bad. The users at his home office are likely to be running at 100Mbps at least, whereas remote users are going to be running at the lesser of the speeds of their internet connections — and don't forget that upload speeds will be relevant here (I don't know which direction is likely to have more traffic) — and it's going to be a high latency connection, too.


Edited by wfaulk (22/09/2009 04:26)
_________________________
Bitt Faulk