You shouldn't need to "open" ports for most well behaved client programs. Generally, your firewall should know what connections have been established by clients behind it, and allow the corresponding return packets back in. What kind of hardware are you using?
~bex0rs