First off I just wanted to note that your firewall has all the chains set to ACCEPT all by default. This means that unless any traffic is specifically rejected / dropped than your firewall is going to accept it. That is NOT good from a security perspective. A firewall should be configured to DENY be default and then you can explicitly define what you want to accept.
Now on to your issue. The only way we can really see what the firewall is doing is by adding a log entry to see if it is getting dropped off for any other reason.
You could try the following:
Log all incoming traffic:
Code:
/sbin/iptables -I FORWARD -j LOG
/sbin/iptables -I INPUT -j LOG
OR
Log all traffic to the ports you want (repeat for other ports):
Code:
/sbin/iptables -I FORWARD -p tcp --dport 5800 -j LOG
/sbin/iptables -I INPUT -p tcp --dport 5800 -j LOG
Watch the log files and this will start the troubleshooting process. If you are still having issues post the logs as well.
HTH,
Centinul