Yeah, it sounds like a VPN is what you're after. It's not really a "program" so much as a networking idea that can be implement in several different ways. It's also not the kind of thing that you can set up without having a fairly decent idea of how TCP/IP works - it's not going to be a "download, pointy, clicky" kind of affair. Someone on these forums recommended
LogMeIn recently as an easy-to-use service that could fulfill this need. I haven't tried it myself, but it looks interesting.