Lots of discussions on this issue on these forums, but to answer your basic questions, yes it can be done. You could open the ports on a firewall, place a server in the DMZ or do proxy forwarding (severe paraphrase on the last two).
You'll need to provide a little more information on what you're trying to accomplish, and what your environment looks like. Search the forums for DMZ, and you should find the discussions and perhaps an article or two about the basics.