Задача:Удалённый хост за firewall, на котором запущен ssh + xrdp или vnc. Доступ к хосту только через SSH.
Необходимо создать SSH туннель, после этого запустить rdesktop на локальном хосте и соединиться с удалённым xrdp. По окончании сеанса rdesktop закрыть SSH туннель.
Решение:
ssh -L3389:localhost:3389 -N -o PermitLocalCommand=yes \
-o LocalCommand='(rdesktop -g 90%% -z localhost:3389; kill -HUP $PPID)&' \
host.example.com
Спорный вопрос, где следует сжимать трафик - в ssh или rdesktop. На мой взгляд, rdesktop знает про свой трафик больше, так что может применить более уместный алгоритм.