Required ports

I have my virtualmin server running behind a DSL Gateway/Firewall. I have gotten it running pretty well, but to do so I had to open up all of the ports on it to outside traffic, which I know is a no-no. Is there are reference anywhere, or can anyone provide me with any advice on what ports need to be open for what services?

Thanks.

web is 80
ssl is 443
webmin 10000
usermin 20000
ftp 21
ssh 22

those are the basic ones.

if you are at home behind a NAT, usually you can DMZ the IP for your server. In other words, open all for the servers IP and let the servers firewall do the rest.