mod_proxy sirve justamente para tu caso de uso: un apache accesible desde internet que redirige internamente las peticiones que recibe en determinado virtual host hacia otro servidor, de forma transparente al usuario.
Tengo a mano este enlace, que estaba investigando para hacer un tunel ssh sobre https, no es lo que necesitás pero explica cómo se puede configurar mod_proxy:
http://dag.wieers.com/howto/ssh-http-tunneling/
Con iptables lo podrías arreglar también, cualquiera de las dos opciones es buena. Creo que la de Apache es más conveniente, pero todo depende de tu conocimiento: la opción que sepas dejar mejor configurada es la mejor opción, como siempre que discutamos administración de sistemas.
Saludos.