Your issue is that roundcube is bound to port 80. That works fine until you use iptables to redirect all port 80 traffic to 8069 for oodo. This makes oodo traffic work, but traffic that was intended for roundcube is also caught by iptables and sent to oodo (hence the oodo 404 page when you try to access roundcube).
As with most things Linux, there are many ways to solve this issue, but I would recommend setting up a reverse proxy to handle the requests. The proxy can run on the same server and would handle requests coming into port 80. It would analyze the request and either pass it to round cube or oodo as appropriate.
I would likely use Nginx as my proxy, and do it something like this:
- Bind roundcube to port 8000 (Or some other high port that isn't already in use.) This is because we need to free up port 80 for our proxy server
- Install Nginx and configure it as a a reverse proxy bound to port 80. Some information about how that looks is here: http://nginx.com/resources/admin-guide/reverse-proxy/
- In the Nginx config, I would have a location block to catch all requets for /webmail and proxy_pass them to localhost:8000 (our roundcube install).
- All other requests are proxy_passed to localhost:8069 (the oodo install)
What proxy you use could easily depend on what you are more comfortable with. I would most likely use Nginx, but Squid, Apache, or a number of other tools could work as well. I don't know what roundcube uses as a webserver by default, but you may be able to use that to proxy oodo requests without the need to install anything else.
I hope this at least gets you going in the right direction.