ssh -CND user@remote.host -R 80:127.0.0.1:apache_port
вообще не уверен что такое сработает, т.к. вы попытаетесь занять 80 порт, на котором как я понял из объяснения и так висит apache. Так что лучше заменить 80 на что-то левое (например. 8791), а на «сервере» описать как и хотел TC virtualhost (test.example.com) и указать ему ProxyPass на
127.0.0.1:8791/.
К тому же пример с 80 портом и пользователем «user» неработоспособен, т.к. порт привилегированный и пользователь не сможет его слушать.
> Опции -CND нужны для того, чтобы ssh сжимал трафик и не запускал оболочку.
Опция -D нужна для динамического проброса портов в другую сторону (читай создание локального socks через удалённый сервер). А все ключи, включая нужный нам -R стоит писать до имени хоста к которому мы подключаемся, хотя ssh, наверное, «съест» и такой вариант.