Are you running a proxy for http? It would be rather surprising that internal machines can access the Internet without forwarding turned on otherwise. When you say internal machines cannot access your server, are they connecting to it via the local interface's ip or the Internet ip? Are the services bound to the local interface?
I did notice today there is a squid.conf file in my /etc/httpd/conf.d directory. It appears it is configure for the local domain only. I renamed it and restarted apache but that didn't work.
The server has two nics, one for internet and one for the local network, connected to a switch. eth0 is connected to the uplink port.
Please pastebin the output of the following: Run as root: 'cat /etc/sysconfig/iptables' 'netstat -ntlp'